End of the Road - Facing Current Scaling Limits within OpenStack

61
End of the Road - Facing Current Scaling Limits within OpenStack OpenStack Summit, Vancouver May 19, 2015 Christian Berendt Cloud Solution Architect B1 Systems GmbH [email protected] Thomas Kaergel Linux Consultant & Developer B1 Systems GmbH [email protected] B1 Systems GmbH - Linux/Open Source Consulting, Training, Support & Development

Transcript of End of the Road - Facing Current Scaling Limits within OpenStack

End of the Road - Facing CurrentScaling Limits within OpenStackOpenStack Summit, Vancouver May 19, 2015

Christian BerendtCloud Solution Architect

B1 Systems [email protected]

Thomas KaergelLinux Consultant & Developer

B1 Systems [email protected]

B1 Systems GmbH - Linux/Open Source Consulting, Training, Support & Development

Introducing B1 Systems

founded in 2004operating both nationally and internationallymore than 60 employees; low employee turnoverProvider for IBM, SUSE, Oracle & HPvendor-independent (hardware and software)Focus:

ConsultingSupportDevelopmentTrainingOperationsSolutions

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 2 / 37

Areas of Expertise

Virtualization (XEN, KVM & RHEV)Systems management (Spacewalk, Red Hat Satellite, SUSEManager)Configuration management (Puppet & Chef)Monitoring (Nagios & Icinga)IaaS Cloud (OpenStack & SUSE Cloud)High availability (Pacemaker)Shared Storage (GPFS, OCFS2, DRBD & CEPH)File Sharing (ownCloud)Packaging (Open Build Service)Providing on-site systems administration and/or development

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 3 / 37

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 4 / 37

Source: lassedesignen/Shutterstock.com

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 5 / 37

Source: Ken Pepple, http://ken.pepple.info/

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 6 / 37

Source: varunsingh180000/Pixabay.com

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 7 / 37

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 8 / 37

What Happenend?

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 9 / 37

Observations

nova list extremely slowalmost all nova operations on instances affectedhorizon too slow to be usableDB and nova services under heavy load

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 10 / 37

Observations

nova list extremely slowalmost all nova operations on instances affectedhorizon too slow to be usableDB and nova services under heavy load

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 10 / 37

Observations

nova list extremely slowalmost all nova operations on instances affectedhorizon too slow to be usableDB and nova services under heavy load

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 10 / 37

Observations

nova list extremely slowalmost all nova operations on instances affectedhorizon too slow to be usableDB and nova services under heavy load

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 10 / 37

Case Study

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 11 / 37

Many Instances in Single Tenant (Folsom)

Figure : nova-list Duration over Instance Count

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 12 / 37

Many Instances in Multiple Tenants (Folsom)

Figure : nova-list Duration over Instance Count

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 13 / 37

Many Instances in Single Tenant (Today)

Figure : nova-list Duration over Instance Count

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 14 / 37

Investigation Strategy

Source: OpenClips/Pixabay.com

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 15 / 37

Actions

watch CPU load on infrastructure during load situationswitch logmode to debugobserve logs during load situationturn mysql query logging on and watch the DB queriesanalyze the code

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 16 / 37

Actions

watch CPU load on infrastructure during load situationswitch logmode to debugobserve logs during load situationturn mysql query logging on and watch the DB queriesanalyze the code

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 16 / 37

Actions

watch CPU load on infrastructure during load situationswitch logmode to debugobserve logs during load situationturn mysql query logging on and watch the DB queriesanalyze the code

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 16 / 37

Actions

watch CPU load on infrastructure during load situationswitch logmode to debugobserve logs during load situationturn mysql query logging on and watch the DB queriesanalyze the code

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 16 / 37

Actions

watch CPU load on infrastructure during load situationswitch logmode to debugobserve logs during load situationturn mysql query logging on and watch the DB queriesanalyze the code

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 16 / 37

sqlalchemy DB-Join, linewidth 80 characters, length 100+ linesSELECT instances.created_at AS instances_created_at,instances.updated_at AS instances_updated_at,instances.deleted_at AS instances_deleted_at,instances.id AS instances_id,instances.user_id AS instances_user_id,instances.project_id AS instances_project_id,instances.image_ref AS instances_image_ref,instances.kernel_id AS instances_kernel_id,[...]......[...]WHERE instances.deleted = 0 AND instances.host = ’computexen0158’

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 17 / 37

Possible Solutions

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 18 / 37

Source: RicoShen/Wikimedia.org

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 19 / 37

more powerful hardware for Nova and DBrewrite nova/sqlalchemy code that generates those big DB joinsreorganize user/tenant-layout for the use case

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 20 / 37

more powerful hardware for Nova and DBrewrite nova/sqlalchemy code that generates those big DB joinsreorganize user/tenant-layout for the use case

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 20 / 37

more powerful hardware for Nova and DBrewrite nova/sqlalchemy code that generates those big DB joinsreorganize user/tenant-layout for the use case

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 20 / 37

Prevention Strategy

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 21 / 37

determine expected load and expected elasticitydesign for horizontal scalability using active/active HA setupswhenever possiblebuilt a representative miniature of your cloud for measurements,experiments and development

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 22 / 37

Useful Tools

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 23 / 37

Vagrant

Source: Fco.plj/de.wikipedia.org

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 24 / 37

Vagrant Advantages

reproducible and portable work environmentseasy to set up and learnusable for scale testing and developmentmany providers available (Virtualbox, KVM, VMware...) tovirtualize hostschoice between many provisioners (Shell, Ansible, Chef,Puppet...) to configure hosts

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 25 / 37

Vagrant Advantages

reproducible and portable work environmentseasy to set up and learnusable for scale testing and developmentmany providers available (Virtualbox, KVM, VMware...) tovirtualize hostschoice between many provisioners (Shell, Ansible, Chef,Puppet...) to configure hosts

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 25 / 37

Vagrant Advantages

reproducible and portable work environmentseasy to set up and learnusable for scale testing and developmentmany providers available (Virtualbox, KVM, VMware...) tovirtualize hostschoice between many provisioners (Shell, Ansible, Chef,Puppet...) to configure hosts

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 25 / 37

Vagrant Advantages

reproducible and portable work environmentseasy to set up and learnusable for scale testing and developmentmany providers available (Virtualbox, KVM, VMware...) tovirtualize hostschoice between many provisioners (Shell, Ansible, Chef,Puppet...) to configure hosts

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 25 / 37

Vagrant Advantages

reproducible and portable work environmentseasy to set up and learnusable for scale testing and developmentmany providers available (Virtualbox, KVM, VMware...) tovirtualize hostschoice between many provisioners (Shell, Ansible, Chef,Puppet...) to configure hosts

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 25 / 37

Example Vagrant Environment

hardware with >8 cores and >32 GB RAMcapable of hosting all OpenStack controller hosts full-scaleVagrant provider Virtualboxmost-used provisioners: Shell, Ansible and Puppet

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 26 / 37

Example Vagrant Environment

hardware with >8 cores and >32 GB RAMcapable of hosting all OpenStack controller hosts full-scaleVagrant provider Virtualboxmost-used provisioners: Shell, Ansible and Puppet

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 26 / 37

Example Vagrant Environment

hardware with >8 cores and >32 GB RAMcapable of hosting all OpenStack controller hosts full-scaleVagrant provider Virtualboxmost-used provisioners: Shell, Ansible and Puppet

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 26 / 37

Example Vagrant Environment

hardware with >8 cores and >32 GB RAMcapable of hosting all OpenStack controller hosts full-scaleVagrant provider Virtualboxmost-used provisioners: Shell, Ansible and Puppet

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 26 / 37

Vagrant at Work...

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 27 / 37

Running Environment

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 28 / 37

OpenStack Rally

Source: wpaphotomotorsport/Pixabay.com

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 29 / 37

OpenStack Rally Advantages

easy usage and setupmany benchmark templates available which already cover manystandard situationsRally plugins enable easy creation of more complex anduse-case-specific benchmarksnice presentation of results

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 30 / 37

OpenStack Rally Advantages

easy usage and setupmany benchmark templates available which already cover manystandard situationsRally plugins enable easy creation of more complex anduse-case-specific benchmarksnice presentation of results

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 30 / 37

OpenStack Rally Advantages

easy usage and setupmany benchmark templates available which already cover manystandard situationsRally plugins enable easy creation of more complex anduse-case-specific benchmarksnice presentation of results

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 30 / 37

OpenStack Rally Advantages

easy usage and setupmany benchmark templates available which already cover manystandard situationsRally plugins enable easy creation of more complex anduse-case-specific benchmarksnice presentation of results

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 30 / 37

OpenStack Rally in Action...

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 31 / 37

OpenStack Rally

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 32 / 37

Fake Drivers

simulate instances or volumestransparent for the OpenStack controller hostsindependent from hardware requirements

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 33 / 37

Fake Drivers

simulate instances or volumestransparent for the OpenStack controller hostsindependent from hardware requirements

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 33 / 37

Fake Drivers

simulate instances or volumestransparent for the OpenStack controller hostsindependent from hardware requirements

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 33 / 37

Nova Fake Driver Configuration

Fake Nova Compute Driver

nova.conf...# Driver to use for controlling virtualization. Options# include: libvirt.LibvirtDriver, xenapi.XenAPIDriver,# fake.FakeDriver, baremetal.BareMetalDriver,# vmwareapi.VMwareVCDriver, hyperv.HyperVDriver (string value)compute_driver=fake.FakeDriver...

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 34 / 37

Conclusion

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 35 / 37

determine clear design specifications (max instances, volumes,elasticity, users, tenants)use Rally to thoroughly test your setup within the specsperform a full-scale test without FakeDrivers prior to go-liveuse active/active HA setups for the core services to retainhorizontal scalability

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 36 / 37

determine clear design specifications (max instances, volumes,elasticity, users, tenants)use Rally to thoroughly test your setup within the specsperform a full-scale test without FakeDrivers prior to go-liveuse active/active HA setups for the core services to retainhorizontal scalability

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 36 / 37

determine clear design specifications (max instances, volumes,elasticity, users, tenants)use Rally to thoroughly test your setup within the specsperform a full-scale test without FakeDrivers prior to go-liveuse active/active HA setups for the core services to retainhorizontal scalability

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 36 / 37

determine clear design specifications (max instances, volumes,elasticity, users, tenants)use Rally to thoroughly test your setup within the specsperform a full-scale test without FakeDrivers prior to go-liveuse active/active HA setups for the core services to retainhorizontal scalability

B1 Systems GmbH Facing Current Scaling Limits within OpenStack 36 / 37

Thank You!For more information, refer to [email protected]

or +49 (0)8457 - 931096

B1 Systems GmbH - Linux/Open Source Consulting, Training, Support & Development