Cloud Orchestration major tools comparison (including history, installation, market share, integration with other public cloud system for each tool) For any clarification contact kiran79@techgeek.co.in
4. Eucalyptus
• Elastic Utility Computing Architecture Linking Your Programs To Useful
Systems
• Virtual Grid Application Development Software project
• Open source software for building AWS compatible private and hybrid
clouds
Email: kiran79@techgeek.co.in
6. Eucalyptus Architecture: Components
• Modular, Distributed and highly scalable
• Six Distinct component that can be deployed in various architectures
Cloud
Controller
CLC
Cloud
Cluster
Availability Zone
Nodes
Cluster
Controller CC
Two components many user components
small transactions per component
Walrus
Storage
Controller SC
VM Ware
Broker
optional
Node
Controller
Node
Controller
Node
Controller
VM
VM
VM
VM
VM
VM
scalability
Many components
Fewer users per component
Larger transaction per component
7. Cloud Controller
• Administrative interface for cloud management
• Manages authenticates, provisioning, scheduling, accounting,
reporting and quota management
• Accepts user API requests from CUI based( like euca2ools) or GUI
based tools (like hybrid box)
• Only one cloud controller can be active per cloud
Email: kiran79@techgeek.co.in
8. Walrus
• Persistent storage shared across a cloud infrastructure
• No Data type restriction (contains images, volumes, snapshot and
application data)
• Can be used as HTTP put/get storage as a service
• Only one walrus can be active per cloud
• Eucalyptus equivalent to amazon S3
Email: kiran79@techgeek.co.in
9. Clusters
Cloud layer
components
• Also known as availability zones
• A subset of cloud that share single LAN
• Each cluster
•
•
•
•
A single broadcast domain
Supports a single Hypervisor
Support single SLA
Offers a fixed amount resource
Cluster 1
components
Cluster 2
components
• Aggregation of node controller computer/network resources
• Controlled via quotes and user access controller
Email: kiran79@techgeek.co.in
10. Cluster Controller
• Front end for a cluster within the cloud
• Manages the compute node (node
controllers) in the cluster
• Manages virtual instance execution
• Each cluster can have only active cluster
controller
Manages
• Node controllers
• Instance execution
• Instance networking
• SLAS
Email: kiran79@techgeek.co.in
11. Storage Controller
• Manages EBS (Eucalyptus Block Storage )
volumes and snapshots
• Makes persistent volumes (virtual disks)
available to instances
• Sends volumes snapshots to walrus
• Each cluster can have only one active
storage controller
• Equivalent to Amazon EBS (Elastic Block
Storage)
Manages
• Volumes
• Snapshots
• iSCSI SANs
Volume
Email: kiran79@techgeek.co.in
Instance
12. Node Controller
• Web service running in Apache
• Manages Hypervisors (XEN, KVM etc.)
• Manages Virtual machine instances
• No software limit to number of node
controllers per cluster
• Performance limits exists
Instance
Libvirt API
Manages
VM
VM
VM
Email: kiran79@techgeek.co.in
13. Eucalyptus Security
• Component registration since architect is not monolithic
• The Cloud stack baseline
• VLAN
• API PKI
• VM SSH
Email: kiran79@techgeek.co.in
14. Eucalyptus High Availability
• Failover, not load balanced
• Eight Controller machines at
cloud/cluster lever
• Storage redundancy relies on
SAN vendor
• Arbitrators monitor connectivity
to CLC, Walrus and CC
Email: kiran79@techgeek.co.in
15. Sample Architecture: Maximum Eight Clusters
Walrus
CLC
SC
CC
SC
CC
Node Controller
Node Controller
VM
VM
VM
VM
Node Controller
VM
VM
VM
SAN
VM
VM
Node Controller
VM
VM
SAN
VM
Node Controller
Node Controller
VM
VM
VM
VM
VM
VM
Email: kiran79@techgeek.co.in
16. Eucalyptus Installation Steps
• Build physical network, storage nodes, Hypervisor
• Open firewall ports on cloud component nodes (CLC to Walrus, CC to
NC etc.)
• Setup yum/dpkg repositories (eucalyptus.repo)
• RPM/ apt-get installation of eucalyptus components
• Configure eucalyptus.conf
• Euca.conf: create postgres db
• Register components and arbitrators
• HA: Configure DRBD
Email: kiran79@techgeek.co.in
17. Eucalyptus Functionalities
• Cloud Bursting: Create additional resource for your cloud using
resource from another cloud
• Migration environments: Exporting date (images, volumes,
configuration etc.) from stage to production environment
• Disaster Recovery: Primacy site is eucalyptus cloud and secondary in
on another cloud
• Eucalyptus supports DAS and SAN devices to take advantage of
storage arrays to improve performance and reliability.
• Eucalyptus Machine Images can be backed by EBS-like persistent
storage volumes, improving the performance of image launch time
and enabling fully persistent virtual machine instances.
Email: kiran79@techgeek.co.in
18. Eucalyptus Functionalities
• User Self Service portal to provision and configure compute, network, and
storage resources.
• Built-in key management and encryption capabilities. Access to virtual
instances is available using familiar SSH and RDP mechanisms.
• Virtual instances with application configuration can be stopped and
restarted using encrypted boot from EBS capability.
• IaaS service components Cloud Controller, Cluster Controller, Walrus,
Storage Controller, and VMware Broker are configurable as redundant
systems that are resilient to multiple types of failures.
Email: kiran79@techgeek.co.in
19. Eucalyptus Functionalities
• Management state of the cloud machine is preserved and reverted to normal
operating conditions in the event of a hardware or software failure.
• Users can build a library of Eucalyptus Machine Images (EMIs) with application
metadata that are decoupled from infrastructure details to allow them to run
on Eucalyptus clouds.
• Amazon Machine Images are also compatible with Eucalyptus clouds.
• VMware Images and vApps can be converted to run on Eucalyptus clouds and
AWS public clouds.
• Role base access control through identity management (MS active directory or
LDAP)
Email: kiran79@techgeek.co.in
21. Openstack
• Joint Project with Rackspace and NASA
• Launched in June 2010
• Enables anyone to create and offer cloud computing services
• Many corporations joined
Email: kiran79@techgeek.co.in
24. Openstack Software Architecture
Horizon
Rabbitmq
Nova API
Swift Account
Hypervisor
VM
Nova Compute
Swift Container
VM
Swift Object
VM
Nova Volume
VM
Swift Proxy
VM
Nova Network
rdbms
Nova Scheduler
Glance Control
VM
VM
Glance registry
Keystone: Identity, Token, Catalog, Policy
Email: kiran79@techgeek.co.in
25. Openstack Releases
Release name Release date
Included Component code names
Austin
Bexar
Cactus
Diablo
21 October 2010
3 February 2011
15 April 2011
22 September 2011
Nova, Swift
Nova, Glance, Swift
Nova, Glance, Swift
Nova, Glance, Swift
Essex
5 April 2012
Nova, Glance, Swift, Horizon, Keystone
Folsom
27 September 2012
Grizzly
4 April 2013
Havana
17 October 2013
Nova, Glance, Swift, Horizon, Keystone,
Quantum, Cinder
Nova, Glance, Swift, Horizon, Keystone,
Quantum, Cinder
Nova, Glance, Swift, Horizon, Keystone,
Neutron, Cinder, Heat, Ceilometer
Email: kiran79@techgeek.co.in
26. Compute Nova
• OpenStack Compute (Nova) is a cloud computing fabric controller (the
main part of an IaaS system).
• Developed in Python and uses many external libraries such as Eventlet (for
concurrent programming), Kombu (for AMQP communication),
and SQLAlchemy (for database access).
• Compute's architecture is designed to scale horizontally on standard
hardware with no proprietary hardware or software requirements and
provide the ability to integrate with legacy systems and third party
technologies.
• Designed to manage and automate pools of computer resources and can
work with widely available virtualization technologies, as well as bare
metal and high-performance computing (HPC) configurations.
Email: kiran79@techgeek.co.in
27. Object Storage : Swift
• OpenStack Object Storage (Swift) is a scalable redundant storage system.
• Objects and files are written to multiple disk drives spread throughout
servers in the data center, with the OpenStack software responsible for
ensuring data replication and integrity across the cluster.
• Storage clusters scale horizontally simply by adding new servers. Should a
server or hard drive fail, OpenStack replicates its content from other active
nodes to new locations in the cluster.
• Uses software logic to ensure data replication and distribution across
different devices, inexpensive commodity hard drives and servers can be
used.
Email: kiran79@techgeek.co.in
28. Block Storage : Cinder
• OpenStack Block Storage (Cinder) provides persistent block-level
storage devices for use with OpenStack compute instances.
• The block storage system manages the creation, attaching and
detaching of the block devices to servers. Block storage volumes are
fully integrated into OpenStack Compute and the Dashboard allowing
for cloud users to manage their own storage needs.
• In addition to local Linux server storage, it can use storage platforms
including Ceph, CloudByte, Coraid, EMC (VMAX and
VNX), GlusterFS, IBM Storage (Storwize family, SAN Volume
Controller,XIV Storage System, and GPFS), Linux LIO, NetApp, Nexenta,
Scality, SolidFire and HP (StoreVirtual and StoreServ 3Par families).
Email: kiran79@techgeek.co.in
29. Networking: Neutron
• OpenStack Networking is a system for managing networks and IP addresses.
• OpenStack Networking provides networking models for different applications or user
groups. Standard models include flat networks or VLANs for separation of servers
and traffic.
• OpenStack Networking manages IP addresses, allowing for dedicated static IP
addresses or DHCP. Floating IP addresses allow traffic to be dynamically rerouted to
any of your compute resources, which allows you to redirect traffic during
maintenance or in the case of failure. Users can create their own networks, control
traffic and connect servers and devices to one or more networks.
• Administrators can take advantage of software-defined networking (SDN) technology
like OpenFlow to allow for high levels of multi-tenancy and massive scale.
• OpenStack Networking has an extension framework allowing additional network
services, such as intrusion detection systems (IDS), load balancing, firewalls and
virtual private networks (VPN) to be deployed and managed.
Email: kiran79@techgeek.co.in
30. Dashboard :Horizon
• OpenStack Dashboard (Horizon) provides administrators and users a
graphical interface to access, provision and automate cloud-based
resources.
• The design allows for third party products and services, such as
billing, monitoring and additional management tools.
• The dashboard is also brand-able for service providers and other
commercial vendors who want to make use of it.
Email: kiran79@techgeek.co.in
31. OpenStack Identity: Keystone
• OpenStack Identity (Keystone) is common authentication system
across the cloud operating system and can integrate with existing
backend directory services like LDAP.
• Users and third-party tools can programmatically determine which
resources they can access.
• Additionally, the catalog provides a queryable list of all of the services
deployed in an OpenStack cloud in a single registry.
• Multiple forms of authentication
• standard username and password credentials
• token-based systems and AWS-style (i.e. Amazon Web Services) logins.
Email: kiran79@techgeek.co.in
32. Image Service (Glance) Telemetry (Ceilometer)
Orchestration (Heat)
• OpenStack Image Service (Glance) provides discovery, registration and
delivery services for disk and server images. Stored images can be
used as a template
• OpenStack Telemetry Service (Ceilometer) provides a Single Point Of
Contact for billing systems, providing all the counters they need to
establish customer billing, across all current and future OpenStack
components.
• Heat is a service to orchestrate multiple composite cloud applications
using templates, through both an OpenStack-native ReST API and a
CloudFormation-compatible Query API.
Email: kiran79@techgeek.co.in
34. Openstack Software Architecture for HA
Horizon
Rabbitmq
Nova API
Swift Account
Hypervisor
VM
Nova Compute
Swift Container
VM
Swift Object
VM
Nova Volume
VM
Swift Proxy
VM
Nova Network
rdbms
Nova Scheduler
Glance Control
VM
VM
Glance registry
Keystone: Identity, Token, Catalog, Policy
Email: kiran79@techgeek.co.in
37. Openstack Features
• Metering and Monitoring (Cielometer) provides a central collection of
metering and monitoring data.
• The global clustering feature allows customer to take your object
storage environment — a cost effective system to backup – and run
across several data centers
• All APIs now support SSL encryption, Virtual Private Networks and
Firewall as a Service.
• Customer can now boot from volume, for live migration, and there’s
added support for rolling upgrades.
Email: kiran79@techgeek.co.in
41. Cloudstack Architecture: Components
• Hosts : Servers onto which services will be provisioned
• Primary Storage: VM disk storage
• Cluster: A grouping of hosts and their associated storage
• Pod : Collection of clusters in the same failure boundary
• Network : Logical network associated with service offerings
• Secondary Storage : Template, snapshot and ISO storage
• Zone : Collection of pods, network offerings and secondary storage
• Management Server Farm : Management and provisioning tasks
Email: kiran79@techgeek.co.in
46. Comparison
Eucalyptus
Open Stack
Cloudstack
Storage: Disk Image
Yes
Yes
Yes
Storage: Block Devices
Via an elastic block
storage service
Via an elastic block
storage service
iSCI, OCF2, CLVM (Depends
on Hypervisor)
Storage: Fault Tolerance
Uses DRBD
Uses rsyn in the
backend
Parts are build –in, storage in
manual
VM Image services & self service
Yes
yes
Yes
VM Image for Amazon API
Yes
Partial support
Yes
Self service
(web interface, Users & Quotas, Console
access, User Management)
Yes
Yes
Yes
Networking Comparison (Auto allocation,
Floating IPs, User defined, Layer 2)
Yes
yes
Yes
Email: kiran79@techgeek.co.in
47. Comparison
Eucalyptus
Open Stack
Cloudstack
Code
Java and C
Python
Java
Hypervisors
Xen, KVM, VMWare
Xen, KVM, UML, LXC, VM Ware Xen, KVM, VM Ware, Citrix
Installation
Medium effort: Nice RP/ DEB.
Difficult: Not enough
automation and many choices
Fewest parts to install,
RPM needed
Excellent Install Guide
Included un Ubuntu
Lot of configuration required
Puppet labs model
Provides their own repo
Excellent installation guide
Minimum configuration
required
Many components to Maintain
Medium
YUM/Apt Repo
Few commands for initiation
Maintenance
Depends on Installation base
Email: kiran79@techgeek.co.in
48. Comparison
Eucalyptus
Open Stack
Cloudstack
Architecture
Five main components,
AWS clone
Fragmented into lot of
pieces
Monolithic controller.
Datacenter model, not
object storage
Administration
GUI with 3.3, Strong CLI
(compatible with Amazon
EC2 APL)
Web UI, euca2tools,
native CLI
GUI and CLI
Security
Baseline + Component
registration
Baseline + Key stone
Baseline VLAN/Firewall
VM protection
High Availability
Primary and secondary
component failover
Swift Ring or manual
Load balanced multi node
controlled
Email: kiran79@techgeek.co.in
49. Strengths and Weakness
Eucalyptus
Weakness
Open Stack
Cloud Stack
Installation requirements
Young Codebase
Very clean GUI
Configurable but not very easily Uncertain future
customizable
Initial configuration
Community inclusion
Strengths
Single Java code
Excellent commercial support
Single Codebase
Well round GUI
Fault tolerance
Growing community
Stack is fairly simple
Offers Hybrid solution with
AWS
Corporate support
Customization of the
storage backend
Weak AWS integration
Email: kiran79@techgeek.co.in
51. Comparisons
Eucalyptus
Openstack
Cloud stack
Core Philosophy
Hybrid private/ public
cloud compatibility
Public & private cloud
Standardized API
Private and highly
customized cloud,
standard API
Other public cloud
compatibility
Excellent with AWS, some
with Rackspace and
others
Excellent with Rackspace,
some with AWS
Some AWS
Ideal setting
Large group of machines
for lot of semi trusted
users
Large group of machines
for lot pf users
Medium group machines
for semi trusted users
Fault tolerance
Build in, with maturity
Built-it, semi matured
Built-in, semi matured
Email: kiran79@techgeek.co.in