Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

2.13 release notes #8445

Merged
merged 9 commits into from
Jul 5, 2024
90 changes: 90 additions & 0 deletions docs/sources/mimir/release-notes/v2.13.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,90 @@
---
title: "Grafana Mimir version 2.13 release notes"
menuTitle: "V2.13 release notes"
description: "Release notes for Grafana Mimir version 2.13"
weight: 1100
---

# Grafana Mimir version 2.13 release notes

<!-- vale Grafana.GoogleWill = NO -->
<!-- vale Grafana.Timeless = NO -->
<!-- Release notes are often future focused -->

Grafana Labs is excited to announce version 2.13 of Grafana Mimir.

The highlights that follow include the top features, enhancements, and bug fixes in this release.
For the complete list of changes, refer to the [CHANGELOG](https://github.com/grafana/mimir/blob/main/CHANGELOG.md).

## Features and enhancements

- **Store-gateway can be configured to explicitly disable or enable tenants**. This is useful in cases when compaction slows down for a tenant to temporarily exclude a tenant while compaction catches up without impact other tenants.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this the most exciting new feature? I'd expect us to put the top highlights first.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

haha, good point. This was largely ordered as the changelog

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

check out 2db2de7

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks reasonable to me, @zhehao-grafana might have opinions though.


- Configurable S3 bucket lookup type improves interoperability with **S3-compatible providers such as **Tencent and Alibaba\*\*\*\*. Configure lookup type via `-<prefix>.s3.bucket-lookup-type` or `-common.storage.s3-bucket-lookup-type`.
dimitarvdimitrov marked this conversation as resolved.
Show resolved Hide resolved

- **Mimirtool can now verify the validity of a Mimir runtime configuration** file with the `mimirtool runtime-config verify` command.

- **Configuration of TLS for S3 buckets** is now possible via `-<prefix>.s3.http.*` and `-common.storage.s3.http.*` configuration options.

- **Improved OTLP ingestion performance** by using native translation, which reduces memory usage in the distributor by up to 30% and CPU usage by up to 8%.

- **Active series are now updated along with owned series.** This means the number of active series for a tenant is much more accurate after adding ingesters.
charleskorn marked this conversation as resolved.
Show resolved Hide resolved

- **Remote read (`/prometheus/api/v1/read`) is becoming a first-class endpoint in Mimir** with support in `query stats` logs and query blocking in the query-frontend. More coming in future releases.

- **Improved CPU performance in processing queries with regular expressions** that contain many alternations (for example `foo|bar|baz|...`).

Additionally, the following previously experimental features are now considered stable:

- Rules tenant federation via the `source_tenants` field in rule groups.
- Enabling and recording and alerting rules evaluation on a per-tenant basis.
dimitarvdimitrov marked this conversation as resolved.
Show resolved Hide resolved
- Limiting the number of tenants a federated query can query.

## Important changes

In Grafana Mimir 2.13 the following behavior has changed:

- The default Docker image `grafana/mimir` is now based on the distroless image `gcr.io/distroless/static-debian12`.
See [Debugging distroless container images](https://grafana.com/docs/mimir/next/manage/mimir-runbooks/#debugging-distroless-container-images-in-kubernetes) for more details on how to
dimitarvdimitrov marked this conversation as resolved.
Show resolved Hide resolved
work with distroless images.

- Errors logs in the ingester are now sampled at 10% by default. Sampled log lines will contain `(sampled 1/10)`. All the discarded samples will still be tracked by the `cortex_discarded_samples_total` metric.
dimitarvdimitrov marked this conversation as resolved.
Show resolved Hide resolved

- Anonymous usage statistics now include actual CPU usage instead of available CPU cores.

- Continuous-test is no longer a standalone binary and is now part of Mimir as its own target. The published Docker images has been updated to use the new packaging.
dimitarvdimitrov marked this conversation as resolved.
Show resolved Hide resolved

The following deprecated configuration options are removed in Grafana Mimir 2.13:

- The configuration option `-log.buffered`, which was deprecated in 2.11 and is now enabled by default.

## Experimental features

Grafana Mimir 2.13 includes new features that are considered experimental and disabled by default.
Use them with caution and report any issues you encounter:

- **New PromQL query engine** can be configured via the `-querier.promql-engine=mimir` CLI flag on queriers.
It aims to provide better utilization than the upstream Prometheus PromQL engine when processing large sets of data.
dimitarvdimitrov marked this conversation as resolved.
Show resolved Hide resolved

- Support for [**HAProxy PROXY protocol**](https://www.haproxy.org/download/1.8/doc/proxy-protocol.txt) can now be enabled via `-server.proxy-protocol-enabled=true`.
dimitarvdimitrov marked this conversation as resolved.
Show resolved Hide resolved

- Experimental support for server-side circuit breakers in ingesters on read and write requests. This can be enabled using `-ingester.push-circuit-breaker.enabled` and `-ingester.read-circuit-breaker.enabled` options and further configured via the `-ingester.push-circuit-breaker.*` and `-ingester.read-circuit-breaker.*` options.

The following configuration options are deprecated and will be removed in a future Grafana Mimir release:

- `evaluation_delay` field in the rule group configuration has been deprecated. Please use `query_offset` instead.

## Bug fixes

- OTLP ingestion: translate all HTTP 5xx errors into one of 502, 503, or 504, so that the otel-collector retries the failed requests.
- OTLP ingestion: return properly formatted protobuf error messages when ingestion fails.
- OTLP ingestion: generate `target_info` metric only when there are metrics in the request and there is at least one configured identifying label.
- OTLP ingestion: don't discard timeseries paired with invalid exemplars. Instead, try to ingest the timeseries and discard only the invalid exemplars.
- Subqueries: `@ end()` and `@ start()` now work correctly with queries split by time.
- Native histograms: order exemplars before ingestion to improve success rate when ingesting multiple exemplars.
- Native histograms: return HTTP 400 on invalid native histogram samples instead of HTTP 500. The metric `cortex_discarded_samples_total{reason="invalid-native-histogram"}` is now incremented on invalid histogram samples.

### Helm chart improvements

The Grafana Mimir and Grafana Enterprise Metrics Helm charts are released independently.
Refer to the [Grafana Mimir Helm chart documentation](/docs/helm-charts/mimir-distributed/latest/).
Loading