Professional Documents
Culture Documents
90s-2000s
Client Server Era
2010-beyond
Cloud Era
2010 IT budgets arent getting cut.. ..but CIOs expect their spend to go further.
[Based on a Gartner Study]
Overview of Rackspace
Founded in 1998 Publicly traded on NYSE: RAX 120,000+ customers
$628m revenue in 2009 across two major businesses
Dedicated Managed Hosting Cloud Infrastructure & Apps (Servers, Files, Sites, Email)
What is OpenStack?
Overview of the project
"To produce the ubiquitous Open Source cloud computing platform that will meet the needs of public and private cloud providers regardless of size, by being simple to implement and massively scalable."
OpenStack History
2005 2010
March
Rackspace Cloud developed Rackspace Decides to Open Source Cloud Software
May
NASA Open Sources Nebula Platform
June
OpenStack formed b/w Rackspace and NASA
July
Inaugural Design Summit in Austin
OpenStack History
2011
July
OpenStack launches with 25+ partners
October
First Austin code release with 35+ partners
November
First public Design Summit in San Antonio
February
Second Bexar code release planned
Consultants Business Process Automation Database Engineers Operating System Technicians Systems Security Professionals Network Experts Servers, Firewalls, Load Balancers Operating Systems Storage Management Tools Virtualization
OpenStack Compute ready for enterprise private cloud deployments and mid-size service provider deployments Enhanced documentation Easier to install and deploy
Business Prerequisites
Technical Prerequisites
Zettabyte
1,000 Exabytes 1,000,000 Petabytes All of the data on Earth today (150GB of data per person)
Zettabyte
2% OF THE DATA ON EARTH IN 2020
Account/Container/Object structure (not file system, no nesting) plus Replication (N copies of accounts, containers, objects)
System Components
The Ring: Mapping of names to entities (accounts, containers, objects) on disk.
Stores data based on zones, devices, partitions, and replicas Weights can be used to balance the distribution of partitions Used by the Proxy Server for many background processes
Software Dependencies
Object Storage should work on most Linux platforms with the following software (main build target for Austin release is Ubuntu 10.04): Python 2.6 rsync 3.0
And the following python libraries: Eventlet 0.9.8 WebOb 0.9.8 Setuptools Simplejson Xattr Nose Sphinx
Public Internet
5 Zones 2 Proxies per 25 Storage Nodes 10 GigE to Proxies 1 GigE to Storage Nodes 24 x 2TB Drives per Storage Node
Hypervisor agnostic:
support for Xen ,XenServer, Hyper-V, KVM, UML and ESX is coming
Hardware agnostic:
standard hardware, RAID not required
User Manager
Cloud Controller: Global state of system, talks to LDAP, OpenStack Object Storage, and node/storage workers through a queue ATAoE / iSCSI
API: Receives HTTP requests, converts commands to/from API format, and sends requests to cloud controller Host Machines: workers that spawn instances
OpenStack Compute
System Components
API Server: Interface module for command and control requests Designed to be modular to support multiple APIs In current release: OpenStack API, EC2 Compatibility Module Approved blueprint: Open Cloud Computing Interface (OCCI) Message Queue: Broker to handle interactions between services Currently based on RabbitMQ Metadata Storage: ORM Layer using SQLAlchemy for datastore abstraction In current release: MySQL In development: PostgreSQL User Manager: Directory service to store user identities In current release: OpenLDAP, FakeLDAP (with Redis) Scheduler: Determines the placement of a new resource requested via the API Modular architecture to allow for optimization Base schedulers included in Austin: Round-robin, Least busy
Hypervisor Independence
Cloud applications should be designed and packaged abstracted from the hypervisor, deploy and test for best fit for your workload Manage application definition and workload, not the machine image
Configuration management Abstract virtual machine definition
Network Models
Private VMs on Project VLANs or Public VMs on flat networks
Network Details
Security Group: Named collection of network access rules Access rules specify which incoming network traffic should be delivered to all VM instances in the group Users can modify rules for a group at any time New rules are automatically enforced for all running instances and instances launched from then on Cloudpipe: Per project VPN tunnel to connect users to the cloud Certificate Authority: Used for Project VPNs and to decrypt bundled images Cloudpipe Image: Based on Linux with OpenVPN
Public Network
Server Groups Dual Quad Core RAID 10 Drives 1 GigE Public 1 GigE Private 1 GigE Management
Management
Thank You!
Bret Piatt Email: bret@openstack.org Twitter: @bpiatt
Backup Content
Additional Information
OpenStack Documentation
Project Technical Documentation Overall: http://wiki.openstack.org Object Storage (Swift): http://swift.openstack.org Compute (Nova): http://nova.openstack.org
Backup Content
Bootstrapping a cloud
Hardware Selection
OpenStack is designed to run on industry standard hardware, with flexible configurations Compute
x86 Server (Hardware Virt. recommended) Storage flexible (Local, SAN, NAS)
Object Storage
x86 Server (other architectures possible) Do not deploy with RAID (can use controller for cache)
Find out how much configuration your hardware vendor can provide
Basic needs
BIOS settings
Network boot IP on IPMI card
Advanced support
Host OS installation
Still get management network IP via DHCP
Host Networking
OpenStack Compute handles IP provisioning for all guest instances Cloud deployment tools only need to setup management IPs
GPXE
Not all hardware supports Better concurrent install capability than TFTP
Host OS Installation
Building a configuration based on a scripted installation is better than a monolithic golden image
Preseed for Ubuntu / Debian hosts Kickstart for Fedora / CentOS / RHEL hosts YaST for SUSE / SLES hosts Remote bootstrapping for XenServer / Hyper-V hosts
Post OS Configuration
Backup Content
Compute