OpenStack Project
A Primer
Jesse Keating
@iamjkeating
OpenStack
what it is
Infrastructure as a Service
Compute
Networking
Images
Storage
Public Cloud / Private Cloud / Hybrid
Open Source
Python
Community Project
OpenStack
interfaces
OpenStack
projects
Nova
- provision and manage compute resources
- network allocation
- virtual machine image management
- usage and resource quotas
Glance
- Store and fetch boot images
- Proxy to external sources
Neutron
- IP allocations
- SDN interactions
- Floating IPs
- Security groups separation
Cinder
- Block storage resources
- Interact with existing SANS
- Snapshots
Swift
- Object storage resources
- Data access via API / CDN
- Scale out commodity hardware
Keystone
- Identity management
- RBAC
- Integration into existing directory
Horizon
- Dashboard
- End user interface
- Cloud operator interface
OpenStack
integration
REST APIs
RPC Messaging
Database state storage
Client gets auth token from Keystone
Client calls Nova REST API
Nova API validates Keystone token
Nova API makes DB entry for instance and returns instance ID to client
Nova API puts message on bus for scheduler
Scheduler queries DB for available compute resources
Scheduler puts message on bus for compute
Compute puts message on bus for Conductor to fetch DB info
Conductor fetches DB info and returns it to Compute in bus message
Glance validates compute's creds
Glance returns image details
Compute makes REST call to Neutron to get network config
Neutron validates compute's creds
Neutron returns network details
Compute compiles data into format for HV and executes
Compute puts message on bus for Conductor to write DB info for instance
Client makes REST calls to track instance build data
Compute makes REST call to Glance for requested image
OpenStack
project structure
Each project has own git repository
Changes gated by Gerrit
Core reviewers and automated CI
Community elected PTL for decisions
Launchpad for issue tracking
Major releases every 6 months
Stable branches with three phases for 18 month lifespan
Light barrier to entry
Large conferences every 6 months
Small subject mid-cycle meetups
OpenStack
how to get it
Public Clouds
- Rackspace Public Cloud
- HP Helion Public Cloud
- Dreamhost Dreamcompute
- http://www.openstack.org/marketplace/public-clouds/
Hosted Private Clouds
- Blue Box Cloud
- Mirantis OpenStack Express
- Rackspace Private Cloud
- Ubuntu Bootstack
- http://www.openstack.org/marketplace/hosted-private-clouds/
Host your own Private Cloud
- Red Hat RDO
- Mirantis OpenStack
- Rackspace Private Cloud Software
- Cisco OpenStack Private Cloud
- SwiftStack Object Storage Platform
- Blue Box Ursula
- Stackforge Ansible OpenStack Deployment
- http://www.openstack.org/marketplace/distros/
Private Cloud Consulting
- http://www.openstack.org/marketplace/consulting/
OpenStack
learn more
http://docs.openstack.org/
#openstack-* on freenode IRC
openstack-* mailing lists
openstack meetups
http://www.meetup.com/OpenStack-Seattle/
OpenStack
get hired
Blue Box OpenStack Eng
Public Job Board
- http://www.openstack.org/community/jobs/
Thanks
@iamjkeating
One More Thing
OpenStack - a primer
By Jesse Keating
OpenStack - a primer
An introduction to OpenStack cloud software
- 2,161