Build Scalable Internet of Things Apps using Cloud Foundry, Bluemix & Cloudant
Cloud Foundry BOSH CPI for OpenStack
1. 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
2. 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
3. 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!
4. 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)
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
7. 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!
8. 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
9. Sample Cloud Foundry OpenStack 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, 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 ?!
!
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 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
15. 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!