This check monitors OpenStack from the controller node.
The OpenStack Controller check is included in the Datadog Agent package, so you do not need to install anything else on your server.
The OpenStack Controller integration is designed to collect information from all compute nodes and the servers running it. The integration should be run from a single Agent to monitor your OpenStack environment, and can be deployed on your controller node or an adjacent server that has access to the Keystone and Nova endpoints.
Create a datadog
user that is used in your openstack_controller.d/conf.yaml
file. This user requires admin read-only permissions across your environment so that it can be run from a single node and read high level system information about all nodes and servers.
Edit the openstack_controller.d/conf.yaml
file, in the conf.d/
folder at the root of your Agent’s configuration directory to start collecting your OpenStack Controller performance data. See the sample openstack_controller.d/conf.yaml for all available configuration options:
init_config:
instances:
## @param name - string - required
## Unique identifier for this instance.
#
- name: "<INSTANCE_NAME>"
## @param user - object - required
## Password authentication is the only auth method supported
## User expects username, password, and user domain id
## `user` should resolve to a structure like
## {'password': '<PASSWORD>', 'name': '<USER_NAME>', 'domain': {'id': '<DOMAIN_ID>'}}
## The check uses the Unscoped token method to collect information about
## all available projects to the user.
#
user:
password: "<PASSWORD>"
name: "<USER_NAME>"
domain:
id: "<DOMAIN_ID>"
Run the Agent’s status
subcommand and look for openstack_controller
under the Checks section.
openstack.nova.current_workload (gauge) | Current workload on the Nova hypervisor |
openstack.nova.disk_available_least (gauge) | Disk available for the Nova hypervisor Shown as gibibyte |
openstack.nova.free_disk_gb (gauge) | Free disk on the Nova hypervisor Shown as gibibyte |
openstack.nova.free_ram_mb (gauge) | Free RAM on the Nova hypervisor Shown as mebibyte |
openstack.nova.hypervisor_load.1 (gauge) | The average hypervisor load over one minute. |
openstack.nova.hypervisor_load.5 (gauge) | The average hypervisor load over five minutes. |
openstack.nova.hypervisor_load.15 (gauge) | The average hypervisor load over fifteen minutes. |
openstack.nova.limits.max_image_meta (gauge) | The maximum allowed image metadata definitions for this tenant |
openstack.nova.limits.max_personality (gauge) | The maximum allowed personalities for this tenant |
openstack.nova.limits.max_personality_size (gauge) | The maximum size of a single personality allowed for this tenant |
openstack.nova.limits.max_security_group_rules (gauge) | The maximum number of security group rules allowed for this tenant |
openstack.nova.limits.max_security_groups (gauge) | The maximum number of security groups allowed for this tenant |
openstack.nova.limits.max_server_meta (gauge) | The maximum allowed service metadata definitions for this tenant |
openstack.nova.limits.max_total_cores (gauge) | The maximum allowed cores for this tenant |
openstack.nova.limits.max_total_floating_ips (gauge) | The maximum allowed floating IPs for this tenant |
openstack.nova.limits.max_total_instances (gauge) | The maximum number of instances allowed for this tenant |
openstack.nova.limits.max_total_keypairs (gauge) | The maximum allowed keypairs allowed for this tenant |
openstack.nova.limits.total_cores_used (gauge) | The total cores used by this tenant |
openstack.nova.limits.total_floating_ips_used (gauge) | The total floating IPs used by this tenant |
openstack.nova.limits.total_instances_used (gauge) | The total instances used by this tenant |
openstack.nova.limits.total_ram_used (gauge) | The current RAM used by this tenant Shown as gibibyte |
openstack.nova.limits.total_security_groups_used (gauge) | The total number of security groups used by this tenant |
openstack.nova.limits.max_total_ram_size (gauge) | The max allowed RAM size for this tenant Shown as gibibyte |
openstack.nova.local_gb (gauge) | The size in GB of the ephemeral disk present on this hypervisor host Shown as gibibyte |
openstack.nova.local_gb_used (gauge) | The size in GB of disk used on this hypervisor host Shown as gibibyte |
openstack.nova.memory_mb (gauge) | The size in MB of RAM present on this hypervisor host Shown as mebibyte |
openstack.nova.memory_mb_used (gauge) | The size in MB of RAM used on this hypervisor host Shown as mebibyte |
openstack.nova.running_vms (gauge) | Number of running VMs on this hypervisor host |
openstack.nova.server.flavor.disk (gauge) | The size of the root disk that was created for this server in GiB Shown as gibibyte |
openstack.nova.server.flavor.ephemeral (gauge) | The size of the ephemeral disk that was created for this server in GiB Shown as gibibyte |
openstack.nova.server.flavor.ram (gauge) | The amount of RAM this server flavor has in MiB Shown as mebibyte |
openstack.nova.server.flavor.swap (gauge) | The size of a dedicated swap disk that was allocated for this server in MiB Shown as mebibyte |
openstack.nova.server.flavor.vcpus (gauge) | The number of virtual CPUs that were allocated to the server |
openstack.nova.server.hdd_errors (gauge) | The number of errors seen by the server when accessing an HDD device |
openstack.nova.server.hdd_read_req (gauge) | The number of read requests made to an HDD device by this server |
openstack.nova.server.hdd_write_req (gauge) | The number of write requests made to an HDD device by this server |
openstack.nova.server.vda_errors (gauge) | The number of errors seen by the server when accessing a VDA device |
openstack.nova.server.vda_read_req (gauge) | The number of read requests made to a VDA device by this server |
openstack.nova.server.vda_write_req (gauge) | The number of write requests made to a VDA device by this server |
openstack.nova.server.hdd_read (gauge) | Number of bytes read from an HDD device by this server Shown as byte |
openstack.nova.server.hdd_write (gauge) | Number of bytes written to an HDD device by this server Shown as byte |
openstack.nova.server.vda_read (gauge) | Number of bytes read from a VDA device by this server Shown as byte |
openstack.nova.server.vda_write (gauge) | Number of bytes written to a VDA device by this server Shown as byte |
openstack.nova.server.memory (gauge) | The amount of memory in MB provisioned for this server Shown as mebibyte |
openstack.nova.server.memory_actual (gauge) | The amount of memory in MB provisioned for this server Shown as mebibyte |
openstack.nova.server.memory_rss (gauge) | The amount of memory used by the processes of this server that is not associated with disk pages - such as stack and heap memory Shown as mebibyte |
openstack.nova.server.cpu0_time (gauge) | CPU time in nanoseconds of this virtual CPU Shown as nanosecond |
openstack.nova.vcpus (gauge) | Number of vCPUs available on this hypervisor host |
openstack.nova.vcpus_used (gauge) | Number of vCPUS used on this hypervisor host |
openstack.neutron.api.up:
Returns CRITICAL
if the Agent is unable to query the Neutron API, UNKNOWN
if there is an issue with the Keystone API. Returns OK
otherwise.
openstack.nova.api.up:
Returns CRITICAL
if the Agent is unable to query the Nova API, UNKNOWN
if there is an issue with the Keystone API. Returns OK
otherwise.
openstack.keystone.api.up:
Returns CRITICAL
if the Agent is unable to query the Keystone API. Returns OK
otherwise.
openstack.nova.hypervisor.up:
Returns UNKNOWN
if the Agent is unable to get the Hypervisor state, CRITICAL
if the Hypervisor is down. Returns OK
otherwise.
openstack.neutron.network.up:
Returns CRITICAL
if the Network is down. Returns OK
otherwise.
OpenStack Controller does not include any events.
Need help? Contact Datadog support.
On this Page