Current Series Release Notes

27.0.0-15

New Features

  • Added GPU metrics collection for compute nodes using the NVIDIA Management Library (NVML). Two families of meters are now available:

    • Per-vGPU meters (vgpu.utilization, vgpu.memory.used, vgpu.memory.total, vgpu.encoder.utilization and vgpu.decoder.utilization), reported against the instance that owns each vGPU (mediated device).

    • Per-physical-GPU meters (gpu.utilization, gpu.memory.used, gpu.memory.total, gpu.temperature, gpu.power.draw, gpu.encoder.utilization and gpu.decoder.utilization), reported against the physical GPU on the host.

    Temperature and power draw are only reported at the physical GPU level, as they are not exposed per vGPU. Collection requires the optional nvidia-ml-py library (installable via the gpu extra, i.e. pip install ceilometer[gpu]) and the NVIDIA driver (libnvidia-ml.so) on the compute node. When no NVIDIA GPU is present the pollsters are silently skipped.

  • The new cpu.delay meter has been added. This meter shows total CPU steal time observed per instance.

  • The Prometheus exporter now supports mutual TLS (mTLS). Setting the new [polling] prometheus_tls_client_ca option (with prometheus_tls_enable on) makes the scrape endpoint require clients to present a certificate signed by that CA, so only authorized scrapers can read the metrics.

  • The volume.backup.size pollster has had the snapshot_id attribute added to resource metadata. This allows directly referencing the ID of the snapshot used to create a volume backup Ceilometer publisher samples, or in custom resource attributes in Gnocchi.

  • The snapshot.size notification meter has had the volume_id attribute added to resource metadata, to match the volume.snapshot.size pollster.

  • The backup.size notification meter has had the volume_id and snapshot_id attributes added to resource metadata, to match the volume.backup.size pollster.

Upgrade Notes

  • The [service_types] cinder option now defaults to block-storage, which is the official and authorized service type name for cinder.

  • meters.yaml has been updated with resource metadata additions to the snapshot.size and backup.size notification meters.

Deprecation Notes

  • By default, the Gnocchi publisher currently filters metrics from the configured Gnocchi service project (set to service@Default by default). This functionality is intended to be used when using Swift as the metric storage backend for Gnocchi, to prevent feedback loops when collecting Swift container metrics in Ceilometer. This behavior can be changed using the enable_filter_project publisher URL parameter, introduced in the 2026.1 Gazpacho release.

    From the 2028.1 release, the value of enable_filter_project will change to false by default, unless filter_project is explicitly configured in the publisher URL. This change is being made because other metric storage backends do not require usage from the Gnocchi service project to be filtered.

    As of the 2027.1 Indri release, a warning is emitted regarding this behavior change if no project filtering values are explicitly configured on the Gnocchi publisher URL. To suppress this warning while keeping Gnocchi service project filtering enabled, add the ?enable_filter_project=true parameter to the Gnocchi publisher URL, or explicitly set the service project you wish to filter using the filter_project parameter (and filter_domain if required).

    To disable service project filtering (the planned new default in 2028.1), add the ?enable_filter_project=false parameter to the publisher URL.

Security Issues

  • Previously the Prometheus exporter endpoint was unauthenticated: any client able to reach the port could scrape all metrics, even with TLS enabled. It can now be locked down with mutual TLS via [polling] prometheus_tls_client_ca.

Bug Fixes

  • Fixed issues with resource discovery where for some groups of polling meters using the same discovery method, only one of the selected meters using that discovery method would discover resources at a time in a polling run, and the other meters would not generate samples for those resources.

    Affected meter groups:

    • loadbalancer.provisioning and loadbalancer.operating

    • manila.share.status and manila.share.size

    • dns.zone.status, dns.zone.recordsets, dns.zone.ttl and dns.zone.serial