A monitoring system especially in a Infrastructure as a Service environment should be considered indispensable and required. Knowing which resources are used by which Virtual Machines (and tenants) is crucial for cloud computing providers as well for their customers.
Customers want to be sure they get what they pay for at any time whereas the cloud provider needs the information for his billing and rating system. Furthermore this information can be useful when it comes to dimension and scalability questions.
For monitoring a Cloud environment there are different requirements:
- An Cloud monitoring tool must be able to monitor not only physical machines but also virtual machines or network devices.
- The information of the monitored resources must be assignable to its tenant.
- The metered values must be collected and correlated automatically
- The monitoring tool must be as generic as possible to ensure support of any device.
- The monitoring tool must offer an API.
Many of the available monitoring tools allows to collect data from particular devices such as physical devices or virtual machines. However, most of these tools don’t monitor newly created instances of a Cloud environment automatically. For this reason the ICCLab decided to use Ceilometer to monitor their OpenStack installation. Ceilometer is a core project of OpenStack but doesn’t collect data from physical devices like network switches. Therefore, the ICCLab extends Ceilometer to allow it to collect data from physical devices.