Abiquo supports collectd with an integration in the multi-cloud platform to enable you to easily work with custom VM monitoring and metrics in public cloud providers, including Amazon, Azure, and Google Cloud, as well as VMware vCenter. In the Abiquo multi-cloud platform you can create alerts and automation based on your custom metrics. After you configure collectd and the Abiquo collectd plugin, the plugin will automatically push the values from collectd to the Abiquo API using the Abiquo API endpoints for collectd.
For example, you can automatically scale out your VMs based on your application metrics.
For example, for a VM, or a group of VMs in a VApp, or for a scaling group.
The Abiquo API then pushes the collectd metrics to the Abiquo Monitoring Server. Users can then display metrics through the UI or use them for automation.
How to install and configure collected for VMs in Abiquo
The following steps are a general guide:
In Abiquo, create an OAuth application in Abiquo for collectd. See Add an application for OAuth
Assign the privilege to “Allow user to push own metrics”
Install collectd on your VM
Install the Abiquo collectd plugin (from source or using the Abiquo Chef cookbook).
Configure the Abiquo API path to push the metrics to the VM in Abiquo. Check the correct format of the API path in the API documentation
Configure your metrics in collectd
The Abiquo collectd plugin will automatically push all collectd metrics to the Abiquo API in PUTVAL JSON format.
To display the VM metrics in Abiquo:
Edit your VM and go to Monitoring
Select Fetch metrics data.
Optionally select the monitoring level on providers that support it, e.g. AWS
Select the metrics to display from the custom metrics and the built-in metrics of the cloud provider or hypervisor
Save your changes to the VM. Optionally, define a scaling group to increase the number of VMs running your application automatic scaling actions. See Define a scaling group
If your VM is not running, deploy to launch the VM. Wait several minutes for the server to return metrics
On the VM icon near the top right corner, click the metrics symbol. Or in the Virtual appliance, go to Monitoring → Virtual machines
Configure the metrics to display the required statistic, frequency, dimensions, and so on.
The platform will display the configured metrics.
Create alarms to set metric thresholds and alerts on groups of alarms, to notify or respond to changing application conditions with automation using action plans. See Cloud VM automation guide
Automate the install of collectd using Chef
This is an example use case with Chef using the Abiquo Chef cookbook.
In Abiquo, the administrator creates an OAuth application in Abiquo for collectd. See Add an application for OAuth
Assign the privilege to “Allow user to push own metrics”
On the Chef server, the administrator creates a role with the following:
The monitoring recipes to install the Abiquo collectd plugin
The OAuth tokens for the application configured
In Abiquo, users edit the VM and go to Chef, then select the appropriate collectd role.
Abiquo recommends this kind of automation because the OAuth application belongs to the tenant administrator. This means that the administrator prepares the configuration for users, it is easy to apply it automatically on a large scale, and the administrator can protect the configuration from accidental changes when users load their own Chef recipes, etc.
Related links
Collectd website: http://collectd.org/
Abiquo-collectd plugin: https://github.com/abiquo/collectd-abiquo
Abiquo Chef cookbook for the collectd plugin: https://github.com/abiquo/collectd-abiquo-cookbook
Abiquo API documentation of VM resource: VirtualMachinesResource
Push collected data to a VM: https://wiki.abiquo.com/api/latest/VirtualMachinesResource.html#push-collectd-values-on-a-virtual-machine
Example collectd metrics push: POST_cld_vdcs_X_vapps_X_vms_X_collectd_CT_app_j
API how to for working with metrics: How to enable VM monitoring and metrics via API
Example collectd data object
Here is an example of a data entity to update a virtual machine with the collectd metrics specification.
Custom metrics entities
Abiquo enables you to easily manage custom metrics for many platform resources, including:
Public cloud region (from cloud/locations and admin/publiccloudregions)
Datacenter (from cloud/locations and admin/datacenters)
Machine
Rack
Virtual appliance
Scaling group
Virtual machines
Virtual machine
Services
Custom metrics display in the UI
The Abiquo UI enables users to display custom metrics for the following entities:
Virtual appliance
Scaling group
Virtual machine
Display custom VApp metrics
Abiquo can display custom metrics for your virtual appliance and metrics for the group of VMs in the virtual appliance.
To display custom metrics for the virtual appliance:
On a Virtual appliance card, click the Monitoring button OR
Open a Virtual appliance and go to Monitoring tab → Virtual appliance metrics page.
To configure the display of metrics:
For the refresh interval, select the Refresh data every checkbox and enter a number of minutes.
To filter metric statistics, click on the Filter button and select the granularity, statistic, time frame, and dimension, as required.