Cloud Foundry BOSH CPI for OpenStack

15
OpenStack Summit, Paris November 2014 @Animesh Singh @Ferdy @ K_Bankole Cloud Foundry BOSH CPI for OpenStack Design Session – OpenStack Summit, Paris Animesh Singh, Ferran Rodenas, Kalonji Bankole Cloud UAA Router DEA Pool Service Gateway Apps Service Connector Health Manager Messaging Cloud Controller Build Packs Service Nodes BOSH Cloud Provider Interface

Transcript of Cloud Foundry BOSH CPI for OpenStack

Page 1: Cloud Foundry BOSH CPI for OpenStack

OpenStack Summit, Paris November 2014

@Animesh Singh @Ferdy @ K_Bankole

Cloud Foundry BOSH CPI for OpenStack!Design Session – OpenStack Summit, Paris

Animesh Singh, Ferran Rodenas, Kalonji Bankole

Cloud UAA  

Router  

DEA  Pool      

Service  Gateway   Apps  

Service  Connector  

Health  Manager  

Messaging  

Cloud  Controller  

Build  Packs  

Service  Nodes  

 BOSH    Cloud  Provider  Interface  

Page 2: Cloud Foundry BOSH CPI for OpenStack

OpenStack Summit, Paris November 2014

@Animesh Singh @Ferdy @ K_Bankole

OpenStack & Cloud Foundry - Top Two Open Source Projects!

http://analystpov.com/cloud-computing/top-15-open-source-cloud-computing-technologies-2014-24727!

Page 3: Cloud Foundry BOSH CPI for OpenStack

OpenStack Summit, Paris November 2014

@Animesh Singh @Ferdy @ K_Bankole

Meets Developer’s Needs!Focus on app development, not provisioning VMs, databases,

messaging servers, etc!Agile development model!

Deploy and scale in seconds!!

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!

Platinum Founding Sponsors 1,165 739k LINES OF CODE!TOTAL CONTRIBUTORS!

Cloud Foundry Overview

Page 4: Cloud Foundry BOSH CPI for OpenStack

OpenStack Summit, Paris November 2014

@Animesh Singh @Ferdy @ K_Bankole

Eclipse  IDE  

CLI  

Browser  

cf  push  

hFp  

Cloud  Controller  (API)    

Router  

DEA  Pool      DEA  Pool      Droplet  ExecuJon    

Agent  (DEA)  Pool      

Health  Manager  

NATS  (Message  bus)  

Cloud Foundry Architectural Overview

Page 5: Cloud Foundry BOSH CPI for OpenStack

OpenStack Summit, Paris November 2014

@Animesh Singh @Ferdy @ K_Bankole

Cloud Foundry – OpenStack integration

Cloud UAA  

Router  

DEA  Pool      

Service  Gateway   Apps  

Service  Connector  

Health  Manager  

Messaging  

Cloud  Controller  

Build  Packs  

Service  Nodes  

 BOSH    Cloud  Provider  Interface  

Page 6: Cloud Foundry BOSH CPI for OpenStack

OpenStack Summit, Paris November 2014

@Animesh Singh @Ferdy @ K_Bankole

Requirements:!•  Static / floating ips!•  Persistent disks!•  Custom flavors!•  Increased quota!•  Security groups !

!!!

!!

!!

!

6

Integration requirements for OpenStack

Page 7: Cloud Foundry BOSH CPI for OpenStack

OpenStack Summit, Paris November 2014

@Animesh Singh @Ferdy @ K_Bankole

BOSH deployment process

•  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!

Page 8: Cloud Foundry BOSH CPI for OpenStack

OpenStack Summit, Paris November 2014

@Animesh Singh @Ferdy @ K_Bankole 8

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!!!

!!

!

Page 9: Cloud Foundry BOSH CPI for OpenStack

OpenStack Summit, Paris November 2014

@Animesh Singh @Ferdy @ K_Bankole

Sample manifest!

Sample Cloud Foundry OpenStack manifest

Page 10: Cloud Foundry BOSH CPI for OpenStack

OpenStack Summit, Paris November 2014

@Animesh Singh @Ferdy @ K_Bankole

!We need to get the following from OpenStack to enter in CF manifest!

!!

!

Before Deployment – What information we need from OpenStack

Flavors

Networks

VM Subnet

DHCP IP

Keypairs

Gateway IP

Security groups

Should this be part of BOSH CPI ?!

!

Page 11: Cloud Foundry BOSH CPI for 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

Before Deployment - What all we need to setup on OpenStack?

Should this be part of BOSH CPI ?!

!

Page 12: Cloud Foundry BOSH CPI for OpenStack

OpenStack Summit, Paris November 2014

@Animesh Singh @Ferdy @ K_Bankole

Before Deployment – We need to create the manifest file !

We need to manually create the manifest file - hard and error prone!!

! !

Should this be part of BOSH CPI ?!

!

Page 13: Cloud Foundry BOSH CPI for OpenStack

OpenStack Summit, Paris November 2014

@Animesh Singh @Ferdy @ K_Bankole

After Deployment – We need to handle lifecycle operations !

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!

!

!

Page 14: Cloud Foundry BOSH CPI for OpenStack

OpenStack Summit, Paris November 2014

@Animesh Singh @Ferdy @ K_Bankole

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 !

Page 15: Cloud Foundry BOSH CPI for OpenStack

OpenStack Summit, Paris November 2014

@Animesh Singh @Ferdy @ K_Bankole

How to connect with us ? !VCAP MAILING LIST: !

!- 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 - [email protected]!-  Forrest Carpenter - [email protected]!-  David Lenwell - [email protected]!-  Matt Stine - [email protected]!-  Dmitry Kalinin- Product Manager for BOSH team at Pivotal !-  James Bayer - [email protected]!-  Animesh Singh - [email protected]!-  Kalonji Bankole - [email protected]!

!