Xena Series Release Notes

2.1.1

Bug Fixes

  • Fix an issue where IPE fails if the node does not have node_name set

2.0.0

Upgrade Notes

  • Python 2.7 support has been dropped. Last release of ironic-prometheus-exporter to support Python 2.7 is OpenStack Train. The minimum version of Python now supported by ironic-prometheus-exporter is Python 3.6.

Bug Fixes

  • Fixes the bug in the redfish parser that would raise Duplicated timeseries in CollectorRegistry: {‘metric_name’} when a metric have more that one value and different values for the labels.

  • Fixes the value for instance_uuid field when the value is None in all parsers, we will use the same value of node_uuid in instance_uuid.

1.1.0

New Features

  • Adds support for handling Redfish-originated metrics alongside IPMI ones.

  • Adds a Flask Application that can accept requests under /metrics. The response to requests have text/plain type and the content is always the aggregation of all files stored in [oslo_messaging_notifications]/location in the ironic.conf. To run the application you can use any Web Server Gateway and set the application to ironic_prometheus_exporter.app.wsgi:application.

  • Adds the initial support to parse ipmi metrics based on the following payloads: Management, Temperature, System, Current, Version, Memory, Power, Watchdog2 and Fan. The metrics are generated in a format that is valid to be consumed by Prometheus by using the prometheus client.

  • Adds support to add a description for each ipmi metric.

  • Adds a metric called baremetal_last_payload_timestamp_seconds that can be used in Prometheus to query if a baremetal node stopped sending information for a period of time.

  • Adds support to parse the ipmi metrics based on the Voltage payload.

  • Adds two new oslo_messaging_notifications drivers:

    • prometheus_exporter: the sensor data of each baremetal node is transformed into Prometheus metrics when possible and stored in a file.

    • file_exporter: stores the raw sensor data of each baremetal node in a file. It can be used to see how is the format of the data for a specific driver before creating the parser for it.

    To use any of the driver it’s necessary to update the ironic.conf with the following configurations:

    [conductor]
    send_sensor_data=true
    
    [oslo_messaging_notifications]
    driver= <driver>
    transport_url=fake://
    location= <absolute path for directory>
    

    The files created by the drivers will always contain the latest information about the node.