CloudStack is an open-source cloud computing platform that provides infrastructure as a service. It allows management of multiple hypervisors from a single interface and scales to support thousands of servers across locations. Performance testing showed CloudStack can deploy over 10,000 VMs with reasonable response times even under heavy load. While competitors like OpenStack and Eucalyptus are also free, CloudStack offers easier installation and supports more hypervisors out of the box. Case studies found companies like ASG have successfully leveraged CloudStack for custom private cloud solutions.
1 of 31
More Related Content
CloudStackFinalProject
1. HOW TO BUILD A CLOUD
WITH CLOUDSTACK
Gustavo El Khoury Seoane
Jahleel Kerr
Jonne Tuomela
Mahmod AlDwaikat
Sadiq Saif
2. CLOUDSTACK FEATURES
Key Features
• Multiple Hypervisors on One Cloud: with CloudStack, one cloud implementation can run
multiple hypervisors such as Citrix XenServer, KVM and VSphere witch provides freedom of
choice to the customers.
• Scalable Infrastructure Management: CloudStack eliminates the need for cluster level
management servers because it allows the user to manage thousands of servers in different
locations through a linearly scalable management server.
3. CLOUDSTACK FEATURES
Key Features
• Friendly Web Interface: CloudStack’s user interfaceis compatible with most popular web
browsers and provides a simple way for users to manage their cloud infrastructure. Its
implemented on top of the CludStack API.
• Robust RESTful API: CloudStack provides users with an industry-standard API with its own
innovative features. CloudStack also have other APIs for users to chose from such EC2/S3 API
and many others.
4. CLOUDSTACK FEATURES
Other Features
• Secure Single Sign On.
• Multi-role Support: Admin, Domain-Admin, User.
• On Demand Virtual Data center Hosting
• Snapshot Management
• VM Sync and High Availability
• Usage Metering
• Virtual Routers, Firewalls and Load Balancers
• Multiple Storage Solutions, and many more.
5. CLOUDSTACK USES
CloudStack can be used for many purposes:
• By Service Providers:
To offer Virtualized hosting.
• By Enterprises:
To Stage development, testing and production in a consistent way.
• By Web Content Providers:
To deploy an elastic and scalable web infrastructure.
• By Software as a Service (SaaS) Providers:
To offer multi-tenant software hosting while securing the environment of each user
7. CLOUDSTACK
Monolithic Architecture makes installation process rather easy.
Storage divided in to Primary and Secondary
Primary: associated with clusters of VMs and stores the VM disk
volumes
Secondary: Associated with zones and stores ISOs, snapshots, and
templates
High Availability provided through multiple management and storage
servers
Zone management system unique.
Largest pool of supported hypervisors (VMware, XenServer, KVM,
vSphere)
8. OPENSTACK
Fragmented Architecture makes installation difficult but flexible.
Project teams produce different parts of the OpenStack software. (eg.
Nova is the controller)
Project Swift provides data redundancy by ensuring that data is written
to multiple drives on different servers.
Large backers contributing to the software (Rackspace and NASA are
the original backers)
9. EUCALYPTUS
Made up of 6 components (cloud controller, walrus, cluster controller,
storage controller, VMware broker, and node controller)
High Availability ensured through failovers
Very compatible with Amazon AWS
Ideal use is for hybrid clouds with AWS
10. PERFORMANCE ANALYSIS
• Cloudstack performance should be studied, not the Hypervisor performance
• Ergo, VM performance is irrelevant for the test. Management server performance is the key
element to measure
• Interesting metrics to consider:
• Number of VMs supported
• Response times per operations (VM creation, API calls)
• Management server CPU utilization
• Database connections
11. TESTING SCENARIO
• Conducted by Sowmya Krishnan, QA Engineer at Citrix, on 2013
• Testing environment:
• Simulated network with hypervisors, storage pools and virtual networks
• Managements servers:
• Dual core Intel(R) Xeon, 2.27GHz, ht enabled, 4 processor. 16 GiB RAM
• CentOS release 5.5 (Final), x86_64
• Java 1.6
• 4 management servers running behind a load balancer, running CS v4.2
• Database server:
• Quad-Core AMD Opteron, 2.1GHz, ht enabled, 8 processor. 32 GiB RAM
• CentOS release 6.2 (Final), x86_64
• Aims to create more than 10000 VMs sequentially, with 1000-2000 (simulated) hypervisors and 4000
accounts. During this, CPU and database usage, and VM creation time will be measured
13. CPU USAGE: RESULTS
Time (seconds)
• CPU operations are mainly about orchestration activities (database access, sending
commands to hypervisors)
• This doesn’t include storage operations (these are performed by the Hypervisors)
• Overall, the CPU usage remains fairly constant during intensive activities, which means the
tasks are done as continuously as possible
14. DATABASE USAGE RESULTS
Time (seconds)
• Database operations involve creating entries for each VM, account and network created.
• A number of connections are kept open, which increases efficiency and reduces latency,
but can stress the database. This is not a big problem, as long as the database is exclusive
• Connection peaks can be a concern.
15. VM DEPLOYMENT TIME
Time (seconds)
• Deployment times remain roughly the same
• Small peaks represent instances that involve the creation of a Virtual Router (VR), which is
created once per account
16. API CALL RESPONSE TIME
• After some fixes (discussed later on), the API call response times remain reasonable for the
amount of resources
• This test involves nearly 30000 VMs
17. FINAL PERFORMANCE
CONSIDERATIONS
• Distributed Firewall rules:
• Each VM involves a security group, which contains a set of firewall rules
• Potentially, the Management server and the VR have to deal with millions of rules
• During the test, a fix was implemented that allowed the use of IP sets to group instances
with similar rules. Before this fix, scalability was highly compromised
• Account creation and VRs:
• When the first VM is created by an user, a VR is always created. This can affect
performance of other users, and the response time when creating VMs. It explains the
peaks in VM creation time
• With over 4000 users, the status checking of the VRs got delayed up to an hour, which
could produce lockouts, delays and unexpected behavior
• To remedy this, more CPU threads were dedicated to monitoring
18. FINAL PERFORMANCE
CONSIDERATIONS
• API Calls:
• In v4.0, Cloudstack API calls usually failed or took too long when the amount of
resources was too big
• The queries were being done globally, consulting the entire database and filtering by
account
• A series of fixes were implemented after v4.0, and views for each user were created,
decreasing the response times dramatically.
19. WHY USE CLOUDSTACK?
• One of CloudStack’s biggest selling points is it’s GUI
• Provides a user-friendly interface less reliant on CLI
• More accessible for less experienced and intermediate developers
• Competitors such as Eucalyptus and OpenStack have more
fragmented architecture
• Several components must be managed by separate command line
consoles
• Requires more use of CLI and deeper knowledge and expertise of
the infrastructure
20. WHY USE CLOUDSTACK?
• CloudStack is readily designed for enterprise use
• Allows for management of servers across several geographic
locations from a single point
• Provides structured documentation that allows for smooth
installation of the product
21. WHY USE CLOUDSTACK?
• CloudStack is simple to implement, but also provides great
scalability
• Cloudstack supports several hypervisors including KVM, Oracle
VM, VMware, Citrix XenServer and Citrix Xen Cloud Platform
• Cloudstack’s compact infrastructure allows the entire platform to
be deployed from a single host
22. LICENSING COSTS
• While evaluating licensing costs, all the components of the cloud must be considered
• This includes:
• Hypervisors
• Databases
• Management servers
• Storage servers
23. LICENSING COSTS
• Cloudstack can be deployed in most Linux-based distributions, which usually come free of
cost
• The Apache Cloudstack Management server is distributed under the Apache v2.0 license
• This has two major consequences:
• The software is available immediately, for free, from the Cloudstack websited
• Cloudstack can be forked, modified and redistributed with no extra cost, as long as it’s
mentioned that the modification comes from Cloudstack
24. LICENSING COSTS
• Licensing for the rest of the components depend on the choices done by each organization
• Cloudstack is very flexible in terms of the technologies it supports, so already purchased
products are likely to be compatible
• The recommended components, in case the cloud is built from scratch, are Xenserver,
CentOS, MySQL and and NFS or iSCSI fileserver, all of which can be obtained for free
25. EFFICIENCY
• Using CloudStack in your business will increase your business efficiency in many ways
• Easily manage your private cloud infrastructure via the use of the CloudStack web
interface
• Create your own scripts that use the CloudStack API for further customizability
26. AVAILABILITY OF RESOURCES
• CloudStack provides you easy access to your cloud resources at any time
• Enables your business to scale up and down your cloud resources at any time
• Enables you to view your active and standby cloud resources at any time.
27. CASE STUDY:
ASG SOFTWARE SOLUTIONS
• Expertise in management of mainframe, distributed and Cloud Computing environments
• One of their offerings involves building Private and Hybrid Cloud Infrastructure environments
for their customers, mainly geared towards optimization of IT services
• 1400 employees, 90 offices worldwide, over 7000 customers
• Provides services for Global 5000 and 85% of the Fortune 500 businesses
28. CLOUDFACTORY AND CLOUDSTACK
• As a part of their Private and Hybrid IaaS Cloud Orchestration portfolio, ASG developed
CloudFactory
• This software is a fork of Cloudstack, after “ASG identified Apache CloudStack as the most
stable, enterprise grade, IaaS orchestration platform”
• Cloudstack’s licensing and easy access to the source code allows modification and
publishing without great challenges
29. CLOUDFACTORY AND CLOUDSTACK:
PERFORMANCE AND ADVANTAGES
• In words of Pascal Vitoux, ASG’s VP of Development: "offers higher efficiency, limitless scale
and faster deployment of new services and systems to our customers”
• Enterprise Management, an IT reviewing and research company, rated CloudFactory the
‘Best SaaS Solution’ for Q1 2013
• EMA highlights CloudFactory’s ability to leverage existing environments, minimize OPEX,
and the extensive amount of comprehensive features,
• Nevertheless, task centralization, the cost of initial setup and the need for scripting to
fully automate tasks are some of the weak points