This is the second blog in OpenStack software platform series. This blog gathers some of the most interesting and up to date information regarding OpenStack performance metrics.
A cloud deployment environment changes as commodity hardware is seamlessly added or removed in response to increasing amounts of subscribers, applications and/or resellers. A tenant application on the cloud must collect and monitor metrics in order to ensure their performance benchmarks are being met and to see trending data which can lead to product improvements. The information was collected from the following sources:
The OpenStack component for collecting metrics in OpenStack is called Ceilometer. The component was initially intended for collecting for customer billing but it is evolving to become the infrastructure to collect OpenStack measurements. It provides a unique point of contact to acquire measurements across all current OpenStack components. The type of data and frequency of collection can be configured by OpenStack deployers. The data is collected by monitoring notifications or by polling OpenStack infrastructure components. The data is collected and written to a database. The data can be accessed via a secure REST API and in the future, from Horizon, the OpenStack Web console.
For example, data from the Nova compute node includes:
|instance||Gauge||instance||both||Duration of instance|
|instance: <type>||Gauge||instance||both||Duration of instance <type> (openstack types)|
|memory||Gauge||MB||notification||Volume of RAM in MB|
|cpu||Cumulative||ns||pollster||CPU time used|
|vcpus||Gauge||vcpul||notification||Number of active VCPUs|
|disk.read.request||Cumulative||request||pollster||Number of read requests|
|disk.write.request||Cumulative||request||pollster||Number of write requests|
|disk.read.bytes||Cumulative||B||pollster||Volume of read in B|
|disk.write.bytes||Cumulative||B||pollster||Volume of write in B|
|disk.root.size||Gauge||GB||notification||Size of root disk in GB allocated to all active virtual instances|
|disk.ephemeral.size||Gauge||GB||notification||Size of ephemeral disk in GB allocated to all active virtual instances|
|network.incoming.bytes||Cumulative||B||pollster||Number of incoming bytes on the network|
|network.outgoing.bytes||Cumulative||B||pollster||Number of outgoing bytes on the network|
|network.incoming.packets||Cumulative||packets||pollster||Number of incoming packets|
|network.outgoing.packets||Cumulative||packets||pollster||Number of outgoing packets|
If you want to actively monitor OpenStack nodes and network services, the open source Nagios application can be used. Nagios runs on a Linux machine connected to the network and receives its data from an NRPE add-on agent running on the target OpenStack components. The NRPE is configured to monitor system resources on the remote machine. The Nagios server is responsible for receiving, storing and presenting the collected data to the user.
This performance and usage metrics can be used to effectively tune and scale the OpenStack deployment running your application. The data can be analyzed from test and production environments to monitor performance, resolve bottlenecks, verify virtual hardware models, plan capacity and optimize cloud resources.
Part 3, the final posting in this OpenStack software platform blog series, will offer some of the most interesting and up to date information available regarding OpenStack’s virtualized network.
The information for this blog was collected from the following sources:
• http://www.infoworld.com/d/cloud-computing – Infoworld’s CloudComputing site.
• http://www.openstack.org/ – OpenStack organization’s web site
• http://www.mirantis.com/ – Mirantis OpenStack service vendor
• http://www.redhat.com/products/cloud-computing/openstack/ – Red Hat’s OpenStack Deployment
• http://devstack.org/ – DevStack OpenStack deployment scripts
• http://www.morphlabs.com/ – MorphLabs Cloud Consultants
• http://www.nagios.org/ – Nagios element and networking monitoring system
Northforge has combined its technical expertise in cloud computing/SaaS software development with its extensive network infrastructure experience to deliver multiple Cloud and SaaS technology projects. We understand the design, development and UI requirements to take the nebulous out of your next cloud-based project.