ݺߣ

ݺߣShare a Scribd company logo
Yitao Jiang
jiangyt.cn@gmail.com
BOSH
1
Cloud Provider Interface
Agenda
? Openstack Introduction
? How to launch a vm
? What is CPI
? Demo
2
Openstack Introduction
? History
 RackspaceNASA open-sourced
infrastructure cloud-software
? Key Components
 Keystone (identity)
 Glance (image)
 Cinder (block storage)
 Neutron (network)
 Nova (compute)
 Swift (object storage)
3
openstack conceptual arch
4
5
Instance
1. Image
2. Router
a. network, subnet
3. Flavor
4. Keypair
5. Security Group
6
Openstack Intergration
Restful
? http request
 curl httpclient urllib
? thirdparty libary
 fog
 jcloud
 python-*client
 ...
OpenStack API Quick Start Guide.
7
BOSH deployment process
8
BOSH
Release
 Name
 Software
packages
 Config templates
 Scripts
Stemcell
 Base OS
 BOSH Agent
Manifest
 Release name/version
 VMs, job params
 Stemcells to use
Deployed
Cloudfoundry
Vitual Machine
 Specific Jobs
Sample CF Openstack Manifest
name: ha_proxy
templates:
- name: haproxy
release: cf-210002
- name: mod_vms
release: cf-210002
- name: consul_agent
release: cf-210002
instances: 1
resource_pool: router
networks:
- name: default
default:
- dns
- gateway
- name: floating
static_ips:
- *.*.*.*
properties:
ha_proxy:
ssl_pem: "-----BEGIN CERTIFICATE-----
9
BOSH putting it together
1. Target a bosh director using cli
2. Upload a stemcell
3. Upload a release
4. Gererate a manifest
5. bosh deploy
a. prepare deployment
b. complie the packages
c. create and bind vm
d. pull in job configurations
e. create needed job instances
10
Fog
 Ruby based cloud api library
 Installation
 gem install fog
 how to use
http://fog.io/
11
CPI For Openstack
 OpenStack CPI is an implementation of
the BOSH CPI.
 Leverages the Fog Ruby gem for
OpenStack
 OpenStack CPI gem (Ruby package), the
OpenStack Registry and Agents all reside
on the Cloud Foundry Bosh repository
12
Thank you.
13

More Related Content

Openstack CPI cloudfoundry

  • 2. Agenda ? Openstack Introduction ? How to launch a vm ? What is CPI ? Demo 2
  • 3. Openstack Introduction ? History RackspaceNASA open-sourced infrastructure cloud-software ? Key Components Keystone (identity) Glance (image) Cinder (block storage) Neutron (network) Nova (compute) Swift (object storage) 3
  • 5. 5
  • 6. Instance 1. Image 2. Router a. network, subnet 3. Flavor 4. Keypair 5. Security Group 6
  • 7. Openstack Intergration Restful ? http request curl httpclient urllib ? thirdparty libary fog jcloud python-*client ... OpenStack API Quick Start Guide. 7
  • 8. BOSH deployment process 8 BOSH Release Name Software packages Config templates Scripts Stemcell Base OS BOSH Agent Manifest Release name/version VMs, job params Stemcells to use Deployed Cloudfoundry Vitual Machine Specific Jobs
  • 9. Sample CF Openstack Manifest name: ha_proxy templates: - name: haproxy release: cf-210002 - name: mod_vms release: cf-210002 - name: consul_agent release: cf-210002 instances: 1 resource_pool: router networks: - name: default default: - dns - gateway - name: floating static_ips: - *.*.*.* properties: ha_proxy: ssl_pem: "-----BEGIN CERTIFICATE----- 9
  • 10. BOSH putting it together 1. Target a bosh director using cli 2. Upload a stemcell 3. Upload a release 4. Gererate a manifest 5. bosh deploy a. prepare deployment b. complie the packages c. create and bind vm d. pull in job configurations e. create needed job instances 10
  • 11. Fog Ruby based cloud api library Installation gem install fog how to use http://fog.io/ 11
  • 12. CPI For Openstack OpenStack CPI is an implementation of the BOSH CPI. Leverages the Fog Ruby gem for OpenStack OpenStack CPI gem (Ruby package), the OpenStack Registry and Agents all reside on the Cloud Foundry Bosh repository 12