Cloud Foundry BOSH CPI for OpenStack! 
Design Session – OpenStack Summit, Paris 
Animesh Singh, Ferran Rodenas, Kalonji Bankole 
Router 
Cloud 
Controller 
OpenStack Summit, Paris November 2014 
@Animesh Singh @Ferdy @ K_Bankole 
UAAC 
loud 
DEA 
Pool 
Service 
Gateway 
Apps 
Service 
Connector 
Health 
Manager 
Messaging 
Build 
Packs 
Service 
Nodes 
BOSH 
Cloud 
Prov 
ider 
Interface
OpenStack & Cloud Foundry - Top Two Open Source Projects! 
http://analystpov.com/cloud-computing/top-15-open-source-cloud-computing-technologies-2014-24727! 
OpenStack Summit, Paris November 2014 
@Animesh Singh @Ferdy @ K_Bankole
OpenStack Summit, Paris November 2014 
Meets Developer’s Needs! 
Focus on app development, not 
provisioning VMs, databases, 
messaging servers, etc! 
Agile development model! 
Deploy and scale in seconds! 
Cloud Foundry Overview 
@Animesh Singh @Ferdy @ K_Bankole 
! 
Open Cloud Platform! 
There is an increasing appetite for cloud-based 
mobile, social and analytics 
applications from line-of-business 
executives - drives the need for a more 
open cloud development platform! 
Compelling Community ! 
Cloud Foundry has a compelling community 
and emerging ecosystem as well as a mature 
set of capabilities and robustness! 
1,165 Platinum Founding Sponsors 739k TOTAL CONTRIBUTORS!LINES OF CODE!
OpenStack Summit, Paris November 2014 
Cloud Foundry Architectural Overview 
Eclipse 
IDE 
@Animesh Singh @Ferdy @ K_Bankole 
CLI 
Browser 
cf 
push 
hFp 
Cloud 
Controller 
(API) 
Router 
DEA 
Pool 
DropletD 
EExAe 
PcuoJool 
n 
Agent 
(DEA) 
Pool 
Health 
Manager 
NATS 
(Message 
bus)
Router 
OpenStack Summit, Paris November 2014 
Cloud Foundry – OpenStack integration 
@Animesh Singh @Ferdy @ K_Bankole 
UAAC 
loud 
DEA 
Pool 
Cloud 
Controller 
Service 
Gateway 
Apps 
Service 
Connector 
Health 
Manager 
Messaging 
Build 
Packs 
Service 
Nodes 
BOSH 
Cloud 
Provid 
er 
Interface
OpenStack Summit, Paris November 2014 
Integration requirements for OpenStack 
Requirements:! 
• Static / floating ips! 
• Persistent disks! 
• Custom flavors! 
• Increased quota! 
• Security groups ! 
@Animesh Singh @Ferdy @ K_Bankole 
! 
! 
! 
! 
! 
! 
! 
! 
6
OpenStack Summit, Paris November 2014 
BOSH deployment process 
@Animesh Singh @Ferdy @ K_Bankole 
• Deployment Manifest! 
• Release name/version! 
• # VMs, job params! 
• Stemcells to use! 
• Stemcell! 
• Base OS! 
• BOSH agent! 
! 
! 
! 
• Release! 
• Name! 
• Software packages! 
• Config templates! 
• Scripts! 
! 
! 
! 
! 
BOSH! 
! 
! 
! 
! 
Virtual Machine! 
• Configuration Software 
packages! 
Deployed! 
Cloud Foundry!
OpenStack Summit, Paris November 2014 
Cloud Provider Interface 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! 
https://github.com/cloudfoundry/bosh! 
! 
! 
! 
! 
! 
8 @Animesh Singh @Ferdy @ K_Bankole
Sample Cloud Foundry OpenStack manifest 
Sample manifest! 
OpenStack Summit, Paris November 2014 
@Animesh Singh @Ferdy @ K_Bankole
Before Deployment – What information we need from OpenStack 
OpenStack Summit, Paris November 2014 
@Animesh Singh @Ferdy @ K_Bankole 
! 
We need to get the following from OpenStack to enter in CF manifest! 
! 
! 
! 
Keypairs 
Flavors 
Networks 
VM Subnet 
DHCP IP 
Gateway IP 
Security groups 
Should this be part of BOSH CPI ?! 
!
Before Deployment - What all we need to setup on OpenStack? 
OpenStack Summit, Paris November 2014 
@Animesh Singh @Ferdy @ K_Bankole 
! 
We need to setup following on OpenStack (If it doesn't exist) :! 
! 
! 
! 
! 
Create Keypair 
Create Flavors 
Router, DEA, Cloud 
Controller, Service 
Nodes 
Create Security 
Groups 
Cf-private, cf-public 
Setup tenant quota 
Should this be part of BOSH CPI ?! 
!
OpenStack Summit, Paris November 2014 
Before Deployment – We need to create the manifest file 
@Animesh Singh @Ferdy @ K_Bankole 
! 
We need to manually create the manifest file - hard and error prone! 
! 
! 
! 
Should this be part of BOSH CPI ?! 
!
After Deployment – We need to handle lifecycle operations 
OpenStack Summit, Paris November 2014 
@Animesh Singh @Ferdy @ K_Bankole 
! 
Most of the lifecycle operations can be handled seamlessly, given that we understand the 
current state of IaaS! 
! 
- Again the capability in BOSH to be able to query the IaaS in a live manner will help make 
the transition from deployment to lifecycle operations much easier! 
- Operations like changing the number of DEA instances, changing configuration sizes of 
Cloud Foundry components, assigning new floating ips to components can all benefit 
from a capability to query the live state of IaaS from a capacity perspective.! 
- Some update operations do not work, for example assigning a new floating ip fails 
because the old IP address needs to be detached first from a VM . We should either 
provide an interface to detach floating ips, or a generic pluggable cleanup interface! 
! 
!
Summarizing Design Session Proposal - And Other Ideas ? 
BOSH CPI Extension for ! 
- Querying OpenStack (IaaS) ?! 
- Setting up OpenStack (IaaS)?! 
- Generating Manifest ?! 
- Cleaning up IaaS (e.g detach floating ips while assigning a new one) ?! 
Other Ideas ?! 
- CF on Docker containers in OpenStack ?! 
- External CPI ?! 
- Universal stemcell ?! 
- Discover Services ?! 
- Generate Service Broker templates ?! 
! 
Lets Launch into Design Session[Etherpad Links]! 
https://etherpad.openstack.org/p/BOSH-at-OPENSTACK-SUMMIT-NOV-2014 ! 
OpenStack Summit, Paris November 2014 
@Animesh Singh @Ferdy @ K_Bankole
OpenStack Summit, Paris November 2014 
How to connect with us ? 
! 
VCAP MAILING LIST: ! 
@Animesh Singh @Ferdy @ K_Bankole 
! 
- CloudFoundry: https://groups.google.com/a/cloudfoundry.org/forum/#!forum/vcap-dev ! 
- BOSH Developers: https://groups.google.com/a/cloudfoundry.org/forum/#!forum/bosh-dev! 
- BOSH Users: https://groups.google.com/a/cloudfoundry.org/forum/#!forum/bosh-users! 
- BOSH PUBLIC TRACKER: https://www.pivotaltracker.com/s/projects/956238#! 
! 
People:! 
- Ferran Rodenas - frodenas@gopivotal.com! 
- Forrest Carpenter - forrest@pistoncloud.com! 
- David Lenwell - david@pistoncloud.com! 
- Matt Stine - mstine@gopivotal.com! 
- Dmitry Kalinin- Product Manager for BOSH team at Pivotal ! 
- James Bayer - jbayer@gopivotal.com! 
- Animesh Singh - singhan@us.ibm.com! 
- Kalonji Bankole - kkbankol@us.ibm.com!

Cloud Foundry BOSH CPI for OpenStack

  • 1.
    Cloud Foundry BOSHCPI for OpenStack! Design Session – OpenStack Summit, Paris Animesh Singh, Ferran Rodenas, Kalonji Bankole Router Cloud Controller OpenStack Summit, Paris November 2014 @Animesh Singh @Ferdy @ K_Bankole UAAC loud DEA Pool Service Gateway Apps Service Connector Health Manager Messaging Build Packs Service Nodes BOSH Cloud Prov ider Interface
  • 2.
    OpenStack & CloudFoundry - Top Two Open Source Projects! http://analystpov.com/cloud-computing/top-15-open-source-cloud-computing-technologies-2014-24727! OpenStack Summit, Paris November 2014 @Animesh Singh @Ferdy @ K_Bankole
  • 3.
    OpenStack Summit, ParisNovember 2014 Meets Developer’s Needs! Focus on app development, not provisioning VMs, databases, messaging servers, etc! Agile development model! Deploy and scale in seconds! Cloud Foundry Overview @Animesh Singh @Ferdy @ K_Bankole ! Open Cloud Platform! There is an increasing appetite for cloud-based mobile, social and analytics applications from line-of-business executives - drives the need for a more open cloud development platform! Compelling Community ! Cloud Foundry has a compelling community and emerging ecosystem as well as a mature set of capabilities and robustness! 1,165 Platinum Founding Sponsors 739k TOTAL CONTRIBUTORS!LINES OF CODE!
  • 4.
    OpenStack Summit, ParisNovember 2014 Cloud Foundry Architectural Overview Eclipse IDE @Animesh Singh @Ferdy @ K_Bankole CLI Browser cf push hFp Cloud Controller (API) Router DEA Pool DropletD EExAe PcuoJool n Agent (DEA) Pool Health Manager NATS (Message bus)
  • 5.
    Router OpenStack Summit,Paris November 2014 Cloud Foundry – OpenStack integration @Animesh Singh @Ferdy @ K_Bankole UAAC loud DEA Pool Cloud Controller Service Gateway Apps Service Connector Health Manager Messaging Build Packs Service Nodes BOSH Cloud Provid er Interface
  • 6.
    OpenStack Summit, ParisNovember 2014 Integration requirements for OpenStack Requirements:! • Static / floating ips! • Persistent disks! • Custom flavors! • Increased quota! • Security groups ! @Animesh Singh @Ferdy @ K_Bankole ! ! ! ! ! ! ! ! 6
  • 7.
    OpenStack Summit, ParisNovember 2014 BOSH deployment process @Animesh Singh @Ferdy @ K_Bankole • Deployment Manifest! • Release name/version! • # VMs, job params! • Stemcells to use! • Stemcell! • Base OS! • BOSH agent! ! ! ! • Release! • Name! • Software packages! • Config templates! • Scripts! ! ! ! ! BOSH! ! ! ! ! Virtual Machine! • Configuration Software packages! Deployed! Cloud Foundry!
  • 8.
    OpenStack Summit, ParisNovember 2014 Cloud Provider Interface 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! https://github.com/cloudfoundry/bosh! ! ! ! ! ! 8 @Animesh Singh @Ferdy @ K_Bankole
  • 9.
    Sample Cloud FoundryOpenStack manifest Sample manifest! OpenStack Summit, Paris November 2014 @Animesh Singh @Ferdy @ K_Bankole
  • 10.
    Before Deployment –What information we need from OpenStack OpenStack Summit, Paris November 2014 @Animesh Singh @Ferdy @ K_Bankole ! We need to get the following from OpenStack to enter in CF manifest! ! ! ! Keypairs Flavors Networks VM Subnet DHCP IP Gateway IP Security groups Should this be part of BOSH CPI ?! !
  • 11.
    Before Deployment -What all we need to setup on OpenStack? OpenStack Summit, Paris November 2014 @Animesh Singh @Ferdy @ K_Bankole ! We need to setup following on OpenStack (If it doesn't exist) :! ! ! ! ! Create Keypair Create Flavors Router, DEA, Cloud Controller, Service Nodes Create Security Groups Cf-private, cf-public Setup tenant quota Should this be part of BOSH CPI ?! !
  • 12.
    OpenStack Summit, ParisNovember 2014 Before Deployment – We need to create the manifest file @Animesh Singh @Ferdy @ K_Bankole ! We need to manually create the manifest file - hard and error prone! ! ! ! Should this be part of BOSH CPI ?! !
  • 13.
    After Deployment –We need to handle lifecycle operations OpenStack Summit, Paris November 2014 @Animesh Singh @Ferdy @ K_Bankole ! Most of the lifecycle operations can be handled seamlessly, given that we understand the current state of IaaS! ! - Again the capability in BOSH to be able to query the IaaS in a live manner will help make the transition from deployment to lifecycle operations much easier! - Operations like changing the number of DEA instances, changing configuration sizes of Cloud Foundry components, assigning new floating ips to components can all benefit from a capability to query the live state of IaaS from a capacity perspective.! - Some update operations do not work, for example assigning a new floating ip fails because the old IP address needs to be detached first from a VM . We should either provide an interface to detach floating ips, or a generic pluggable cleanup interface! ! !
  • 14.
    Summarizing Design SessionProposal - And Other Ideas ? BOSH CPI Extension for ! - Querying OpenStack (IaaS) ?! - Setting up OpenStack (IaaS)?! - Generating Manifest ?! - Cleaning up IaaS (e.g detach floating ips while assigning a new one) ?! Other Ideas ?! - CF on Docker containers in OpenStack ?! - External CPI ?! - Universal stemcell ?! - Discover Services ?! - Generate Service Broker templates ?! ! Lets Launch into Design Session[Etherpad Links]! https://etherpad.openstack.org/p/BOSH-at-OPENSTACK-SUMMIT-NOV-2014 ! OpenStack Summit, Paris November 2014 @Animesh Singh @Ferdy @ K_Bankole
  • 15.
    OpenStack Summit, ParisNovember 2014 How to connect with us ? ! VCAP MAILING LIST: ! @Animesh Singh @Ferdy @ K_Bankole ! - CloudFoundry: https://groups.google.com/a/cloudfoundry.org/forum/#!forum/vcap-dev ! - BOSH Developers: https://groups.google.com/a/cloudfoundry.org/forum/#!forum/bosh-dev! - BOSH Users: https://groups.google.com/a/cloudfoundry.org/forum/#!forum/bosh-users! - BOSH PUBLIC TRACKER: https://www.pivotaltracker.com/s/projects/956238#! ! People:! - Ferran Rodenas - frodenas@gopivotal.com! - Forrest Carpenter - forrest@pistoncloud.com! - David Lenwell - david@pistoncloud.com! - Matt Stine - mstine@gopivotal.com! - Dmitry Kalinin- Product Manager for BOSH team at Pivotal ! - James Bayer - jbayer@gopivotal.com! - Animesh Singh - singhan@us.ibm.com! - Kalonji Bankole - kkbankol@us.ibm.com!