Ocata Series Release Notes



In an effort to minimise the noise, Ceilometer will no longer produce meters which have no measureable data associated with it. Image meter only captures state information which is already captured in events and other meters.

Samples are required to measure some aspect of a resource. Samples not measuring anything will be dropped.

New Features

  • In the [dispatcher_http] section of ceilometer.conf, batch_mode can be set to True to activate sending meters and events in batches, or False (default value) to send each meter and event with a fresh HTTP call.

  • Ceilometer sets up the HTTPProxyToWSGI middleware in front of Ceilometer. The purpose of this middleware is to set up the request URL correctly in case there is a proxy (for instance, a loadbalancer such as HAProxy) in front of Ceilometer. So, for instance, when TLS connections are being terminated in the proxy, and one tries to get the versions from the / resource of Ceilometer, one will notice that the protocol is incorrect; It will show ‘http’ instead of ‘https’. So this middleware handles such cases. Thus helping Keystone discovery work correctly. The HTTPProxyToWSGI is off by default and needs to be enabled via a configuration value.

  • The Ceilometer compute agent can now retrieve some instance metadata from the metadata libvirt API instead of polling the Nova API. Since Mitaka, Nova fills this metadata with some information about the instance. To enable this feature you should set [compute]/instance_discovery_method = libvirt_metadata in the configuration file. The only downside of this method is that user_metadata (and some other instance attributes) are no longer part of the samples created by the agent. But when Gnocchi is used as backend, this is not an issue since Gnocchi doesn’t store resource metadata aside of the measurements. And the missing informations are still retrieved through the Nova notifications and will fully update the resource information in Gnocchi.

  • Add support of metering the size of cinder volume/snapshot/backup. Like other meters, these are useful for billing system.

Upgrade Notes

  • Configuration values can passed in via the querystring of publisher in pipeline. For example, rather than setting target, timeout, verify_ssl, and batch_mode under [dispatcher_http] section of conf, you can specify http://<target>/?verify_ssl=True&batch=True&timeout=10. Use raw_only=1 if only the raw details of event are required.

  • Any existing commands utilising image meter should be switched to image.size meter which will provide equivalent functionality

  • The instance meter no longer will be generated. For equivalent functionality, perform the exact same query on any compute meter such as cpu, disk.read.requests, memory.usage, network.incoming.bytes, etc…

  • Ceilometer legacy backends and Ceilometer API are now deprecated. Polling all nova instances from compute agent is no more required with Gnocchi. So we switch the [compute]instance_discovery_method to libvirt_metadata. To switch back to the old deprecated behavior you can set it back to ‘naive’.

  • If you are using Gnocchi as backend it’s strongly recommended to switch [compute]/instance_discovery_method to libvirt_metadata. This will reduce the load on the Nova API especially if you have many compute nodes.

  • The api.pecan_debug option has been removed.

  • Pipeline processing in polling agents was removed in Liberty cycle. A new polling specific definition file is created to handle polling functionality and pipeline definition file is now reserved exclusively for transformations and routing. The polling.yaml file follows the same syntax as the pipeline.yaml but only handles polling attributes such as interval, discovery, resources, meter matching. It is configured by setting cfg_file under the polling section.If no polling definition file is found, it will fallback to reuse pipeline_cfg_file.

Deprecation Notes

  • Ceilometer API is deprecated. Use the APIs from Aodh (alarms), Gnocchi (metrics), and/or Panko (events).

  • With collector service being deprecated, we now have to address the duplication between dispatchers and publishers. The file dispatcher is now marked as deprecated. Use the file publisher to push samples into a file.

  • As the collector service is being deprecated, the duplication of publishers and dispatchers is being addressed. The http dispatcher is now marked as deprecated and the recommended path is to use http publisher.

  • The image meter is dropped in favour of image.size meter.

  • The instance meter no longer will be generated.

  • The [compute]/workload_partitioning = True is deprecated in favor of [compute]/instance_discovery_method = workload_partitioning

Bug Fixes

  • A local cache is used when polling instance metrics to minimise calls Nova API. A new option is added resource_cache_expiry to configure a time to live for cache before it expires. This resolves issue where migrated instances are not removed from cache. This is only relevant when instance_discovery_method is set to naive. It is recommended to use libvirt_metadata if possible.

Other Notes

  • The Events API (exposed at /v2/events) which was deprecated has been removed. The Panko project is now responsible for providing this API and can be installed separately.

  • The deprecated ceilometer-dbsync has been removed. Use ceilometer-upgrade instead.