Skip to content

Commit e511415

Browse files
authored
Deprecated Cortex chunks storage (#4268)
Deprecate Cortex chunks storage Remove k8s example config which is chunks-based Signed-off-by: Marco Pracucci <[email protected]>
1 parent eef2c03 commit e511415

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

55 files changed

+38
-927
lines changed

CHANGELOG.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@
22

33
## master / unreleased
44

5+
* [CHANGE] Cortex chunks storage has been deprecated and it's now in maintenance mode: all Cortex users are encouraged to migrate to the blocks storage. No new features will be added to the chunks storage. The default Cortex configuration still runs the chunks engine; please check out the [blocks storage doc](https://cortexmetrics.io/docs/blocks-storage/) on how to configure Cortex to run with the blocks storage. #4268
6+
* [CHANGE] The example Kubernetes manifests (stored at `k8s/`) have been removed due to a lack of proper support and maintenance. #4268
57
* [CHANGE] Querier / ruler: deprecated `-store.query-chunk-limit` CLI flag (and its respective YAML config option `max_chunks_per_query`) in favour of `-querier.max-fetched-chunks-per-query` (and its respective YAML config option `max_fetched_chunks_per_query`). The new limit specifies the maximum number of chunks that can be fetched in a single query from ingesters and long-term storage: the total number of actual fetched chunks could be 2x the limit, being independently applied when querying ingesters and long-term storage. #4125
68
* [CHANGE] Alertmanager: allowed to configure the experimental receivers firewall on a per-tenant basis. The following CLI flags (and their respective YAML config options) have been changed and moved to the limits config section: #4143
79
- `-alertmanager.receivers-firewall.block.cidr-networks` renamed to `-alertmanager.receivers-firewall-block-cidr-networks`

Makefile

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -213,10 +213,6 @@ lint:
213213
./pkg/querier/... \
214214
./pkg/ruler/...
215215

216-
# Validate Kubernetes spec files. Requires:
217-
# https://kubeval.instrumenta.dev
218-
kubeval ./k8s/*
219-
220216
test:
221217
go test -tags netgo -timeout 30m -race -count 1 ./...
222218

README.md

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ Cortex provides horizontally scalable, highly available, multi-tenant, long term
1414
- **Highly available:** When run in a cluster, Cortex can replicate data between machines. This allows you to survive machine failure without gaps in your graphs.
1515
- **Multi-tenant:** Cortex can isolate data and queries from multiple different independent
1616
Prometheus sources in a single cluster, allowing untrusted parties to share the same cluster.
17-
- **Long term storage:** Cortex supports Amazon DynamoDB, Google Bigtable, Cassandra, S3, GCS and Microsoft Azure for long term storage of metric data. This allows you to durably store data for longer than the lifetime of any single machine, and use this data for long term capacity planning.
17+
- **Long term storage:** Cortex supports S3, GCS, Swift and Microsoft Azure for long term storage of metric data. This allows you to durably store data for longer than the lifetime of any single machine, and use this data for long term capacity planning.
1818

1919
Cortex is a [CNCF](https://cncf.io) incubation project used in several production systems including [Weave Cloud](https://cloud.weave.works) and [Grafana Cloud](https://grafana.com/cloud).
2020
Cortex is primarily used as a [remote write](https://prometheus.io/docs/operating/configuration/#remote_write) destination for Prometheus, with a Prometheus-compatible query API.
@@ -25,9 +25,8 @@ Read the [getting started guide](https://cortexmetrics.io/docs/getting-started)
2525
project. Before deploying Cortex with a permanent storage backend you
2626
should read:
2727
1. [An overview of Cortex's architecture](https://cortexmetrics.io/docs/architecture/)
28-
1. [A guide to running Cortex](https://cortexmetrics.io/docs/chunks-storage/running-chunks-storage-in-production/)
29-
1. [Information regarding configuring Cortex](https://cortexmetrics.io/docs/configuration/arguments/)
30-
1. [Steps to run Cortex with Cassandra](https://cortexmetrics.io/docs/chunks-storage/running-chunks-storage-with-cassandra/)
28+
1. [Getting started with Cortex](https://cortexmetrics.io/docs/getting-started/)
29+
1. [Information regarding configuring Cortex](https://cortexmetrics.io/docs/configuration/)
3130

3231
For a guide to contributing to Cortex, see the [contributor guidelines](https://cortexmetrics.io/docs/contributing/).
3332

build-image/Dockerfile

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -40,11 +40,6 @@ RUN GO111MODULE=on go get \
4040
github.com/campoy/[email protected] \
4141
&& rm -rf /go/pkg /go/src /root/.cache
4242

43-
# Cannot get it to run together in above go get.
44-
RUN GO111MODULE=on go get \
45-
github.com/instrumenta/[email protected] \
46-
&& rm -rf /go/pkg /go/src /root/.cache
47-
4843
ENV NODE_PATH=/usr/lib/node_modules
4944
COPY build.sh /
5045
ENV GOCACHE=/go/cache

docs/_index.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ Cortex provides horizontally scalable, highly available, multi-tenant, long term
2121
- **Highly available:** When run in a cluster, Cortex can replicate data between machines. This allows you to survive machine failure without gaps in your graphs.
2222
- **Multi-tenant:** Cortex can isolate data and queries from multiple different independent
2323
Prometheus sources in a single cluster, allowing untrusted parties to share the same cluster.
24-
- **Long term storage:** Cortex supports Amazon DynamoDB, Google Bigtable, Cassandra, S3 and GCS for long term storage of metric data. This allows you to durably store data for longer than the lifetime of any single machine, and use this data for long term capacity planning.
24+
- **Long term storage:** Cortex supports S3, GCS, Swift and Microsoft Azure for long term storage of metric data. This allows you to durably store data for longer than the lifetime of any single machine, and use this data for long term capacity planning.
2525

2626
Cortex is a [CNCF](https://cncf.io) incubation project used in several production systems including [Weave Cloud](https://cloud.weave.works) and [Grafana Cloud](https://grafana.com/cloud).
2727
Cortex is primarily used as a [remote write](https://prometheus.io/docs/operating/configuration/#remote_write) destination for Prometheus, exposing a Prometheus-compatible query API.
@@ -33,7 +33,7 @@ project. Before deploying Cortex with a permanent storage backend you
3333
should read:
3434

3535
1. [An overview of Cortex's architecture](architecture.md)
36-
1. [A guide to running Cortex chunks storage](chunks-storage/running-chunks-storage-in-production.md)
36+
1. [Getting started with Cortex](getting-started/_index.md)
3737
1. [Information regarding configuring Cortex](configuration/_index.md)
3838

3939
For a guide to contributing to Cortex, see the [contributor guidelines](contributing/).

docs/architecture.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,12 +21,12 @@ Incoming samples (writes from Prometheus) are handled by the [distributor](#dist
2121

2222
Cortex currently supports two storage engines to store and query the time series:
2323

24-
- Chunks (default)
24+
- Chunks (deprecated)
2525
- Blocks
2626

2727
The two engines mostly share the same Cortex architecture with few differences outlined in the rest of the document.
2828

29-
### Chunks storage (default)
29+
### Chunks storage (deprecated)
3030

3131
The chunks storage stores each single time series into a separate object called _Chunk_. Each Chunk contains the samples for a given period (defaults to 12 hours). Chunks are then indexed by time range and labels, in order to provide a fast lookup across many (over millions) Chunks.
3232

docs/chunks-storage/_index.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,12 @@
11
---
2-
title: "Chunks Storage"
3-
linkTitle: "Chunks Storage"
2+
title: "Chunks Storage (deprecated)"
3+
linkTitle: "Chunks Storage (deprecated)"
44
weight: 4
55
menu:
66
---
77

8+
**Warning: the chunks storage is deprecated. You're encouraged to use the [blocks storage](../blocks-storage/_index.md).**
9+
810
The chunks storage is a Cortex storage engine which stores each single time series into a separate object called _chunk_. Each chunk contains the samples for a given period (defaults to 12 hours). Chunks are then indexed by time range and labels, in order to provide a fast lookup across many (over millions) chunks. For this reason, the Cortex chunks storage requires two backend storages: a key-value store for the index and an object store for the chunks.
911

1012
The supported backends for the **index store** are:

docs/chunks-storage/aws-tips.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@ weight: 10
55
slug: aws-tips
66
---
77

8+
**Warning: the chunks storage is deprecated. You're encouraged to use the [blocks storage](../blocks-storage/_index.md).**
9+
810
This page shares some tips and things to take in consideration when running Cortex chunks storage on AWS.
911

1012
## AWS Credentials

docs/chunks-storage/caching.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@ weight: 4
55
slug: caching
66
---
77

8+
**Warning: the chunks storage is deprecated. You're encouraged to use the [blocks storage](../blocks-storage/_index.md).**
9+
810
Correctly configured caching is important for a production-ready Cortex cluster.
911
Cortex has many opportunities for using caching to accelerate queries and reduce cost. Cortex can use a cache for:
1012

docs/chunks-storage/chunks-storage-getting-started.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@ weight: 1
55
slug: getting-started-chunks-storage
66
---
77

8+
**Warning: the chunks storage is deprecated. You're encouraged to use the [blocks storage](../blocks-storage/_index.md).**
9+
810
Cortex can be run as a single binary or as multiple independent microservices.
911
The single-binary mode is easier to deploy and is aimed mainly at users wanting to try out Cortex or develop on it.
1012
The microservices mode is intended for production usage, as it allows you to independently scale different services and isolate failures.

0 commit comments

Comments
 (0)