monasca-agent/monsetup
David Schroeder 3734c3805b Add support for VM monitoring
This patch gives the Monasca Agent the ability to monitor virtual
machines (VMs) provisioned under Nova.  It bundles Ceilometer's
virtualization inspector to gather the actual metrics, includes a
monasca-setup plugin, and adds cross-tenant support.  The latter
enables the Agent to submit metrics on behalf of a different
tenant/project, giving the VM's owner a set of metrics without each
VM having to run its own Agent.  This plugin collects two sets of
measurements per metric: one for the VM's owner (in-cloud) and for
the Operations team (infrastructure).  They differ in the following
ways:
- Operations metric names are prefixed with "vm." in order to group VM
  and overcloud metrics separately
- Operations metrics include "tenant_id" as a dimension
- Operations metrics include "cloud_tier" dimension with the value
  "overcloud"
- The "hostname" dimension for Operations contains the name of the
  compute server; for the tenant, "hostname" is the name of the VM

The metrics gathered by this plugin include:
- Disk I/O: read/write operations/bytes per second
- Disk I/O: errors per second
- Network I/O: in/out packets/bytes per second
- CPU utilization as a percentage of CPU time over polling time

Change-Id: I23781a1ba552ef2551e6ff1caea21dd8f515d73d
2014-10-17 10:57:24 -06:00
..
detection Add support for VM monitoring 2014-10-17 10:57:24 -06:00
service Cleaned up a lot of the Pep8 violations 2014-08-28 10:42:29 -06:00
README.md Rename package to monasca-agent. 2014-07-18 13:48:38 -06:00
__init__.py Structural changes to allow a single detection plugin to setup multiple plugins 2014-06-09 10:34:16 -06:00
agent_config.py Cleaned up a lot of the Pep8 violations 2014-08-28 10:42:29 -06:00
main.py Add support for VM monitoring 2014-10-17 10:57:24 -06:00

README.md

monasca-setup

This script will detect running services and configure monasca-agent to watch them as well as starting the agent and configuring it to start up on boot.

Future Considerations

  • A good system for specifying active style checks for configuration would be great. Active style checks are those which run locally but are checking a remote box.
  • The ability to dynamically add detection plugins could be quite valuable. Also it could aid in the active check config.
    • With the ability to dynamically add I should also include the ability to dynamically remove.
  • A config file with metadata to assist in automatic configuration could be quite valuable, for example user/pass for logging into mysql.
  • The current system does not work well in the case of clusters, for example the kafka plugin will end up collecting the same data on each node of a cluster.