4.0 Series Release Notes#
New measures are now sharded into sacks to better distribute data across storage driver as well as allow for improved scheduling of aggregation workload.
A Redis driver has been introduced for storing incoming measures and computed timeseries.
Gnocchi provides a new authentication mode ‘remoteuser’. It uses the HTTP server REMOTE_USER environment variable to retrieve the username.
The S3 driver now checks for data consistency by default. S3 does not guarantee read-after-write consistency when overwriting data. Gnocchi now waits up to s3_check_consistency_timeout seconds before returning and unlocking a metric for new processing. This makes sure that the data that will be read by the next workers will be consistent and that no data will be lost. This feature can be disabled by setting the value to 0.
The storage driver needs to be upgraded. The number of sacks to distribute across can be configured on upgrade by passing in
sacks-numbervalue on upgrade. A default number of sacks will be created if not set. This can be reconfigured post-upgrade as well by using
gnocchi-change-sack-sizecli. See documentation for hints on the number of sacks to set for your environment and upgrade notes
The logging library oslo.log has been removed for daiquiri. Some superfluous configuration options have been removed.
The storage upgrade is only supported from version 3.1.
The noauth authentication mechanism is deprecated and will be removed in a next version.
The creation of the legacy Ceilometer resource types has been removed.
The custom gnocchi/rest/app.wsgi is now deprecated, the gnocchi-api binary should be used as wsgi script file. For example, with uwsgi “–wsgi-file /usr/lib/python2.7/gnocchi/rest/app.wsgi” should be replaced by “–wsgi-file /usr/bin/gnocchi-api”.
Previously, s3 storage driver stored aggregates in a bucket per metric. This would quickly run into bucket limit set by s3. s3 storage driver is fixed so it stores all aggregates for all metrics in a single bucket. Buckets previously created by Gnocchi will need to be deleted as they will no longer be handled.
A workaround for a Python 2.7 bug in fnmatch has been removed. Makes sure you use at least Python 2.7.9 to avoid running into it.