* Split out object/workers stats collection for Nova, Cinder and Neutron plugins
* Use the common interface exposed by collectd_base.Base
Change-Id: I59f698b8f09fd0d3ce375327d9e4d81d767d961c
When the OpenStack services cannot be polled due to authentication
issues (eg invalid username/passwod), collectd logged this message:
AttributeError: 'NoneType' object has no attribute 'status_code'
This change raises a KeystoneException when the plugin can't
authenticate against Keystone.
All other exceptions are logged as well.
Change-Id: I97c527d30b519989e43c1cfc0db4ce9d1dc50ca8
This is to avoid potential clashes with modules names as we experienced
with openstack.py.
Change-Id: I8380b419de0ce2ac3d98baa7a3c263c09508837f
Related-Bug: #1551622
This change renames openstack.py Python module for collectd to
collectd_openstack.py because MOS 9 also ships an openstack
Python module. As a consequence, the collectd plugins using
openstack.py fail to initialize.
Change-Id: I10b3270d0b4b06439390d7da09b90ccf22ab38b5
Closes-Bug: #1551622
This change introduces hypervisor metrics per compute node. We continue
to send the global hypervisor metrics since they are useful for the
Grafana dashboards.
Change-Id: I6d6b45525822d944e2d1850010c0ac9c4ee75b17
This change modifies the collectd plugins to collect OpenStack metrics
only when the controller node own the management VIP address. This
avoids duplication of work on all controllers and reduce the load on the
OpenStack services.
Change-Id: I068935fc9dede38f8cfbd6c7499e9b4ea956822e
For now, we don't know how to display per hypervisor statistics (or
specially will be a mess with >100 compute nodes for example) and we
don't have the aggregated hypervisor metrics for the whole cloud.
In future, per hypervisor metrics could be re-enabled if relevant for
alerting purposes or whatever needs.
Change-Id: Iccbefc7c44df846a8351ff8d832e636474383c1b
The collectd service collects metrics from many sources:
- System (like CPU, RAM, disk, network and so on)
- MySQL
- RabbitMQ
- OpenStack services
It sends the data to the LMA collector using its HTTP JSON output. The
LMA collector then decodes this input and injects it into the Heka
pipeline. Eventually the metrics will be sent to InfluxDB.
Note: until we have the InfluxDB-Grafana plugin ready, the InfluxDB parameters
are hidden in the Fuel UI.
Change-Id: I59577fcdc014be8d0f1d4824ef416afda3604506