Releases: cortexproject/cortex
Releases · cortexproject/cortex
0.4.0 / 2019-12-02
- [CHANGE] The frontend component has been refactored to be easier to re-use. When upgrading the frontend, cache entries will be discarded and re-created with the new protobuf schema. #1734
- [CHANGE] Removed direct DB/API access from the ruler.
-ruler.configs.urlhas been now deprecated. #1579 - [CHANGE] Removed
Deltaencoding. Any old chunks withDeltaencoding cannot be read anymore. Ifingester.chunk-encodingis set toDeltathe ingester will fail to start. #1706 - [CHANGE] Setting
-ingester.max-transfer-retriesto 0 now disables hand-over when ingester is shutting down. Previously, zero meant infinite number of attempts. #1771 - [CHANGE]
dynamohas been removed as a valid storage name to make it consistent for all components.awsandaws-dynamoremain as valid storage names. - [CHANGE/FEATURE] The frontend split and cache intervals can now be configured using the respective flag
--querier.split-queries-by-intervaland--frontend.cache-split-interval.- If
--querier.split-queries-by-intervalis not provided request splitting is disabled by default. --querier.split-queries-by-dayis still accepted for backward compatibility but has been deprecated. You should now use--querier.split-queries-by-interval. We recommend a to use a multiple of 24 hours.
- If
- [FEATURE] Global limit on the max series per user and metric #1760
-ingester.max-global-series-per-user-ingester.max-global-series-per-metric- Requires
-distributor.replication-factorand-distributor.shard-by-all-labelsset for the ingesters too
- [FEATURE] Flush chunks with stale markers early with
ingester.max-stale-chunk-idle. #1759 - [FEATURE] EXPERIMENTAL: Added new KV Store backend based on memberlist library. Components can gossip about tokens and ingester states, instead of using Consul or Etcd. #1721
- [FEATURE] EXPERIMENTAL: Use TSDB in the ingesters & flush blocks to S3/GCS ala Thanos. This will let us use an Object Store more efficiently and reduce costs. #1695
- [FEATURE] Allow Query Frontend to log slow queries with
frontend.log-queries-longer-than. #1744 - [FEATURE] Add HTTP handler to trigger ingester flush & shutdown - used when running as a stateful set with the WAL enabled. #1746
- [ENHANCEMENT] Reduce memory allocations in the write path. #1706
- [ENHANCEMENT] Consul client now follows recommended practices for blocking queries wrt returned Index value. #1708
- [ENHANCEMENT] Consul client can optionally rate-limit itself during Watch (used e.g. by ring watchers) and WatchPrefix (used by HA feature) operations. Rate limiting is disabled by default. New flags added:
--consul.watch-rate-limit, and--consul.watch-burst-size. #1708 - [ENHANCEMENT] Added jitter to HA deduping heartbeats, configure using
distributor.ha-tracker.update-timeout-jitter-max#1534 - [ENHANCEMENT] Add ability to flush chunks with stale markers early. #1759
- [BUGFIX] Stop reporting successful actions as 500 errors in KV store metrics. #1798
- [BUGFIX] Fix bug where duplicate labels can be returned through metadata APIs. #1790
- [BUGFIX] Fix reading of old, v3 chunk data. #1779
- [BUGFIX] Now support IAM roles in service accounts in AWS EKS. #1803
In this release we updated the following dependencies:
- gRPC v1.25.0 (resulted in a drop of 30% CPU usage when compression is on)
- jaeger-client v2.20.0
- aws-sdk-go to v1.25.22
Cortex 0.3.0
This release adds support for Redis as an alternative to Memcached, and also includes many optimisations which reduce CPU and memory usage.
- [CHANGE] Gauge metrics were renamed to drop the
_totalsuffix. #1685- In Alertmanager,
alertmanager_configs_totalis nowalertmanager_configs - In Ruler,
scheduler_configs_totalis nowscheduler_configsscheduler_groups_totalis nowscheduler_groups.
- In Alertmanager,
- [CHANGE] The "auto Slack root" feature was removed, including the
--alertmanager.configs.auto-slack-rootCLI flag. #1597 - [CHANGE] In table-manager, default DynamoDB capacity was reduced from 3,000 units to 1,000 units. We recommend you do not run with the defaults: find out what figures are needed for your environment and set that via
-dynamodb.periodic-table.write-throughputand-dynamodb.chunk-table.write-throughput. - [FEATURE] Add Redis support for caching #1612
- [FEATURE] Allow spreading chunk writes across multiple S3 buckets #1625
- [ENHANCEMENT] Upgraded Prometheus to 2.12.0 and Alertmanager to 0.19.0. #1597
- [ENHANCEMENT] Cortex is now built with Go 1.13 #1675, #1676, #1679
- [ENHANCEMENT] Many optimisations, mostly impacting ingester and querier: #1574, #1624, #1638, #1644, #1649, #1654, #1702
Full list of changes: v0.2.0...v0.3.0
Warning
- [BUG] The Alertmanager UI is non-functional in this release
Cortex 0.3.0-rc.0
See https://github.com/cortexproject/cortex/releases/tag/v0.3.0 for description
0.2.0 / 2019-09-05
This release has several exciting features, the most notable of them being setting -ingester.spread-flushes to potentially reduce your storage space by upto 50%.
- [CHANGE] Flags changed due to changes upstream in Prometheus Alertmanager #929:
alertmanager.mesh.listen-addressis nowcluster.listen-addressalertmanager.mesh.peer.hostandalertmanager.mesh.peer.servicecan be replaced bycluster.peeralertmanager.mesh.hardware-address,alertmanager.mesh.nickname,alertmanager.mesh.password, andalertmanager.mesh.peer.refresh-intervalall disappear.
- [CHANGE] --claim-on-rollout flag deprecated; feature is now always on #1566
- [CHANGE] Retention period must now be a multiple of periodic table duration #1564
- [CHANGE] The value for the name label for the chunks memcache in all
cortex_cache_metrics is nowchunksmemcache(before it wasmemcache) #1569 - [FEATURE] Makes the ingester flush each timeseries at a specific point in the max-chunk-age cycle with
-ingester.spread-flushes. This means multiple replicas of a chunk are very likely to contain the same contents which cuts chunk storage space by up to 66%. #1578 - [FEATURE] Make minimum number of chunk samples configurable per user #1620
- [FEATURE] Honor HTTPS for custom S3 URLs #1603
- [FEATURE] You can now point the query-frontend at a normal Prometheus for parallelisation and caching #1441
- [FEATURE] You can now specify
http_configon alert receivers #929 - [FEATURE] Add option to use jump hashing to load balance requests to memcached #1554
- [FEATURE] Add status page for HA tracker to distributors #1546
- [FEATURE] The distributor ring page is now easier to read with alternate rows grayed out #1621
0.2.0-rc.0 / 2019-08-30
This release has several exciting features, the most notable of them being setting -ingester.spread-flushes to potentially reduce your storage space by upto 50%.
- [CHANGE] Flags changed due to changes upstream in Prometheus Alertmanager #929:
alertmanager.mesh.listen-addressis nowcluster.listen-addressalertmanager.mesh.peer.hostandalertmanager.mesh.peer.servicecan be replaced bycluster.peeralertmanager.mesh.hardware-address,alertmanager.mesh.nickname,alertmanager.mesh.password, andalertmanager.mesh.peer.refresh-intervalall disappear.
- [CHANGE] --claim-on-rollout flag deprecated; feature is now always on #1566
- [CHANGE] Retention period must now be a multiple of periodic table duration #1564
- [CHANGE] The value for the name label for the chunks memcache in all
cortex_cache_metrics is nowchunksmemcache(before it wasmemcache) #1569 - [FEATURE] Makes the ingester flush each timeseries at a specific point in the max-chunk-age cycle with
-ingester.spread-flushes. This means multiple replicas of a chunk are very likely to contain the same contents which cuts chunk storage space by up to 66%. #1578 - [FEATURE] Make minimum number of chunk samples configurable per user #1620
- [FEATURE] Honor HTTPS for custom S3 URLs #1603
- [FEATURE] You can now point the query-frontend at a normal Prometheus for parallelisation and caching #1441
- [FEATURE] You can now specify
http_configon alert receivers #929 - [FEATURE] Add option to use jump hashing to load balance requests to memcached #1554
- [FEATURE] Add status page for HA tracker to distributors #1546
- [FEATURE] The distributor ring page is now easier to read with alternate rows grayed out #1621
0.1.0 / 2019-08-07
- [CHANGE] HA Tracker flags were renamed to provide more clarity #1465
distributor.accept-ha-labelsis nowdistributor.ha-tracker.enabledistributor.accept-ha-samplesis nowdistributor.ha-tracker.enable-for-all-usersha-tracker.replicais nowdistributor.ha-tracker.replicaha-tracker.clusteris nowdistributor.ha-tracker.cluster
- [FEATURE] You can specify "heap ballast" to reduce Go GC Churn #1489
- [BUGFIX] HA Tracker no longer always makes a request to Consul/Etcd when a request is not from the active replica #1516
- [BUGFIX] Queries are now correctly cancelled by the query-frontend #1508
0.1.0-rc.0 / 2019-08-01
- [CHANGE] HA Tracker flags were renamed to provide more clarity #1465
distributor.accept-ha-labelsis nowdistributor.ha-tracker.enabledistributor.accept-ha-samplesis nowdistributor.ha-tracker.enable-for-all-usersha-tracker.replicais nowdistributor.ha-tracker.replicaha-tracker.clusteris nowdistributor.ha-tracker.cluster
- [FEATURE] You can specify "heap ballast" to reduce Go GC Churn #1489
- [BUGFIX] HA Tracker no longer always makes a request to Consul/Etcd when a request is not from the active replica #1516
- [BUGFIX] Queries are now correctly cancelled by the query-frontend #1508