SlideShare a Scribd company logo
CloudStack Performance Testing
     Challenges, Learning, Results

          Sowmya Krishnan
Apache CloudStack
• Turnkey platform for delivering IaaS clouds
• Highly scalable
• Flexible
  – Hypervisor agnostic
  – Network topologies
  – Multiple storage options
  – Scales to tens of thousands of hypervisors
Typical Deployment
            Admin
                                                    Internet
                    Management Server
                    Cluster

                               Primary
                                                          Router
                               MySQL
                                   Backup                 Load Balancer
                                   MySQL
                                                           L3 Core Switch
Top of Rack
     Switch



                                                                               Object Storage
  Servers
               …              …                …       …              …
                                                                            Availability Zone 1
            Pod 1          Pod 2            Pod 3                  Pod N
Challenge of creating a production
       scale performance set up
What we want…
• 30,000 hosts
• 100s of Storage nodes
• High Network bandwidth
• High end switches
• …
What we have in a QA Lab…
Handful of servers
One/Two Storage pools
Shared switch
Scalability Challenges
Continuous monitoring of the infrastructure
      Hosts up, VMs up, Routers, Capacity…
Orchestration of large number of resources
Clustered management servers
Outage of a hypervisor host
Outage of a management server
Outage of network
Solution?




SIMULATOR
Simulator


                          Mgmt.
                          Server       Zone
 User API                                        MySQL
                                     Simulator
              Load        Mgmt.
            Balancer      Server
Admin API

                          Mgmt.    MySQL
                          Server

                          Mgmt.
                          Server
Simulator
• Hypervisor type in itself
• Implements commonly used commands of hypervisor host
   –   Start/Stop
   –   List VMs in the host
   –   Program Security Group Rules
   –   Add host to maintenance mode
• Deploy Simulator VMs
   –   Using a Simulator Template
   –   Start/Stop
   –   Migrate
   –   Volume attached
   –   Take snapshot of the volume
• Storage pools
Test Setup Configurations
• Management server hosts
  – Dual core Intel(R) Xeon(R) CPU, 2.27GHz, ht enabled,
    4 processor
  – 16 G RAM
• Database
  – Quad-Core AMD Opteron(tm), 2.1GHz, ht enabled, 8
    processor
  – 32 G RAM
• Java heap size
  – (5 – 12) GB [Depending on use case]
Demo
Router Check interval
Redundant Virtual Router setup
4000 Accounts => 8000 RVRs
RouterStatusMonitor task which runs for all routers to monitor each
router status
Default check interval = 5 mins

After about an hour, interval between successive checks shot up to 56 mins

Fix:
Introduce a new global config to configure the pool size for router checks

Pool size = 100
8000/100 = 80 * 3 s (to perform RVR check)
                  = 240 s (4 min) to complete RVR check tasks
Router Check interval




router.check.poolsize
Async Job Response Time
As number of VMs increase time taken to deploy instances
increased?
Not always
If Network id is not passed, CS spends significant time searching for
the network to place the VM
After Fix:
Deploy VM time
Baselines For common Use cases
CPU Utilization
DB connections
Steady State Measures – when no external API is
being fired
Time taken for Async job [Deploy VM] to complete
MS failures and time to reconnect all hosts
List API response time, with varied page size
parameters
Future work
•   Enhance Simulator Features
•   VR performance
•   Hypervisor specific agents
•   Storage Metrics
•   …
mvn install -Dsimulator
cp agent-simulator/tomcatconf/components-simulator.xml.in
client//target/cloud-client-ui-4.1.0-SNAPSHOT/WEB-
INF/classes/components-simulator.xml
Edit client//target/cloud-client-ui-4.1.0-SNAPSHOT/WEB-
INF/classes/environment.properties to point to the new xml
mvn -P developer -pl developer -Ddeploydb
mvn -P developer -pl developer -Ddeploydb-simulator
mvn -pl :cloud-client-ui jetty:run -Dsimulator
Q&A

More Related Content

What's hot (20)

PPTX
CloudStack technical overview
CloudStack - Open Source Cloud Computing Project
 
PDF
CloudStack Hyderabad Meetup: Using CloudStack to build IaaS clouds
CloudStack - Open Source Cloud Computing Project
 
PPTX
Management server internals
CloudStack - Open Source Cloud Computing Project
 
PDF
Hacking apache cloud stack
Murali Reddy
 
PDF
2012 CloudStack Design Camp in Taiwan--- CloudStack Overview-1
tcloudcomputing-tw
 
PPTX
Nova for Physicalization and Virtualization compute models
openstackindia
 
PDF
5 scalability Cloudstack Developer Day
Kimihiko Kitase
 
PPTX
Open stack journey from folsom to grizzly
openstackindia
 
ODP
Cloudstack networking2
Hiroaki Kawai
 
PPTX
Windows server 2012 failover clustering new features
Joseph D'Antoni
 
PPTX
Xen and Apache cloudstack
The Linux Foundation
 
PPT
DevCloud and CloudMonkey
Sebastien Goasguen
 
PDF
Under the Hood: Open vSwitch & OpenFlow in XCP & XenServer
The Linux Foundation
 
PDF
Windsor: Domain 0 Disaggregation for XenServer and XCP
The Linux Foundation
 
PDF
2 architectural at CloudStack Developer Day
Kimihiko Kitase
 
PPT
Apache CloudStack AlpesJUG
Sebastien Goasguen
 
PPTX
Improvements in Failover Clustering in Windows Server 2012
Microsoft TechNet - Belgium and Luxembourg
 
PPTX
Architectures with Windows Azure
Damir Dobric
 
PDF
1 Introduction at CloudStack Developer Day
Kimihiko Kitase
 
CloudStack Hyderabad Meetup: Using CloudStack to build IaaS clouds
CloudStack - Open Source Cloud Computing Project
 
Hacking apache cloud stack
Murali Reddy
 
2012 CloudStack Design Camp in Taiwan--- CloudStack Overview-1
tcloudcomputing-tw
 
Nova for Physicalization and Virtualization compute models
openstackindia
 
5 scalability Cloudstack Developer Day
Kimihiko Kitase
 
Open stack journey from folsom to grizzly
openstackindia
 
Cloudstack networking2
Hiroaki Kawai
 
Windows server 2012 failover clustering new features
Joseph D'Antoni
 
Xen and Apache cloudstack
The Linux Foundation
 
DevCloud and CloudMonkey
Sebastien Goasguen
 
Under the Hood: Open vSwitch & OpenFlow in XCP & XenServer
The Linux Foundation
 
Windsor: Domain 0 Disaggregation for XenServer and XCP
The Linux Foundation
 
2 architectural at CloudStack Developer Day
Kimihiko Kitase
 
Apache CloudStack AlpesJUG
Sebastien Goasguen
 
Improvements in Failover Clustering in Windows Server 2012
Microsoft TechNet - Belgium and Luxembourg
 
Architectures with Windows Azure
Damir Dobric
 
1 Introduction at CloudStack Developer Day
Kimihiko Kitase
 

Similar to CloudStack Performance Testing (20)

PPT
CloudStack Intro NYC
ke4qqq
 
PPT
10 Minute Overview of Apache CloudStack
ke4qqq
 
PPTX
Citrix CloudStack - Build Your Own Scalable Infrastructure Cloud with CloudStack
RightScale
 
PDF
OpenStack Momentum
openstackindia
 
PDF
PHP Day 2011 PHP goes to the cloud
pietrobr
 
PDF
An Introduction to Azure IaaS
Applied Information Sciences
 
PDF
Scaling With Sun Systems For MySQL Jan09
Steve Staso
 
PPTX
eBay From Ground Level to the Clouds
X.commerce
 
PDF
Paving the Way to IT-as-a-Service
buildacloud
 
PPTX
Dell web monsters-oct2011-v6-public
Barton George
 
PPT
Ram chinta hug-20120922-v1
Ram Chinta
 
PPTX
Cloud stack overview
gavin_lee
 
PDF
2012 CloudStack Design Camp in Taiwan--- CloudStack Overview-2
tcloudcomputing-tw
 
PPT
Osac2012
OpenCity Community
 
PDF
Scvmm 2012 (maarten wijsman)
hypervnu
 
PPTX
CloudStack Collaboration Conference 12; Refactoring cloud stack
buildacloud
 
PPTX
vBrownBag OpenStack Networking Talk
mestery
 
PPTX
Cloud computing
Lew Tucker
 
PDF
Changing Landscape of Data Centers
Suhas Kelkar
 
CloudStack Intro NYC
ke4qqq
 
10 Minute Overview of Apache CloudStack
ke4qqq
 
Citrix CloudStack - Build Your Own Scalable Infrastructure Cloud with CloudStack
RightScale
 
OpenStack Momentum
openstackindia
 
PHP Day 2011 PHP goes to the cloud
pietrobr
 
An Introduction to Azure IaaS
Applied Information Sciences
 
Scaling With Sun Systems For MySQL Jan09
Steve Staso
 
eBay From Ground Level to the Clouds
X.commerce
 
Paving the Way to IT-as-a-Service
buildacloud
 
Dell web monsters-oct2011-v6-public
Barton George
 
Ram chinta hug-20120922-v1
Ram Chinta
 
Cloud stack overview
gavin_lee
 
2012 CloudStack Design Camp in Taiwan--- CloudStack Overview-2
tcloudcomputing-tw
 
Scvmm 2012 (maarten wijsman)
hypervnu
 
CloudStack Collaboration Conference 12; Refactoring cloud stack
buildacloud
 
vBrownBag OpenStack Networking Talk
mestery
 
Cloud computing
Lew Tucker
 
Changing Landscape of Data Centers
Suhas Kelkar
 
Ad

More from buildacloud (20)

PDF
The Future of SDN in CloudStack by Chiradeep Vittal
buildacloud
 
PPTX
Policy Based SDN Solution for DC and Branch Office by Suresh Boddapati
buildacloud
 
PDF
L4-L7 services for SDN and NVF by Youcef Laribi
buildacloud
 
POTX
Jenkins, jclouds, CloudStack, and CentOS by David Nalley
buildacloud
 
PPTX
Intro to Zenoss by Andrew Kirch
buildacloud
 
ODP
Guaranteeing Storage Performance by Mike Tutkowski
buildacloud
 
PDF
Cloud Application Blueprints with Apache Brooklyn by Alex Henevald
buildacloud
 
PPT
Introduction to Apache CloudStack by David Nalley
buildacloud
 
PDF
Managing infrastructure with Application Policy by Mike Cohen
buildacloud
 
PPTX
Intro to Zenoss by Andrew Kirch
buildacloud
 
PPTX
Monitoring CloudStack in context with Converged Infrastructure by Mike Turnlund
buildacloud
 
PDF
Rest api design by george reese
buildacloud
 
PPTX
Enterprise grade firewall and ssl termination to ac by will stevens
buildacloud
 
PDF
State of the cloud by reuven cohen
buildacloud
 
PDF
Securing Your Cloud With the Xen Hypervisor by Russell Pavlicek
buildacloud
 
PPTX
DevCloud - Setup and Demo on Apache CloudStack
buildacloud
 
PDF
Cloud Network Virtualization with Juniper Contrail
buildacloud
 
PPTX
Ian rae panel cloud stack & cloud storage where are we at, and where do we ne...
buildacloud
 
PDF
Troubleshooting Strategies for CloudStack Installations by Kirk Kosinski
buildacloud
 
PPT
CloudStack University by Sebastien Goasguen
buildacloud
 
The Future of SDN in CloudStack by Chiradeep Vittal
buildacloud
 
Policy Based SDN Solution for DC and Branch Office by Suresh Boddapati
buildacloud
 
L4-L7 services for SDN and NVF by Youcef Laribi
buildacloud
 
Jenkins, jclouds, CloudStack, and CentOS by David Nalley
buildacloud
 
Intro to Zenoss by Andrew Kirch
buildacloud
 
Guaranteeing Storage Performance by Mike Tutkowski
buildacloud
 
Cloud Application Blueprints with Apache Brooklyn by Alex Henevald
buildacloud
 
Introduction to Apache CloudStack by David Nalley
buildacloud
 
Managing infrastructure with Application Policy by Mike Cohen
buildacloud
 
Intro to Zenoss by Andrew Kirch
buildacloud
 
Monitoring CloudStack in context with Converged Infrastructure by Mike Turnlund
buildacloud
 
Rest api design by george reese
buildacloud
 
Enterprise grade firewall and ssl termination to ac by will stevens
buildacloud
 
State of the cloud by reuven cohen
buildacloud
 
Securing Your Cloud With the Xen Hypervisor by Russell Pavlicek
buildacloud
 
DevCloud - Setup and Demo on Apache CloudStack
buildacloud
 
Cloud Network Virtualization with Juniper Contrail
buildacloud
 
Ian rae panel cloud stack & cloud storage where are we at, and where do we ne...
buildacloud
 
Troubleshooting Strategies for CloudStack Installations by Kirk Kosinski
buildacloud
 
CloudStack University by Sebastien Goasguen
buildacloud
 
Ad

CloudStack Performance Testing

  • 1. CloudStack Performance Testing Challenges, Learning, Results Sowmya Krishnan
  • 2. Apache CloudStack • Turnkey platform for delivering IaaS clouds • Highly scalable • Flexible – Hypervisor agnostic – Network topologies – Multiple storage options – Scales to tens of thousands of hypervisors
  • 3. Typical Deployment Admin Internet Management Server Cluster Primary Router MySQL Backup Load Balancer MySQL L3 Core Switch Top of Rack Switch Object Storage Servers … … … … … Availability Zone 1 Pod 1 Pod 2 Pod 3 Pod N
  • 4. Challenge of creating a production scale performance set up What we want… • 30,000 hosts • 100s of Storage nodes • High Network bandwidth • High end switches • … What we have in a QA Lab… Handful of servers One/Two Storage pools Shared switch
  • 5. Scalability Challenges Continuous monitoring of the infrastructure Hosts up, VMs up, Routers, Capacity… Orchestration of large number of resources Clustered management servers Outage of a hypervisor host Outage of a management server Outage of network
  • 7. Simulator Mgmt. Server Zone User API MySQL Simulator Load Mgmt. Balancer Server Admin API Mgmt. MySQL Server Mgmt. Server
  • 8. Simulator • Hypervisor type in itself • Implements commonly used commands of hypervisor host – Start/Stop – List VMs in the host – Program Security Group Rules – Add host to maintenance mode • Deploy Simulator VMs – Using a Simulator Template – Start/Stop – Migrate – Volume attached – Take snapshot of the volume • Storage pools
  • 9. Test Setup Configurations • Management server hosts – Dual core Intel(R) Xeon(R) CPU, 2.27GHz, ht enabled, 4 processor – 16 G RAM • Database – Quad-Core AMD Opteron(tm), 2.1GHz, ht enabled, 8 processor – 32 G RAM • Java heap size – (5 – 12) GB [Depending on use case]
  • 10. Demo
  • 11. Router Check interval Redundant Virtual Router setup 4000 Accounts => 8000 RVRs RouterStatusMonitor task which runs for all routers to monitor each router status Default check interval = 5 mins After about an hour, interval between successive checks shot up to 56 mins Fix: Introduce a new global config to configure the pool size for router checks Pool size = 100 8000/100 = 80 * 3 s (to perform RVR check) = 240 s (4 min) to complete RVR check tasks
  • 13. Async Job Response Time As number of VMs increase time taken to deploy instances increased? Not always If Network id is not passed, CS spends significant time searching for the network to place the VM After Fix:
  • 15. Baselines For common Use cases CPU Utilization DB connections Steady State Measures – when no external API is being fired Time taken for Async job [Deploy VM] to complete MS failures and time to reconnect all hosts List API response time, with varied page size parameters
  • 16. Future work • Enhance Simulator Features • VR performance • Hypervisor specific agents • Storage Metrics • …
  • 17. mvn install -Dsimulator cp agent-simulator/tomcatconf/components-simulator.xml.in client//target/cloud-client-ui-4.1.0-SNAPSHOT/WEB- INF/classes/components-simulator.xml Edit client//target/cloud-client-ui-4.1.0-SNAPSHOT/WEB- INF/classes/environment.properties to point to the new xml mvn -P developer -pl developer -Ddeploydb mvn -P developer -pl developer -Ddeploydb-simulator mvn -pl :cloud-client-ui jetty:run -Dsimulator
  • 18. Q&A

Editor's Notes

  • #6: Typical challenges / questions to be answered as a result of a performance runs of an IaaS productLast three may appear to be more of fault tolerance of a system, it is related to perf since these failures are harder to find in a high scale set up as compared to a smaller one. (Takes more time to identify a failure)
  • #13: router.check.interval ,  CheckRouterCommandSimulator delay8K Routers,