SlideShare a Scribd company logo
1
OpenStack
Application M&O
Shanghai OpenStack Meet-up at IBM (July 4th, 2015)
王天青 EMC中国研究院
2
3
• 最近有一篇文章《公有云使用常见问题问答》,其中排名第一
的问题是:云主机有没有安装常规服务,大量服务、应用如何
批量配置管理?对于用户来说,使用OpenStack等IaaS只是
通向云计算之旅的第一步。最关键需要回答的问题是
OpenStack等IaaS如何能够服务好用户现有的应用(平台
2.0/2.5 应用)及将来的应用(平台3.0应用,例如Cloud
Native Application)。
引子
4
BILLIONS OF USERS
BILLIONS OF DEVICES
MILLIONS
OF APPS
Application
Service
IaaS
Tomorrow’s Data Center
Next Gen Cloud Applications
2016 48M
2012 6M
700%
Traditional Applications
2016 141M
2012 83M
70%
Today’s Data Center
5
Disruptive Players
6
• Speed of innovation
• Always-available services
• Web scale
• Mobile-centric user experiences
Why Disruptive?
7
• The Twelve-Factor App: a collection of cloud-
native app architecture patterns
• Microservices: independently deployable
services that do one thing well
• Self-Service Agile Infrastructure: platforms
for rapid, repeatable, and consistent provisioning
of app environments and backing services
• API-based Collaboration: published and
versioned APIs that allow interaction between
services in a cloud-native app architecture
• Anti-Fragility: systems that get stronger when
subjected to stress
How?
8
Application Life Cycle Management
开发 测试 集成 发布 部署 运维
Dev Ops
9
• Deployment
– Dependency
– Installation
– Startup
– Configuration
• Operation
– Monitoring (status,
Metrics, Log) & Trouble
Shooting
– Configuration
– Upgrade
– Scale, Backup, HA, DR
Challenges of Ops
10
11
Deployment on OpenStack, Practice #1
• Image Management
– Build: diskimage-builder, Oz, VMBuilder, BoxGrinder,
VeeWee, Packer, imagefactory, SUSE Studio
• Infrastructure Resource Provisioning
– Orchestration by Heat: network (router, gateway, subnet,
floating IP…), compute (security group, key pairs, VM…),
storage (volume)
• Application Deployment and Configuration
– Puppet
12
Example: Install OpenStack via Puppet
13
Bare-metal Orchestration
Puppet
Policy
MCO
Broker
Node
Razor
Kick-Start + Proceed
Isilon HDFSFile & Block Backup
Install Operating System 1. Install OpenStack;
2. Configure EMC Storage to OS
Infrastructure M&O
Machines
&&
Deployment
Specs
Puppet
Heat
&
Sahara
App M&OCloud M&O
Nise Puppet
14
Unified M&O
15
• Image: CentOS 6.0
• Heat: Provisioning
resources
• Puppet: Install ScaleIO
Install ScaleIO on OpenStack
16
• Cloudify integrates with Heat
out of the box
• Cloudify Heat Template
• Infrastructure Orchestration
Built-in Network
Orchestration with Neutron
Deployment on OpenStack, Practice #2
17
How it works
Blueprints
18
• Topology and Orchestration Specification for Cloud
Applications
TOSCA
1. DSL
2. Inputs
成也萧何,败也萧何
19
• BOSH is a project that unifies release
engineering, deployment, and lifecycle
management of small and large-scale cloud
software.
• It also performs monitoring, failure recovery, and
software updates with zero-to-minimal
downtime.
• While BOSH was developed to deploy Cloud
Foundry PaaS, it can also be used to deploy
almost any other software (Hadoop, for
instance).
• In addition BOSH supports multiple
Infrastructure as a Service (IaaS) providers like
VMware vSphere, vCloud Director, Amazon Web
Services EC2, and OpenStack.
Deployment on OpenStack, Practice #3
20
BOSH Overview
21
• Stemcell: A stemcell is a versioned Operating System image
wrapped with IaaS specific packaging.
• Release: A release is a versioned collection of configuration
properties, configuration templates, start up scripts, source
code, binary artifacts, and anything else required to build and
deploy software in a reproducible way.
• Deployment: A deployment is a collection of VMs, built from
a stemcell, that has been populated with specific releases and
disks that keep persistent data. These resources are created
based on a manifest file in the IaaS and managed by the
BOSH Director, a centralized management server.
BOSH Major Concepts
22
BOSH Architecture
23
Cloud Foundry
Deploy Cloud Foundry On OpenStack
BOSH-INIT
Release:
• bosh
• bosh-openstack-cpi
Stemcell:
• bosh-openstack-kvm-
ubuntu-trusty-go_agent
Manifest
• Bosh-deploy.yml
OpenStack (IaaS)
VM
BOSH
CPI
Controller
OS
Agent
VM
Agent
VM
Agent
VM
1
2
Release:
• cf-release
Stemcell:
• bosh-openstack-kvm-
ubuntu-trusty-go_agent
Manifest
• CF-deploy.yml
BOSH-CLI
3
4
5
24
• Murano: The Murano Project
introduces an application catalog
to OpenStack, enabling
application developers and cloud
administrators to publish various
cloud-ready applications in a
browsable categorized catalog.
• http://apps.openstack.org/
Deployment on OpenStack, Practice #3
25
Murano - Applications
26
Murano - Lattice https://github.com/LaynePeng/murano_lattice
27
Murano - Manage
28
Murano - Deployment
29
Murano - Deployment
30
• Magnum: Magnum is an
OpenStack API service to make
container orchestration engines
such as Docker and K8s
available as first class resources
in OpenStack. Magnum uses
Heat to orchestrate an OS image
which contains Docker and K8s
and runs that image in either
virtual machines or bare metal
in a cluster configuration.
Future Research Plan - Magnum
31
• Application M&O
– Integrated with Infrastructure & Cloud M&O (Application
M&O -> Cloud M&O -> Infrastructure M&O)
– Beyond Deployment, need support Operation. Also
should be Development friendly.
– Cloud-native app friendly (12 factor apps, Microservices)
Summary
32
• Vote for OpenStack Tokyo Summit Talk: OpenStack
Managed Cloud Foundry Service Marketplace,
By Layne Peng and Grissom Wang
Advertisement
33
Contributors & EMC Labs China
Layne Jie
Vivian Jinlong
Application M&O on OpenStack

More Related Content

Application M&O on OpenStack