• Like
  • Save
Openstack overview thomas-goirand
Upcoming SlideShare
Loading in...5

Openstack overview thomas-goirand






Total Views
Views on SlideShare
Embed Views



0 Embeds 0

No embeds



Upload Details

Uploaded via as Adobe PDF

Usage Rights

CC Attribution-ShareAlike LicenseCC Attribution-ShareAlike License

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
Post Comment
Edit your comment

    Openstack overview thomas-goirand Openstack overview thomas-goirand Presentation Transcript

    • OpenStack Overview By Thomas GOIRAND (GPLHost CEO and Debian Developer)Presentation released under the therms of the BSD license, made for the Shanghai OpenStack conference of the 6 th of September 2011 thomas@gplhost.com / zigo@debian.org
    • Overview● Who am I, GPLHost in few words● Overview of all the 4 projects: ● Nova ● Packages overview ● Dependency overview ● High Availability setup ● Using Nova: euca2ools ● Swift: general principles and overview ● Glance & Keystone quick overview● Nova and Xen-api: quick packaging status update
    • Who is Thomas Goirand?● Debian Developer, 35 years old● CEO and founder of GPLHost● Main author of GPLHost hosting software● French guy living in Shanghai since 2006● Background: ● Embedded (Palm, Windows CE, Navigation) ● Assembly 68k, PHP, Shell, Python, C/C++ ● Linux administration in general
    • GPLHost in few words● Open source applied to hosting: ● Since 2003 ● XEN VPS since 2005 ● DTC control panel● Fast development: ● Support around the world ● 10 points of presence ● 3 companies (UK, SG, US)● A unique software & hosting company: ● Open source software for hosting companies ● Development directly in Debian
    • Openstack in the world● Many companies using and contributing to it● Fully open source (Apache license)● Open governance: we decide the design collectively● In China: ● mostly experiments, no service providers yet, not a lot of contributors or participant in the main OpenStack list ● A lot of people interested ● Government pushing for cloud computing ● To sum up: a bright future in mainland, just like everywhere else
    • 4 projects● Nova: Compute, the core project of OpenStack● Swift: Storage● Glance: OS Image storage, using swift●Keystone: unified authentification for the 3 projectsabove● Many “side” projects (not covered today) ● Load balancing with Atlas ● Clanavi ● Dashboard ● CaaS ● Etc. (see http://www.openstack.org/projects/)
    • Nova (OpenStack Compute)● A very young project (1 year old)● Released every 6 months, with Ubuntu● Responsible for maintaining your VM instances ● Start / stop ● Assign IPs and provide network
    • Nova: package lists/services● Compute: start / stop VMs● Network: assigns IP addresses (DHCP), routes allVMs IP traffic through bridge● Scheduler: performs live migrations between nova-compute nodes, decides where to accommodate aninstance● Volume: elastic, persistent storage for your VMs(RAID is advised)● Instance-monitor: operational reports of running VMs● Object store: basic operating system images storage● ajax-console-proxy
    • Nova: dependencies● RabitMQ: message routing between services (will bereimplemented in the future)● MySQL server: ● Storage for nova-network and others● Euca2ools: ec2 clients for using OpenStack● Memcached: caching proxy for nova, speeds uprequests● KVM, Xen/Xen-server, VMWare, LXC, and others:virtualization layer● Kpart / parted: online partitioning for instances● Really A LOT of python modules (more than 20python build-dependencies in Cactus)
    • Normal setup overviewOpenstack runtime Schema courtesy of Dell
    • HA setup 1/2● OpenStack = no single point of failure●RabitMQ: HA setup with heartbeat or pacemaker &DRDB http://www.rabbitmq.com/pacemaker.html ● Right now if a message is lost, it seems the DB/other nodes are left in a bad state ● no “reaper” python object that will reap this bad data/instances...●MySQL: 2 nodes, DRDB of /var/lib/mysql withpacemaker or heartbeat for fail over● Memcached: you can setup more than one instance
    • HA setup 2/2●Nova-compute = disposable hardware, hard to makeHA, but can be thought as disposable● Nova-network: ● The less easy part ● Active/Standby with Linux-HA and keepalived or ● One nova-network per nova-compute node●Nova-api: multiple instance, then 2xHAProxy withheartbeat● MySQL: master/slave setup, or DRDB of/var/lib/mysql with pacemaker
    • Once its setup: using nova● Client: euca2ools, mainly ec2 compatible ● euca-describe-images ● euca-run-instance ● euca-attach-volume ● etc.● Dashboard: just another OpenStack client ● Start / stop instances ● Attach volumes● Nova-manage: a shell tool to manage access rights ● Users ● Projects ● Instances
    • The still missing bits● Provider API, to remote control Nova ● Eriksson working on OCCI implementation, soon to be released● Automatic billing, invoicing and accounting
    • Swift: general principles● 3 elements: ● Users ● Projects ● Objects● Multiple servers synching each others using rsync● Each object replicated N times (N configurable)● Not a filesystem: object storage●Not designed to be fast, but for a large amount ofobjects (billions) and scalability
    • Swift: overview● Do not install nodes with RAID: swift has redundancy● Smallest setup: 5 nodes, 3 replicas● Replication: everything 3 times (or more)● One ring in /etc/swift/ring* shared among all nodes● A swift-proxy as a user access (like for Nova)● Swift is a mature and stable project
    • Glance● Uses Swift as a storage back-end● Provides VMs images for nova-compute Keystone● New project in OpenStack (in Diablo only)●Previously, Nova, Swift, with different authenticationschemes: the “pam of OpenStack”● Unifies auth for the 4 projects, and make it modular
    • Xen in Nova: development status● Xen status in Linux● Xen support in Ubuntu and Debian● Xen support in Nova ● Currently using Xen Cloud Platform (XCP) or XenServer●Ongoing effort to transform XCP into packages:project Kronos ● Modification of Xen 4.1.1 in Debian ● Packaging of blktap + blktap-ko ● Packaging of xen-api-libs and xen-api