private cloud (iaas) comparing open source platforms
TRANSCRIPT
![Page 1: Private Cloud (IaaS) Comparing Open Source Platforms](https://reader036.vdocuments.us/reader036/viewer/2022081622/613d2282736caf36b759ba16/html5/thumbnails/1.jpg)
Comparing Open Source Private Cloud (IaaS)
PlatformsLance Albertson
OSU Open Source LabAssociate Director of Operations
[email protected] / @ramereth
![Page 2: Private Cloud (IaaS) Comparing Open Source Platforms](https://reader036.vdocuments.us/reader036/viewer/2022081622/613d2282736caf36b759ba16/html5/thumbnails/2.jpg)
About me● OSU Open Source Lab● Server hosting for Open Source
Projects● Open Source development projects● Gentoo Developer● Sysadmin● Jazz trumpeter
![Page 3: Private Cloud (IaaS) Comparing Open Source Platforms](https://reader036.vdocuments.us/reader036/viewer/2022081622/613d2282736caf36b759ba16/html5/thumbnails/3.jpg)
Disclaimer
![Page 4: Private Cloud (IaaS) Comparing Open Source Platforms](https://reader036.vdocuments.us/reader036/viewer/2022081622/613d2282736caf36b759ba16/html5/thumbnails/4.jpg)
What I'll Cover● Compare 4 IaaS
Platforms● IaaS Components● Discuss Strengths /
Weaknesses● Provide best uses for
each platform● NOT covering PaaS or
SaaS platforms
![Page 5: Private Cloud (IaaS) Comparing Open Source Platforms](https://reader036.vdocuments.us/reader036/viewer/2022081622/613d2282736caf36b759ba16/html5/thumbnails/5.jpg)
Background Experience● Used Xen+iSCSI for several years● Researched an alternative tool● Picked Ganeti+KVM 3 years ago● Have had excellent experience for
our use case● Created web front-end for Ganeti● Looking at augmenting services with
OpenStack
![Page 6: Private Cloud (IaaS) Comparing Open Source Platforms](https://reader036.vdocuments.us/reader036/viewer/2022081622/613d2282736caf36b759ba16/html5/thumbnails/6.jpg)
Current State of Private IaaS
● Many options● AWS API support● Maturity of the projects● Solving different problems● Complexity of the platform● Differences in backend architecture
![Page 7: Private Cloud (IaaS) Comparing Open Source Platforms](https://reader036.vdocuments.us/reader036/viewer/2022081622/613d2282736caf36b759ba16/html5/thumbnails/7.jpg)
What do you want in an IaaS?● Ease of use● Fault tolerance● Low-cost of entry/maintenance● Performance● Ease of expansion● API provisioning● Compatibility with other platforms● Agility / Fast provisioning
![Page 8: Private Cloud (IaaS) Comparing Open Source Platforms](https://reader036.vdocuments.us/reader036/viewer/2022081622/613d2282736caf36b759ba16/html5/thumbnails/8.jpg)
Major components of IaaS● Storage● VM Image management● Self service / Web interface● Networking● Fault tolerance● User management● API / Hybrid Cloud Readiness● Installation / Maintenance
![Page 9: Private Cloud (IaaS) Comparing Open Source Platforms](https://reader036.vdocuments.us/reader036/viewer/2022081622/613d2282736caf36b759ba16/html5/thumbnails/9.jpg)
Platforms I'm comparing
![Page 10: Private Cloud (IaaS) Comparing Open Source Platforms](https://reader036.vdocuments.us/reader036/viewer/2022081622/613d2282736caf36b759ba16/html5/thumbnails/10.jpg)
OpenStack History● Joint project with
Rackspace & NASA● Launched in June 2010● Enable anyone to
create and offer cloud computing services
● Many corporations joined
![Page 11: Private Cloud (IaaS) Comparing Open Source Platforms](https://reader036.vdocuments.us/reader036/viewer/2022081622/613d2282736caf36b759ba16/html5/thumbnails/11.jpg)
OpenStack Components
● Nova (compute)● Swift (object storage)● Glance (image service)● Keystone (identity management)● Horizon (gui interface)
![Page 12: Private Cloud (IaaS) Comparing Open Source Platforms](https://reader036.vdocuments.us/reader036/viewer/2022081622/613d2282736caf36b759ba16/html5/thumbnails/12.jpg)
Eucalyptus History
● Started as a research project at UC Santa Barbara
● Company founded in 2009 to commercialize the project
● Split into two editions:○ Open-core○ Open source
● June 2012 back to fully open source
![Page 13: Private Cloud (IaaS) Comparing Open Source Platforms](https://reader036.vdocuments.us/reader036/viewer/2022081622/613d2282736caf36b759ba16/html5/thumbnails/13.jpg)
Eucalyptus Components
● Cloud Controller (CLC)○ Manages the virtualization resources and APIs○ Provides web interface
● Walrus (S3 storage)● Cluster Controller (CC)
○ Controls execution of VMs and their networking● Storage Controller (SC)
○ Provides block-level storage to VMs (EBS)● Node Controller (NC)
○ Controls VMs via hypervisors
![Page 14: Private Cloud (IaaS) Comparing Open Source Platforms](https://reader036.vdocuments.us/reader036/viewer/2022081622/613d2282736caf36b759ba16/html5/thumbnails/14.jpg)
CloudStack History
● Originally developed by Cloud.com● Open Sourced in May 2010 (GPLv3)● Citrix purchased Cloud.com in Aug
2011● Donated to ASF in Feb 2012
![Page 15: Private Cloud (IaaS) Comparing Open Source Platforms](https://reader036.vdocuments.us/reader036/viewer/2022081622/613d2282736caf36b759ba16/html5/thumbnails/15.jpg)
CloudStack Components
● Management Server● Hypervisor Nodes● Storage Nodes● Layers: Zone, Pod, Cluster, Host,
Primary Storage, Secondary Storage
![Page 16: Private Cloud (IaaS) Comparing Open Source Platforms](https://reader036.vdocuments.us/reader036/viewer/2022081622/613d2282736caf36b759ba16/html5/thumbnails/16.jpg)
Ganeti History
● Started as internal Google● Open sourced in August 2007● Used primarily for back-office
servers for Google● Focus on hardware fault-tolerance● Local block-level storage● Cheap commidity hardware
![Page 17: Private Cloud (IaaS) Comparing Open Source Platforms](https://reader036.vdocuments.us/reader036/viewer/2022081622/613d2282736caf36b759ba16/html5/thumbnails/17.jpg)
Ganeti Components
● Master daemon○ Controls overall cluster coordination
● Node daemon○ Controls node functions (storage, VMs, etc)
● Conf daemon○ Provide a fast way to query configuration
● API daemon - Provide a remote API
● Htools - Auto-allocation & rebalancing tools
![Page 18: Private Cloud (IaaS) Comparing Open Source Platforms](https://reader036.vdocuments.us/reader036/viewer/2022081622/613d2282736caf36b759ba16/html5/thumbnails/18.jpg)
Component Comparison
![Page 19: Private Cloud (IaaS) Comparing Open Source Platforms](https://reader036.vdocuments.us/reader036/viewer/2022081622/613d2282736caf36b759ba16/html5/thumbnails/19.jpg)
Storage ComparisonType OpenStack Eucalyptus CloudStack Ganeti
Disk Images yes yes yes yes [1]
Block devices yes [2] yes [2] yes [3] yes [4]
Fault Tolerance yes [5] yes [6] yes [7] yes
1. Disk Image support has limitations2. Via an elastic block storage service3. iSCSI, OCFS2, CLVM (depends on hypervisor)
4. Primary storage method, also has sharedfs support5. Uses rsync in the backend6. Not added until version 3.0, uses DRBD7. Parts are built-in, Storage is on your own
![Page 20: Private Cloud (IaaS) Comparing Open Source Platforms](https://reader036.vdocuments.us/reader036/viewer/2022081622/613d2282736caf36b759ba16/html5/thumbnails/20.jpg)
VM Image ComparisonType OpenStack Eucalyptus CloudStack Ganeti
Image Service yes yes yes no
Self Service [1] yes yes yes no [2]
Amazon API yes [3] yes yes no
1. Ability for users to create and manage their own VM images
2. Third-party applications can offer this3. Some support
![Page 21: Private Cloud (IaaS) Comparing Open Source Platforms](https://reader036.vdocuments.us/reader036/viewer/2022081622/613d2282736caf36b759ba16/html5/thumbnails/21.jpg)
Self Service ComparisonType OpenStack Eucalyptus CloudStack Ganeti
Web Interface yes yes yes yes [1]
Users & Quotas yes yes yes yes [1]
Console access yes yes yes yes [1]
User management yes yes yes yes [1]
1. Available via third-party application Ganeti Web Manager
![Page 22: Private Cloud (IaaS) Comparing Open Source Platforms](https://reader036.vdocuments.us/reader036/viewer/2022081622/613d2282736caf36b759ba16/html5/thumbnails/22.jpg)
Networking ComparisonType OpenStack Eucalyptus CloudStack Ganeti
Auto-allocation yes yes yes no [1]
Floating IPs yes yes yes no
User defined yes yes yes no
Layer 2 yes yes yes no
1. Proposal submitted but not yet implemented
![Page 23: Private Cloud (IaaS) Comparing Open Source Platforms](https://reader036.vdocuments.us/reader036/viewer/2022081622/613d2282736caf36b759ba16/html5/thumbnails/23.jpg)
Other factorsOpenStack Eucalyptus CloudStack Ganeti
Codebase Python Java, C Java Python, Haskell, Shell
Hypervisors Xen, KVM, UML, LXC, VMware
Xen, KVM, VMware
Xen, KVM, VMware, Citrix XenServer
Xen, KVM, LXC
Installation Requirements
Medium Large Medium/Large Low
Maintenance
[1]Many components
to maintainDepends on your
sizeMedium Easy
1. Base on my observation and opinion
![Page 24: Private Cloud (IaaS) Comparing Open Source Platforms](https://reader036.vdocuments.us/reader036/viewer/2022081622/613d2282736caf36b759ba16/html5/thumbnails/24.jpg)
Ease of Installation● Included via distribution● Amount of upfront configuration needed for a base
install● Ease of initialization of a cluster
OpenStack Eucalyptus CloudStack Ganeti
Included in Ubuntu
Lots of configuration required
Puppet Labs Module
Excellent Install Guide
Yum/Apt repos
Few commands for initialization
Provide their own repos
Excellent install guide
Minimal configuration needed
Included in Debian/Ubuntu
Good Docs
Simple initialization
![Page 25: Private Cloud (IaaS) Comparing Open Source Platforms](https://reader036.vdocuments.us/reader036/viewer/2022081622/613d2282736caf36b759ba16/html5/thumbnails/25.jpg)
Strengths / WeaknessesOpenStack Eucalyptus CloudStack Ganeti
Weakness
Young codebase
Uncertain future
Initial configuration
Install requirements
Configurable but not very customizable
Community Inclusion
Very GUI centric
Single java core
AWS integration weak
Admin centric
VM Deployment
No AWS integration
Strengths
Single codebase
Growing community
Corporate support
Excellent commercial support
Fault-tolerance
Offers a hybrid-cloud solution with AWS
Well-rounded GUI
Stack is fairly simple
Customization of the storage backend
Fault-tolerance built-in
Customizable
Very simple to manage and
maintain
![Page 26: Private Cloud (IaaS) Comparing Open Source Platforms](https://reader036.vdocuments.us/reader036/viewer/2022081622/613d2282736caf36b759ba16/html5/thumbnails/26.jpg)
Which platform do you choose?
● Size of deployment● Types of services to be hosted● User-base● Hardware/Budget limitations● Complexity of the system● Fault tolerance importance● Compatibility with other clouds
![Page 27: Private Cloud (IaaS) Comparing Open Source Platforms](https://reader036.vdocuments.us/reader036/viewer/2022081622/613d2282736caf36b759ba16/html5/thumbnails/27.jpg)
Summary of ComparisonsOpenStack Eucalyptus CloudStack Ganeti
Philosophy public & private cloud,
standardized API
hybrid private/public
cloud compatibility
Private, highly customized
cloud, standardized API
Private, node failure tolerant,
local storage
Public Cloud Compatibility
Some AWS Excellent AWS Some AWS None
Ideal Setting Large group of machines for lots of users
Large group of machines for lots of semi-trusted
users
Medium group of machines for semi-trusted
users
Smaller group of machines for highly trusted
users with fault tolerance
Fault-tolerance Some built-in Good with recent versions
Some built-in Fully tolerant / Designed
![Page 28: Private Cloud (IaaS) Comparing Open Source Platforms](https://reader036.vdocuments.us/reader036/viewer/2022081622/613d2282736caf36b759ba16/html5/thumbnails/28.jpg)
Choosing Openstack● Very young project● Lots of corporate backing● Codebase is simplified (python only)● Excellent for large deployments● Web interface is young, limited● Only use the components you need● Medium complexity● Excellent APIs
![Page 29: Private Cloud (IaaS) Comparing Open Source Platforms](https://reader036.vdocuments.us/reader036/viewer/2022081622/613d2282736caf36b759ba16/html5/thumbnails/29.jpg)
Choosing Eucalyptus● Fairly mature project● Lots of features● Codebase is complicated● Complex installation requirements● Great commercial support● Excellent hybrid-cloud platform● Re-focused effort back to Open
Source
![Page 30: Private Cloud (IaaS) Comparing Open Source Platforms](https://reader036.vdocuments.us/reader036/viewer/2022081622/613d2282736caf36b759ba16/html5/thumbnails/30.jpg)
Choosing CloudStack● No Distribution Support● Lots of features● Medium complexity to setup● Fault-tolerance built into parts● AWS compatibility is weak● Monolithic component architecture● Recent ownership shifts● Used by several large hosting providers
![Page 31: Private Cloud (IaaS) Comparing Open Source Platforms](https://reader036.vdocuments.us/reader036/viewer/2022081622/613d2282736caf36b759ba16/html5/thumbnails/31.jpg)
Choosing Ganeti● Fault tolerance built-in● Ideal for smaller clusters● Less complex, but less featureful● No EC2 compatibility● Better performance● Local storage● Only solves the compute problem● Can be augmented with GlusterFS &
other third-party applications
![Page 32: Private Cloud (IaaS) Comparing Open Source Platforms](https://reader036.vdocuments.us/reader036/viewer/2022081622/613d2282736caf36b759ba16/html5/thumbnails/32.jpg)
What about the others?● OpenNebula - HPC community● Nimbus - Scientific community● oVirt - libvirt
![Page 33: Private Cloud (IaaS) Comparing Open Source Platforms](https://reader036.vdocuments.us/reader036/viewer/2022081622/613d2282736caf36b759ba16/html5/thumbnails/33.jpg)
No single winner or loser● Solving different problems● No perfect solution for everything● Try each platform out first● Map out what your end goal is● Think about:
○ scalability○ manageability○ fault-tolerance
![Page 34: Private Cloud (IaaS) Comparing Open Source Platforms](https://reader036.vdocuments.us/reader036/viewer/2022081622/613d2282736caf36b759ba16/html5/thumbnails/34.jpg)