Enable Compute service meters for Red Hat Enterprise Linux and CentOS

Telemetry uses a combination of notifications and an agent to collect Compute meters. Perform these steps on each compute node.

Install and configure components

  1. Install the packages:

    # dnf install openstack-ceilometer-compute
    # dnf install openstack-ceilometer-ipmi (optional)
    
  1. Edit the /etc/ceilometer/ceilometer.conf file and complete the following actions:

    • In the [DEFAULT] section, configure RabbitMQ message queue access:

      [DEFAULT]
      ...
      transport_url = rabbit://openstack:RABBIT_PASS@controller
      

      Replace RABBIT_PASS with the password you chose for the openstack account in RabbitMQ.

    • In the [service_credentials] section, configure service credentials:

      [service_credentials]
      ...
      auth_url = http://controller:5000
      project_domain_id = default
      user_domain_id = default
      auth_type = password
      username = ceilometer
      project_name = service
      password = CEILOMETER_PASS
      interface = internalURL
      region_name = RegionOne
      

      Replace CEILOMETER_PASS with the password you chose for the ceilometer user in the Identity service.

Configure Compute to use Telemetry

  • Edit the /etc/nova/nova.conf file and configure notifications in the [DEFAULT] section:

    [DEFAULT]
    ...
    instance_usage_audit = True
    instance_usage_audit_period = hour
    
    [notifications]
    ...
    notify_on_state_change = vm_and_task_state
    
    [oslo_messaging_notifications]
    ...
    driver = messagingv2
    

Configure Compute to poll IPMI meters

Note

To enable IPMI meters, ensure IPMITool is installed and the host supports Intel Node Manager.

  • Edit the /etc/sudoers file and include:

    ceilometer ALL = (root) NOPASSWD: /usr/bin/ceilometer-rootwrap /etc/ceilometer/rootwrap.conf *
    
  • Edit the /etc/ceilometer/polling.yaml to include the required meters, for example:

    - name: ipmi
      interval: 300
      meters:
        - hardware.ipmi.temperature
    

Finalize installation

  1. Start the agent and configure it to start when the system boots:

    # systemctl enable openstack-ceilometer-compute.service
    # systemctl start openstack-ceilometer-compute.service
    # systemctl enable openstack-ceilometer-ipmi.service (optional)
    # systemctl start openstack-ceilometer-ipmi.service (optional)
    
  2. Restart the Compute service:

    # systemctl restart openstack-nova-compute.service