Upload
marcos-garcia
View
829
Download
0
Tags:
Embed Size (px)
DESCRIPTION
Introduction to Openstack: basic concepts, latest Havana project release, cloud terminology (including IaaS, PaaS and SaaS). This presentation was shown in the first Openstack Montreal user group in November 19 2013 (http://montrealopenstack.org/)
Citation preview
OpenstackA quick introduction
November 2013
Index
● Cloud terminology● Openstack history● Core Components● Related projects● Distributions● Competitors
Cloud terminology
What is Openstack
● Open-source project for IaaS (private or private)
● Massive scale● Horizontally scalable services● Illusion of infinite resources● Rapid provisioning / tear down of resources● Modular services with well defined APIs
Openstack releases
Openstack popularity
The Foundation
Core projects
● Dashboard (Horizon)● Compute (Nova)● Networking (Neutron)● Block Storage (Cinder)● Image Service (Glance)● Object Storage (Swift)● Identity (Keystone)
● Metering/Monitoring (Ceilometer)● Orchestration (Heat)● Database Service (Trove)● Bare metal (Ironic)● Queue service (Marconi)● Data processing (Savanna)● Common Libraries (Oslo)
Horizon - Dashboard
● Self-service web UI for creating and managing instances (written in Django)
Nova - Compute node
● Schedules virtual machines to run on a set of nodes
● Similar in concept to Amazon EC2● Multiple hypervisor support: KVM, Xen, LXC,
VMware ● Multiple storage backends: iSCSI, NetApp,
Nexenta, XenSM, SAN ● Native OpenStack API + EC2 API Support
Neutron - Networking
● Previously called Quantum● Provides networking as a service● Plugin architecture to allow integration with
hardware based networking solutions● Allows Software Defined Networks (SDN) ● Both L2 and L3 features
○ VPNaaS○ LBaaS○ FWaaS○ QoS○ vNICs
Cinder - Block storage
● Provides block storage for runtime of instances
● Enables ability to do live migration of instances
● Similar to Amazon EBS● Snapshot support● Backups to Swift as well
Glance - Image service
● Mechanism for storing and retrieving disk images
● Backends: Swift, S3, filesystem● Image Types: raw, qcow2, vmdk, vhd, iso,
ami/aki, ovf ● Public or private images & image sharing● Allows every tenant its own image catalog● E.g: API to request latest version of a OS
Swift - Object storage
● Read/write objects (files) via HTTP interface● Similar to Amazon S3 (supports S3 API) ● Data replication capability● Very scalable● Distributed, fault-tolerant, eventually
consistent● 3 components
○ Proxy server○ Storage server○ Consistency server
Keystone - Identity Services
● Common authentication / authorization framework based on tokens
● Manages users, tenants, roles● Pluggable backends: SQL, PAM, LDAP,
KVS● Support for oAuth, SAML, openID
Putting it all together
Integrated projects
● Dashboard (Horizon)● Compute (Nova)● Networking (Neutron)● Block Storage (Cinder)● Image Service (Glance)● Object Storage (Swift)● Identity (Keystone)
● Metering/Monitoring (Ceilometer)● Orchestration (Heat)● Database Service (Trove)● Bare metal (Ironic)● Queue service (Marconi)● Data processing (Savanna)● Common Libraries (Oslo)
Ceilometer
● Infrastructure to collect measurements● Focused on monitoring and metering● Original goal: billing● Integrated reports in Horizon
Heat
● Orchestration engine to launch composite cloud applications using text-based templates
● Similar to Amazon Cloudformation● Templates integrate well with Puppet, Chef● Integrated autoscaling using ceilometer● Called ‘stacks’ in Horizon● Example: wordpress + mysql
Trove
● Database as a Service (like Amazon RDS)● Scalable and reliable implementations● Can handle both relational (RDBMS) and
non-relational (NoSQL)● Not limited to MySQL, it can potentially deal
with many different backends
Ironic
● Baremetal provisioning (forked from previous Nova driver)
● No virtualization: for performance purposes● Manages PXE, IPMI, hardware RAID● Still under heavy development
Marconi
● Message queueing service, like SQS/SNS, but with the same API
● Use Cases○ Distribute tasks among multiple workers○ Forward events to data collectors○ Publish events to any number of subscribers ○ Send commands to one or more agents ○ Request action or get information from agent
Savanna
● A simple way to build a Hadoop cluster in Openstack
● Similiar to Amazon ElasticMapReduce● Lets create a cluster of a given version, size,
topology. and modify/scale it dynamically● Can leverage unused capacity from a
Openstack private cloud● Managed via the same GUI (Horizon)● Can use Swift to store results
Oslo
● Project for all the common shared libraries● Under the hood project (no features here)● It is also the project for generalist code
reviewers or specialist API maintainers● Still in progress: continually adopting code
from other projects
Modular by design
Related projects
● Manila - shared filesystem as a service● Designate - DNSaaS● Barbican / Cloudkeep - secret key
management (aaS) ● TripleO - Openstack on Openstack● Development tools:
○ Tempest○ Gerrit○ Jenkins○ etc..
Packaging / Distributions
Devstack (github)Stackforge (Puppet)Packstack (RedHat)RDO (Fedora-Redhat)UbuntuSuseFuel (Mirantis)Stackops 360
Competitors
● Private IaaS:○ Cloudstack○ Eucalyptus○ Opennebula○ vCloud○ Xen Cloud
● More info => http://www.qyjohn.net/?p=3373
Thank You
Marcos [email protected]
NEXT
Demonstration of
Devstack
and
Packstack