-
Notifications
You must be signed in to change notification settings - Fork 3.5k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
chore: [release-3.0.x] feat!: update helm chart to support distribute…
…d mode and 3.0 (#12524) Co-authored-by: Ed Welch <[email protected]>
- Loading branch information
1 parent
1aa6f47
commit efb8541
Showing
111 changed files
with
16,062 additions
and
2,516 deletions.
There are no files selected for viewing
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,89 @@ | ||
--- | ||
title: Upgrade the Helm chart to 6.0 | ||
menuTitle: Upgrade the Helm chart to 6.0 | ||
description: Upgrade the Helm chart from 5.x to 6.0. | ||
weight: 800 | ||
keywords: | ||
- upgrade | ||
--- | ||
|
||
## Upgrading to v6.x | ||
|
||
v6.x of this chart introduces distributed mode but also introduces breaking changes from v5x. | ||
|
||
### Changes | ||
|
||
#### BREAKING: `deploymentMode` setting | ||
|
||
This only breaks you if you are running the chart in Single Binary mode, you will need to set | ||
|
||
``` | ||
deploymentMode: SingleBinary | ||
``` | ||
|
||
#### BREAKING: `lokiCanary` section was moved | ||
|
||
This section was moved from within the `monitoring` section to the root level of the values file. | ||
|
||
#### BREAKING: `topologySpreadConstraints` and `podAffinity` converted to objects | ||
|
||
Previously they were strings which were passed through `tpl` now they are normal objects which will be added to deployments. | ||
|
||
Also we removed the soft constraint on zone. | ||
|
||
#### BREAKING: `externalConfigSecretName` was removed and replaced. | ||
|
||
Instead you can now provide `configObjectName` which is used by Loki components for loading the config. | ||
|
||
`generatedConfigObjectName` also can be used to control the name of the config object created by the chart. | ||
|
||
This gives greater flexibility in using the chart to still generate a config object but allowing for another process to load and mutate this config into a new object which can be loaded by Loki and `configObjectName` | ||
|
||
#### Monitoring | ||
|
||
After some consideration of how this chart works with other charts provided by Grafana, we decided to deprecate the monitoring sections of this chart and take a new approach entirely to monitoring Loki, Mimir and Tempo with the [Meta Monitoring Chart](https://github.com/grafana/meta-monitoring-chart). | ||
|
||
Reasons: | ||
* There were conflicts with this chart and the Mimir chart both installing the Agent Operator. | ||
* The Agent Operator is deprecated. | ||
* The dependency on the Prometheus operator is not one we are able to support well. | ||
|
||
The [Meta Monitoring Chart](https://github.com/grafana/meta-monitoring-chart) is an improvement over the the previous approach because it allows for installing a clustered Grafana Agent which can send metrics, logs, and traces to Grafana Cloud, or letting you install a monitoring-only local installation of Loki, Mimir, Tempo, and Grafana. | ||
|
||
The monitoring sections of this chart still exist but are disabled by default. | ||
|
||
If you wish to continue using the self monitoring features you should use the following configuration, but please do note a future version of this chart will remove this capability completely: | ||
|
||
``` | ||
monitoring: | ||
enabled: true | ||
selfMonitoring: | ||
enabled: true | ||
grafanaAgent: | ||
installOperator: true | ||
``` | ||
|
||
#### Memcached is included and enabled by default | ||
|
||
Caching is crucial to the proper operation of Loki and Memcached is now included in this chart and enabled by default for the `chunksCache` and `resultsCache`. | ||
|
||
If you are already running Memcached separately you can remove your existing installation and use the Memcached deployments built into this chart. | ||
|
||
##### Single Binary | ||
|
||
Memcached also deploys for the Single Binary, but this may not be desired in resource constrained environments. | ||
|
||
You can disable it with the following configuration: | ||
|
||
``` | ||
chunksCache: | ||
enabled: false | ||
resultsCache: | ||
enabled: false | ||
``` | ||
|
||
With these caches disabled, Loki will return to defaults which enables an in-memory results and chunks cache, so you will still get some caching. | ||
|
||
#### Distributed mode | ||
|
||
This chart introduces the ability to run Loki in distributed, or [microservices mode](https://grafana.com/docs/loki/latest/get-started/deployment-modes/#microservices-mode). Separate instructions on how to enable this as well as how to migrate from the existing community chart will be coming shortly. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
--- | ||
loki: | ||
commonConfig: | ||
replication_factor: 1 | ||
useTestSchema: true | ||
deploymentMode: SingleBinary | ||
singleBinary: | ||
replicas: 1 | ||
read: | ||
replicas: 0 | ||
write: | ||
replicas: 0 | ||
backend: | ||
replicas: 0 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,32 @@ | ||
--- | ||
loki: | ||
commonConfig: | ||
replication_factor: 1 | ||
useTestSchema: true | ||
deploymentMode: Distributed | ||
backend: | ||
replicas: 0 | ||
read: | ||
replicas: 0 | ||
write: | ||
replicas: 0 | ||
ingester: | ||
replicas: 3 # Kind seems to be a single node for testing so the anti-affinity rules fail here with zone awareness | ||
querier: | ||
replicas: 1 | ||
queryFrontend: | ||
replicas: 1 | ||
queryScheduler: | ||
replicas: 1 | ||
distributor: | ||
replicas: 1 | ||
compactor: | ||
replicas: 1 | ||
indexGateway: | ||
replicas: 1 | ||
bloomCompactor: | ||
replicas: 0 | ||
bloomGateway: | ||
replicas: 0 | ||
minio: | ||
enabled: true |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,22 @@ | ||
--- | ||
loki: | ||
commonConfig: | ||
replication_factor: 1 | ||
useTestSchema: true | ||
read: | ||
replicas: 1 | ||
write: | ||
replicas: 1 | ||
backend: | ||
replicas: 1 | ||
monitoring: | ||
enabled: true | ||
selfMonitoring: | ||
enabled: true | ||
grafanaAgent: | ||
installOperator: true | ||
serviceMonitor: | ||
labels: | ||
release: "prometheus" | ||
test: | ||
prometheusAddress: "http://prometheus-kube-prometheus-prometheus.prometheus.svc.cluster.local.:9090" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,70 @@ | ||
--- | ||
loki: | ||
schemaConfig: | ||
configs: | ||
- from: 2024-04-01 | ||
store: tsdb | ||
object_store: s3 | ||
schema: v13 | ||
index: | ||
prefix: loki_index_ | ||
period: 24h | ||
ingester: | ||
chunk_encoding: snappy | ||
tracing: | ||
enabled: true | ||
querier: | ||
# Default is 4, if you have enough memory and CPU you can increase, reduce if OOMing | ||
max_concurrent: 4 | ||
|
||
#gateway: | ||
# ingress: | ||
# enabled: true | ||
# hosts: | ||
# - host: FIXME | ||
# paths: | ||
# - path: / | ||
# pathType: Prefix | ||
|
||
deploymentMode: Distributed | ||
|
||
ingester: | ||
replicas: 3 | ||
querier: | ||
replicas: 3 | ||
maxUnavailable: 2 | ||
queryFrontend: | ||
replicas: 2 | ||
maxUnavailable: 1 | ||
queryScheduler: | ||
replicas: 2 | ||
distributor: | ||
replicas: 3 | ||
maxUnavailable: 2 | ||
compactor: | ||
replicas: 1 | ||
indexGateway: | ||
replicas: 2 | ||
maxUnavailable: 1 | ||
|
||
bloomCompactor: | ||
replicas: 0 | ||
bloomGateway: | ||
replicas: 0 | ||
|
||
# Enable minio for storage | ||
minio: | ||
enabled: true | ||
|
||
# Zero out replica counts of other deployment modes | ||
backend: | ||
replicas: 0 | ||
read: | ||
replicas: 0 | ||
write: | ||
replicas: 0 | ||
|
||
singleBinary: | ||
replicas: 0 | ||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,63 @@ | ||
--- | ||
loki: | ||
schemaConfig: | ||
configs: | ||
- from: 2024-04-01 | ||
store: tsdb | ||
object_store: s3 | ||
schema: v13 | ||
index: | ||
prefix: loki_index_ | ||
period: 24h | ||
ingester: | ||
chunk_encoding: snappy | ||
tracing: | ||
enabled: true | ||
querier: | ||
# Default is 4, if you have enough memory and CPU you can increase, reduce if OOMing | ||
max_concurrent: 4 | ||
|
||
#gateway: | ||
# ingress: | ||
# enabled: true | ||
# hosts: | ||
# - host: FIXME | ||
# paths: | ||
# - path: / | ||
# pathType: Prefix | ||
|
||
deploymentMode: SimpleScalable | ||
|
||
backend: | ||
replicas: 3 | ||
read: | ||
replicas: 3 | ||
write: | ||
replicas: 3 | ||
|
||
# Enable minio for storage | ||
minio: | ||
enabled: true | ||
|
||
# Zero out replica counts of other deployment modes | ||
singleBinary: | ||
replicas: 0 | ||
|
||
ingester: | ||
replicas: 0 | ||
querier: | ||
replicas: 0 | ||
queryFrontend: | ||
replicas: 0 | ||
queryScheduler: | ||
replicas: 0 | ||
distributor: | ||
replicas: 0 | ||
compactor: | ||
replicas: 0 | ||
indexGateway: | ||
replicas: 0 | ||
bloomCompactor: | ||
replicas: 0 | ||
bloomGateway: | ||
replicas: 0 |
Oops, something went wrong.