open stack - presenation by thierry carrez
TRANSCRIPT
OpenStackOpen as in « Open »
Thierry CarrezRelease Manager, OpenStack
Open
Open source
Open design
Open development
Open community
Governance
Developers
electProject technical leads (PTLs)(one per core project, currently 5)
Wider« community »
elects
appoints
Community-elected members (5)
Rackspace-appointed seats (4)
Project Policy Board (PPB)
A young project
March 2010: Decision to open source Rackspace Cloud
May 2010: NASA open sources Nebula platform
June 2010: OpenStack formed
July 2010: First design summit in Austin
October 2010: First release (2010.1, codenamed « Austin »)
February 2011: 2011.1 « Bexar » released
April 2011: 2011.2 « Cactus » released
September 2011
140 developers
Development cycle 6
mo
nth
s
Design, blueprint creation
Design Summit, 3 days to discuss and brainstorm
PTLs define cycle targets
Feature milestones every 4 weeks
Last feature milestone, no more features allowed
Release branch is cut, next cycle starts
Final release
Journey of a feature
trunk
feature branch
Design Write code
Code review
Milestone Release
Final Release
Pre-merge tests
Postmerge tests
OpenStack projects
Nova (compute) Glance (image service) Swift (storage)Core
Incubation
Related
Keystone (common authentication) « Dashboard » (web UI)
Quantum (virtual network service)
Swift (OpenStack Object Storage)
Object storage RESTful interface Objects in containers in accounts No object size limit 3+ replication factor in separate « zones » Stable and deployed in production
Swift main components
Proxy server
Account server
Container server
Object server
Swift API
Swift: scales horizontally
No central index, independent API servers Object location is derived from its name Uses commodity hardware
Coming up in Diablo...
Container synchronization across clusters Integration with Keystone authentication Node load balancing on HEAD/GET « X-Newest: true » to get newest version
Glance (OpenStack Image service)
Disk images and associated metadata Discover, register and retrieve Multiple disk formats : raw, VHD, vmdk, vdi, qcow2, aki, ari, ami Multiple container formats : ovf, bare, aki, ari, ami
Glance architecture
glance-apiGlance API
glanceCLI tool
glance.clientPython library
Reg
istry AP
I
glance-registry
...
...
SQL
S3
HTTP
Local FS
Swift
Images
Metadata
...
Glance: is very pluggable
glance-apiGlance API
glanceCLI tool
glance.clientPython library
Reg
istry AP
I
glance-registry
...
...
SQL
S3
HTTP
Local FS
Swift
Images
Metadata
...
Coming up in Diablo...
Limiting, paging, filtering, ordering results Local filesystem LRU cache Delayed deletion of images Integration with Keystone authentication Sharing images between tenants Notification system New ISO disk format
Nova (OpenStack Compute)
« VMs one API call away » Highly-modular framework Still quickly evolving Already deployed in private clouds (NASA) In alpha at Rackspace and HP public clouds
Object server
Nova components
Network node
RabbitMQAPI node
Scheduler node
Network node
Compute node
Volume node
Datastore
Object server
Nova: is highly modular
Datastore
API node
Scheduler node
Network node
Compute node
Volume node
WSGI middleware EC2/OpenStack API Keystone/standalone auth
Pluggable Chance Zone-aware
AMQP
Sqlite MySQL Postgres
Flat, FlatDHCP, Vlan IPv4 / IPv6
QEMU, KVM, UML, LXC Xen and XenServer Hyper-V VMware vSphere
Local LVM volume groups iSCSI Sheepdog HP/Lefthand SANs
Coming up in Diablo...
Distributed scheduling across zones Snapshot, clone and boot from volumes Integration with Keystone authentication OpenStack API 1.1 Configuration drive KVM Pause/Suspend support Instance migration Notification system Instance types and capabilities-based scheduling Multiple NICs KVM Block migration support HA mode for FlatDHCP network model Support for Virtual Storage Arrays Global firewall rules Support for multiple volume types Quantum NaaS integration points Floating IPs in OpenStack API
Keystone (OpenStack Identity)
Keystone
Swift
Glance keystone-manage
...
SQL
NovaAPI servers
LDAP
Session API Admin API
Unified tenants / accounts for all services
“Dashboard” (OpenStack Web UI)
Django module to build web UIs
Swift
Glance
NovaAPI servers
OpenStack is... you, us
http://launchpad.net/openstackhttp://wiki.openstack.orghttp://planet.openstack.org
IRC (Freenode)#openstack#openstack-dev
Mailing-listhttps://launchpad.net/~openstack
Questions ?
[email protected]://fnords.wordpress.comFollow @tcarrez