[bitnami/grafana-loki] Enable PodDisruptionBudgets (#26474)

* [bitnami/grafana-loki] Enable PodDisruptionBudgets

Signed-off-by: Fran Mulero <fmulero@vmware.com>

* Update CHANGELOG.md

Signed-off-by: Bitnami Containers <bitnami-bot@vmware.com>

* Amend labels and selectors

Signed-off-by: Fran Mulero <fmulero@vmware.com>

---------

Signed-off-by: Fran Mulero <fmulero@vmware.com>
Signed-off-by: Bitnami Containers <bitnami-bot@vmware.com>
Co-authored-by: Bitnami Containers <bitnami-bot@vmware.com>
This commit is contained in:
Fran Mulero
2024-05-29 10:35:21 +02:00
committed by GitHub
co-authored by Bitnami Containers
parent bc61176fbc
commit c03dcf6a0d
14 changed files with 457 additions and 3 deletions
+6 -2
View File
@@ -1,8 +1,12 @@
# Changelog
## 4.2.1 (2024-05-22)
## 4.3.0 (2024-05-28)
* [bitnami/grafana-loki] Use different liveness/readiness probes ([#26351](https://github.com/bitnami/charts/pull/26351))
* [bitnami/grafana-loki] Enable PodDisruptionBudgets ([#26474](https://github.com/bitnami/charts/pull/26474))
## <small>4.2.1 (2024-05-23)</small>
* [bitnami/grafana-loki] Use different liveness/readiness probes (#26351) ([3dbb011](https://github.com/bitnami/charts/commit/3dbb0111f588082f064a4e8236466924a9b82f80)), closes [#26351](https://github.com/bitnami/charts/issues/26351)
## 4.2.0 (2024-05-21)
+1 -1
View File
@@ -57,4 +57,4 @@ maintainers:
name: grafana-loki
sources:
- https://github.com/bitnami/charts/tree/main/bitnami/grafana-loki
version: 4.2.1
version: 4.3.0
+30
View File
@@ -283,6 +283,9 @@ The [Bitnami grafana-loki](https://github.com/bitnami/containers/tree/main/bitna
| `compactor.extraVolumeMounts` | Optionally specify extra list of additional volumeMounts for the Compactor container(s) | `[]` |
| `compactor.sidecars` | Add additional sidecar containers to the Compactor pod(s) | `[]` |
| `compactor.initContainers` | Add additional init containers to the Compactor pod(s) | `[]` |
| `compactor.pdb.create` | Enable/disable a Pod Disruption Budget creation | `true` |
| `compactor.pdb.minAvailable` | Minimum number/percentage of pods that should remain scheduled | `""` |
| `compactor.pdb.maxUnavailable` | Maximum number/percentage of pods that may be made unavailable. Defaults to `1` if both `compactor.pdb.minAvailable` and `compactor.pdb.maxUnavailable` are empty. | `""` |
| `compactor.persistence.enabled` | Enable persistence in Compactor instances | `true` |
| `compactor.persistence.existingClaim` | Name of an existing PVC to use | `""` |
| `compactor.persistence.storageClass` | PVC Storage Class for Memcached data volume | `""` |
@@ -401,6 +404,9 @@ The [Bitnami grafana-loki](https://github.com/bitnami/containers/tree/main/bitna
| `gateway.extraVolumes` | Optionally specify extra list of additional volumes for the Gateway pod(s) | `[]` |
| `gateway.extraVolumeMounts` | Optionally specify extra list of additional volumeMounts for the Gateway container(s) | `[]` |
| `gateway.sidecars` | Add additional sidecar containers to the Gateway pod(s) | `[]` |
| `gateway.pdb.create` | Enable/disable a Pod Disruption Budget creation | `true` |
| `gateway.pdb.minAvailable` | Minimum number/percentage of pods that should remain scheduled | `""` |
| `gateway.pdb.maxUnavailable` | Maximum number/percentage of pods that may be made unavailable. Defaults to `1` if both `gateway.pdb.minAvailable` and `gateway.pdb.maxUnavailable` are empty. | `""` |
| `gateway.initContainers` | Add additional init containers to the Gateway pod(s) | `[]` |
### Gateway Traffic Exposure Parameters
@@ -514,6 +520,9 @@ The [Bitnami grafana-loki](https://github.com/bitnami/containers/tree/main/bitna
| `indexGateway.extraVolumeMounts` | Optionally specify extra list of additional volumeMounts for the index-gateway container(s) | `[]` |
| `indexGateway.sidecars` | Add additional sidecar containers to the index-gateway pod(s) | `[]` |
| `indexGateway.initContainers` | Add additional init containers to the index-gateway pod(s) | `[]` |
| `indexGateway.pdb.create` | Enable/disable a Pod Disruption Budget creation | `true` |
| `indexGateway.pdb.minAvailable` | Minimum number/percentage of pods that should remain scheduled | `""` |
| `indexGateway.pdb.maxUnavailable` | Maximum number/percentage of pods that may be made unavailable. Defaults to `1` if both `indexGateway.pdb.minAvailable` and `indexGateway.pdb.maxUnavailable` are empty. | `""` |
### index-gateway Persistence Parameters
@@ -625,6 +634,9 @@ The [Bitnami grafana-loki](https://github.com/bitnami/containers/tree/main/bitna
| `distributor.extraVolumeMounts` | Optionally specify extra list of additional volumeMounts for the Distributor container(s) | `[]` |
| `distributor.sidecars` | Add additional sidecar containers to the Distributor pod(s) | `[]` |
| `distributor.initContainers` | Add additional init containers to the Distributor pod(s) | `[]` |
| `distributor.pdb.create` | Enable/disable a Pod Disruption Budget creation | `true` |
| `distributor.pdb.minAvailable` | Minimum number/percentage of pods that should remain scheduled | `""` |
| `distributor.pdb.maxUnavailable` | Maximum number/percentage of pods that may be made unavailable. Defaults to `1` if both `distributor.pdb.minAvailable` and `distributor.pdb.maxUnavailable` are empty. | `""` |
### Distributor Traffic Exposure Parameters
@@ -725,6 +737,9 @@ The [Bitnami grafana-loki](https://github.com/bitnami/containers/tree/main/bitna
| `ingester.extraVolumeMounts` | Optionally specify extra list of additional volumeMounts for the ingester container(s) | `[]` |
| `ingester.sidecars` | Add additional sidecar containers to the Ingester pod(s) | `[]` |
| `ingester.initContainers` | Add additional init containers to the Ingester pod(s) | `[]` |
| `ingester.pdb.create` | Enable/disable a Pod Disruption Budget creation | `true` |
| `ingester.pdb.minAvailable` | Minimum number/percentage of pods that should remain scheduled | `""` |
| `ingester.pdb.maxUnavailable` | Maximum number/percentage of pods that may be made unavailable. Defaults to `1` if both `ingester.pdb.minAvailable` and `ingester.pdb.maxUnavailable` are empty. | `""` |
### Ingester Persistence Parameters
@@ -837,6 +852,9 @@ The [Bitnami grafana-loki](https://github.com/bitnami/containers/tree/main/bitna
| `querier.extraVolumeMounts` | Optionally specify extra list of additional volumeMounts for the querier container(s) | `[]` |
| `querier.sidecars` | Add additional sidecar containers to the Querier pod(s) | `[]` |
| `querier.initContainers` | Add additional init containers to the Querier pod(s) | `[]` |
| `querier.pdb.create` | Enable/disable a Pod Disruption Budget creation | `true` |
| `querier.pdb.minAvailable` | Minimum number/percentage of pods that should remain scheduled | `""` |
| `querier.pdb.maxUnavailable` | Maximum number/percentage of pods that may be made unavailable. Defaults to `1` if both `querier.pdb.minAvailable` and `querier.pdb.maxUnavailable` are empty. | `""` |
### Querier Persistence Parameters
@@ -948,6 +966,9 @@ The [Bitnami grafana-loki](https://github.com/bitnami/containers/tree/main/bitna
| `queryFrontend.extraVolumeMounts` | Optionally specify extra list of additional volumeMounts for the queryFrontend container(s) | `[]` |
| `queryFrontend.sidecars` | Add additional sidecar containers to the queryFrontend pod(s) | `[]` |
| `queryFrontend.initContainers` | Add additional init containers to the queryFrontend pod(s) | `[]` |
| `queryFrontend.pdb.create` | Enable/disable a Pod Disruption Budget creation | `true` |
| `queryFrontend.pdb.minAvailable` | Minimum number/percentage of pods that should remain scheduled | `""` |
| `queryFrontend.pdb.maxUnavailable` | Maximum number/percentage of pods that may be made unavailable. Defaults to `1` if both `queryFrontend.pdb.minAvailable` and `queryFrontend.pdb.maxUnavailable` are empty. | `""` |
### Query Frontend Traffic Exposure Parameters
@@ -1049,6 +1070,9 @@ The [Bitnami grafana-loki](https://github.com/bitnami/containers/tree/main/bitna
| `queryScheduler.extraVolumeMounts` | Optionally specify extra list of additional volumeMounts for the queryScheduler container(s) | `[]` |
| `queryScheduler.sidecars` | Add additional sidecar containers to the queryScheduler pod(s) | `[]` |
| `queryScheduler.initContainers` | Add additional init containers to the queryScheduler pod(s) | `[]` |
| `queryScheduler.pdb.create` | Enable/disable a Pod Disruption Budget creation | `true` |
| `queryScheduler.pdb.minAvailable` | Minimum number/percentage of pods that should remain scheduled | `""` |
| `queryScheduler.pdb.maxUnavailable` | Maximum number/percentage of pods that may be made unavailable. Defaults to `1` if both `queryScheduler.pdb.minAvailable` and `queryScheduler.pdb.maxUnavailable` are empty. | `""` |
### Query Scheduler Traffic Exposure Parameters
@@ -1150,6 +1174,9 @@ The [Bitnami grafana-loki](https://github.com/bitnami/containers/tree/main/bitna
| `ruler.extraVolumeMounts` | Optionally specify extra list of additional volumeMounts for the ruler container(s) | `[]` |
| `ruler.sidecars` | Add additional sidecar containers to the Ruler pod(s) | `[]` |
| `ruler.initContainers` | Add additional init containers to the Ruler pod(s) | `[]` |
| `ruler.pdb.create` | Enable/disable a Pod Disruption Budget creation | `true` |
| `ruler.pdb.minAvailable` | Minimum number/percentage of pods that should remain scheduled | `""` |
| `ruler.pdb.maxUnavailable` | Maximum number/percentage of pods that may be made unavailable. Defaults to `1` if both `ruler.pdb.minAvailable` and `ruler.pdb.maxUnavailable` are empty. | `""` |
### Ruler Persistence Parameters
@@ -1262,6 +1289,9 @@ The [Bitnami grafana-loki](https://github.com/bitnami/containers/tree/main/bitna
| `tableManager.extraVolumeMounts` | Optionally specify extra list of additional volumeMounts for the table-manager container(s) | `[]` |
| `tableManager.sidecars` | Add additional sidecar containers to the table-manager pod(s) | `[]` |
| `tableManager.initContainers` | Add additional init containers to the table-manager pod(s) | `[]` |
| `tableManager.pdb.create` | Enable/disable a Pod Disruption Budget creation | `true` |
| `tableManager.pdb.minAvailable` | Minimum number/percentage of pods that should remain scheduled | `""` |
| `tableManager.pdb.maxUnavailable` | Maximum number/percentage of pods that may be made unavailable. Defaults to `1` if both `tableManager.pdb.minAvailable` and `tableManager.pdb.maxUnavailable` are empty. | `""` |
### table-manager Traffic Exposure Parameters
@@ -0,0 +1,32 @@
{{- /*
Copyright Broadcom, Inc. All Rights Reserved.
SPDX-License-Identifier: APACHE-2.0
*/}}
{{- if and .Values.compactor.enabled .Values.compactor.pdb.create }}
apiVersion: {{ include "common.capabilities.policy.apiVersion" . }}
kind: PodDisruptionBudget
metadata:
name: {{ template "grafana-loki.compactor.fullname" . }}
namespace: {{ include "common.names.namespace" . | quote }}
{{- $versionLabel := dict "app.kubernetes.io/version" ( include "common.images.version" ( dict "imageRoot" .Values.loki.image "chart" .Chart ) ) }}
{{- $labels := include "common.tplvalues.merge" ( dict "values" ( list .Values.commonLabels $versionLabel ) "context" . ) }}
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
app.kubernetes.io/part-of: grafana-loki
app.kubernetes.io/component: compactor
{{- if .Values.commonAnnotations }}
annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }}
{{- end }}
spec:
{{- if .Values.compactor.pdb.minAvailable }}
minAvailable: {{ .Values.compactor.pdb.minAvailable }}
{{- end }}
{{- if or .Values.compactor.pdb.maxUnavailable (not .Values.compactor.pdb.minAvailable) }}
maxUnavailable: {{ .Values.compactor.pdb.maxUnavailable | default 1 }}
{{- end }}
{{- $podLabels := include "common.tplvalues.merge" ( dict "values" ( list .Values.compactor.podLabels .Values.commonLabels $versionLabel ) "context" . ) }}
selector:
matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 6 }}
app.kubernetes.io/part-of: grafana-loki
app.kubernetes.io/component: compactor
{{- end }}
@@ -0,0 +1,32 @@
{{- /*
Copyright Broadcom, Inc. All Rights Reserved.
SPDX-License-Identifier: APACHE-2.0
*/}}
{{- if .Values.distributor.pdb.create }}
apiVersion: {{ include "common.capabilities.policy.apiVersion" . }}
kind: PodDisruptionBudget
metadata:
name: {{ template "grafana-loki.distributor.fullname" . }}
namespace: {{ include "common.names.namespace" . | quote }}
{{- $versionLabel := dict "app.kubernetes.io/version" ( include "common.images.version" ( dict "imageRoot" .Values.loki.image "chart" .Chart ) ) }}
{{- $labels := include "common.tplvalues.merge" ( dict "values" ( list .Values.commonLabels $versionLabel ) "context" . ) }}
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
app.kubernetes.io/part-of: grafana-loki
app.kubernetes.io/component: distributor
{{- if .Values.commonAnnotations }}
annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }}
{{- end }}
spec:
{{- if .Values.distributor.pdb.minAvailable }}
minAvailable: {{ .Values.distributor.pdb.minAvailable }}
{{- end }}
{{- if or .Values.distributor.pdb.maxUnavailable (not .Values.distributor.pdb.minAvailable) }}
maxUnavailable: {{ .Values.distributor.pdb.maxUnavailable | default 1 }}
{{- end }}
{{- $podLabels := include "common.tplvalues.merge" ( dict "values" ( list .Values.distributor.podLabels .Values.commonLabels $versionLabel ) "context" . ) }}
selector:
matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 6 }}
app.kubernetes.io/part-of: grafana-loki
app.kubernetes.io/component: distributor
{{- end }}
@@ -0,0 +1,32 @@
{{- /*
Copyright Broadcom, Inc. All Rights Reserved.
SPDX-License-Identifier: APACHE-2.0
*/}}
{{- if and .Values.gateway.enabled .Values.gateway.pdb.create }}
apiVersion: {{ include "common.capabilities.policy.apiVersion" . }}
kind: PodDisruptionBudget
metadata:
name: {{ include "grafana-loki.gateway.fullname" . }}
namespace: {{ include "common.names.namespace" . | quote }}
{{- $versionLabel := dict "app.kubernetes.io/version" ( include "common.images.version" ( dict "imageRoot" .Values.gateway.image "chart" .Chart ) ) }}
{{- $labels := include "common.tplvalues.merge" ( dict "values" ( list .Values.commonLabels $versionLabel ) "context" . ) }}
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
app.kubernetes.io/part-of: grafana-loki
app.kubernetes.io/component: gateway
{{- if .Values.commonAnnotations }}
annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }}
{{- end }}
spec:
{{- if .Values.gateway.pdb.minAvailable }}
minAvailable: {{ .Values.gateway.pdb.minAvailable }}
{{- end }}
{{- if or .Values.gateway.pdb.maxUnavailable (not .Values.gateway.pdb.minAvailable) }}
maxUnavailable: {{ .Values.gateway.pdb.maxUnavailable | default 1 }}
{{- end }}
{{- $podLabels := include "common.tplvalues.merge" ( dict "values" ( list .Values.gateway.podLabels .Values.commonLabels $versionLabel ) "context" . ) }}
selector:
matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 6 }}
app.kubernetes.io/part-of: grafana-loki
app.kubernetes.io/component: gateway
{{- end }}
@@ -0,0 +1,32 @@
{{- /*
Copyright Broadcom, Inc. All Rights Reserved.
SPDX-License-Identifier: APACHE-2.0
*/}}
{{- if and .Values.indexGateway.enabled .Values.indexGateway.pdb.create }}
apiVersion: {{ include "common.capabilities.policy.apiVersion" . }}
kind: PodDisruptionBudget
metadata:
name: {{ template "grafana-loki.index-gateway.fullname" . }}
namespace: {{ include "common.names.namespace" . | quote }}
{{- $versionLabel := dict "app.kubernetes.io/version" ( include "common.images.version" ( dict "imageRoot" .Values.loki.image "chart" .Chart ) ) }}
{{- $labels := include "common.tplvalues.merge" ( dict "values" ( list .Values.commonLabels $versionLabel ) "context" . ) }}
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
app.kubernetes.io/part-of: grafana-loki
app.kubernetes.io/component: index-gateway
{{- if .Values.commonAnnotations }}
annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }}
{{- end }}
spec:
{{- if .Values.indexGateway.pdb.minAvailable }}
minAvailable: {{ .Values.indexGateway.pdb.minAvailable }}
{{- end }}
{{- if or .Values.indexGateway.pdb.maxUnavailable (not .Values.indexGateway.pdb.minAvailable) }}
maxUnavailable: {{ .Values.indexGateway.pdb.maxUnavailable | default 1 }}
{{- end }}
{{- $podLabels := include "common.tplvalues.merge" ( dict "values" ( list .Values.indexGateway.podLabels .Values.commonLabels ) "context" . ) }}
selector:
matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 6 }}
app.kubernetes.io/part-of: grafana-loki
app.kubernetes.io/component: index-gateway
{{- end }}
@@ -0,0 +1,32 @@
{{- /*
Copyright Broadcom, Inc. All Rights Reserved.
SPDX-License-Identifier: APACHE-2.0
*/}}
{{- if .Values.ingester.pdb.create }}
apiVersion: {{ include "common.capabilities.policy.apiVersion" . }}
kind: PodDisruptionBudget
metadata:
name: {{ template "grafana-loki.ingester.fullname" . }}
namespace: {{ include "common.names.namespace" . | quote }}
{{- $versionLabel := dict "app.kubernetes.io/version" ( include "common.images.version" ( dict "imageRoot" .Values.loki.image "chart" .Chart ) ) }}
{{- $labels := include "common.tplvalues.merge" ( dict "values" ( list .Values.commonLabels $versionLabel ) "context" . ) }}
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
app.kubernetes.io/part-of: grafana-loki
app.kubernetes.io/component: ingester
{{- if .Values.commonAnnotations }}
annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }}
{{- end }}
spec:
{{- if .Values.ingester.pdb.minAvailable }}
minAvailable: {{ .Values.ingester.pdb.minAvailable }}
{{- end }}
{{- if or .Values.ingester.pdb.maxUnavailable (not .Values.ingester.pdb.minAvailable) }}
maxUnavailable: {{ .Values.ingester.pdb.maxUnavailable | default 1 }}
{{- end }}
{{- $podLabels := include "common.tplvalues.merge" ( dict "values" ( list .Values.ingester.podLabels .Values.commonLabels $versionLabel ) "context" . ) }}
selector:
matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 6 }}
app.kubernetes.io/part-of: grafana-loki
app.kubernetes.io/component: ingester
{{- end }}
@@ -0,0 +1,32 @@
{{- /*
Copyright Broadcom, Inc. All Rights Reserved.
SPDX-License-Identifier: APACHE-2.0
*/}}
{{- if .Values.querier.pdb.create }}
apiVersion: {{ include "common.capabilities.policy.apiVersion" . }}
kind: PodDisruptionBudget
metadata:
name: {{ template "grafana-loki.querier.fullname" . }}
namespace: {{ include "common.names.namespace" . | quote }}
{{- $versionLabel := dict "app.kubernetes.io/version" ( include "common.images.version" ( dict "imageRoot" .Values.loki.image "chart" .Chart ) ) }}
{{- $labels := include "common.tplvalues.merge" ( dict "values" ( list .Values.commonLabels $versionLabel ) "context" . ) }}
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
app.kubernetes.io/part-of: grafana-loki
app.kubernetes.io/component: querier
{{- if .Values.commonAnnotations }}
annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }}
{{- end }}
spec:
{{- if .Values.querier.pdb.minAvailable }}
minAvailable: {{ .Values.querier.pdb.minAvailable }}
{{- end }}
{{- if or .Values.querier.pdb.maxUnavailable (not .Values.querier.pdb.minAvailable) }}
maxUnavailable: {{ .Values.querier.pdb.maxUnavailable | default 1 }}
{{- end }}
{{- $podLabels := include "common.tplvalues.merge" (dict "values" (list .Values.querier.podLabels .Values.commonLabels $versionLabel) "context" .) }}
selector:
matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 6 }}
app.kubernetes.io/part-of: grafana-loki
app.kubernetes.io/component: querier
{{- end }}
@@ -0,0 +1,32 @@
{{- /*
Copyright Broadcom, Inc. All Rights Reserved.
SPDX-License-Identifier: APACHE-2.0
*/}}
{{- if .Values.queryFrontend.pdb.create }}
apiVersion: {{ include "common.capabilities.policy.apiVersion" . }}
kind: PodDisruptionBudget
metadata:
name: {{ template "grafana-loki.query-frontend.fullname" . }}
namespace: {{ include "common.names.namespace" . | quote }}
{{- $versionLabel := dict "app.kubernetes.io/version" ( include "common.images.version" ( dict "imageRoot" .Values.loki.image "chart" .Chart ) ) }}
{{- $labels := include "common.tplvalues.merge" ( dict "values" ( list .Values.commonLabels $versionLabel ) "context" . ) }}
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
app.kubernetes.io/part-of: grafana-loki
app.kubernetes.io/component: query-frontend
{{- if .Values.commonAnnotations }}
annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }}
{{- end }}
spec:
{{- if .Values.queryFrontend.pdb.minAvailable }}
minAvailable: {{ .Values.queryFrontend.pdb.minAvailable }}
{{- end }}
{{- if or .Values.queryFrontend.pdb.maxUnavailable (not .Values.queryFrontend.pdb.minAvailable) }}
maxUnavailable: {{ .Values.queryFrontend.pdb.maxUnavailable | default 1 }}
{{- end }}
{{- $podLabels := include "common.tplvalues.merge" (dict "values" (list .Values.queryFrontend.podLabels .Values.commonLabels $versionLabel) "context" .) }}
selector:
matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 6 }}
app.kubernetes.io/part-of: grafana-loki
app.kubernetes.io/component: query-frontend
{{- end }}
@@ -0,0 +1,32 @@
{{- /*
Copyright Broadcom, Inc. All Rights Reserved.
SPDX-License-Identifier: APACHE-2.0
*/}}
{{- if and .Values.queryScheduler.enabled .Values.queryScheduler.pdb.create }}
apiVersion: {{ include "common.capabilities.policy.apiVersion" . }}
kind: PodDisruptionBudget
metadata:
name: {{ template "grafana-loki.query-scheduler.fullname" . }}
namespace: {{ include "common.names.namespace" . | quote }}
{{- $versionLabel := dict "app.kubernetes.io/version" ( include "common.images.version" ( dict "imageRoot" .Values.loki.image "chart" .Chart ) ) }}
{{- $labels := include "common.tplvalues.merge" ( dict "values" ( list .Values.commonLabels $versionLabel ) "context" . ) }}
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
app.kubernetes.io/part-of: grafana-loki
app.kubernetes.io/component: query-scheduler
{{- if .Values.commonAnnotations }}
annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }}
{{- end }}
spec:
{{- if .Values.queryScheduler.pdb.minAvailable }}
minAvailable: {{ .Values.queryScheduler.pdb.minAvailable }}
{{- end }}
{{- if or .Values.queryScheduler.pdb.maxUnavailable (not .Values.queryScheduler.pdb.minAvailable) }}
maxUnavailable: {{ .Values.queryScheduler.pdb.maxUnavailable | default 1 }}
{{- end }}
{{- $podLabels := include "common.tplvalues.merge" (dict "values" (list .Values.queryScheduler.podLabels .Values.commonLabels $versionLabel) "context" .) }}
selector:
matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 6 }}
app.kubernetes.io/part-of: grafana-loki
app.kubernetes.io/component: query-scheduler
{{- end }}
@@ -0,0 +1,32 @@
{{- /*
Copyright Broadcom, Inc. All Rights Reserved.
SPDX-License-Identifier: APACHE-2.0
*/}}
{{- if .Values.ruler.pdb.create }}
apiVersion: {{ include "common.capabilities.policy.apiVersion" . }}
kind: PodDisruptionBudget
metadata:
name: {{ template "grafana-loki.ruler.fullname" . }}
namespace: {{ include "common.names.namespace" . | quote }}
{{- $versionLabel := dict "app.kubernetes.io/version" ( include "common.images.version" ( dict "imageRoot" .Values.loki.image "chart" .Chart ) ) }}
{{- $labels := include "common.tplvalues.merge" ( dict "values" ( list .Values.commonLabels $versionLabel ) "context" . ) }}
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
app.kubernetes.io/part-of: grafana-loki
app.kubernetes.io/component: ruler
{{- if .Values.commonAnnotations }}
annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }}
{{- end }}
spec:
{{- if .Values.ruler.pdb.minAvailable }}
minAvailable: {{ .Values.ruler.pdb.minAvailable }}
{{- end }}
{{- if or .Values.ruler.pdb.maxUnavailable (not .Values.ruler.pdb.minAvailable) }}
maxUnavailable: {{ .Values.ruler.pdb.maxUnavailable | default 1 }}
{{- end }}
{{- $podLabels := include "common.tplvalues.merge" (dict "values" (list .Values.ruler.podLabels .Values.commonLabels $versionLabel) "context" .) }}
selector:
matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 6 }}
app.kubernetes.io/part-of: grafana-loki
app.kubernetes.io/component: ruler
{{- end }}
@@ -0,0 +1,32 @@
{{- /*
Copyright Broadcom, Inc. All Rights Reserved.
SPDX-License-Identifier: APACHE-2.0
*/}}
{{- if and .Values.tableManager.enabled .Values.tableManager.pdb.create }}
apiVersion: {{ include "common.capabilities.policy.apiVersion" . }}
kind: PodDisruptionBudget
metadata:
name: {{ template "grafana-loki.table-manager.fullname" . }}
namespace: {{ include "common.names.namespace" . | quote }}
{{- $versionLabel := dict "app.kubernetes.io/version" ( include "common.images.version" ( dict "imageRoot" .Values.loki.image "chart" .Chart ) ) }}
{{- $labels := include "common.tplvalues.merge" ( dict "values" ( list .Values.commonLabels $versionLabel ) "context" . ) }}
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
app.kubernetes.io/part-of: grafana-loki
app.kubernetes.io/component: table-manager
{{- if .Values.commonAnnotations }}
annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }}
{{- end }}
spec:
{{- if .Values.tableManager.pdb.minAvailable }}
minAvailable: {{ .Values.tableManager.pdb.minAvailable }}
{{- end }}
{{- if or .Values.tableManager.pdb.maxUnavailable (not .Values.tableManager.pdb.minAvailable) }}
maxUnavailable: {{ .Values.tableManager.pdb.maxUnavailable | default 1 }}
{{- end }}
{{- $podLabels := include "common.tplvalues.merge" (dict "values" (list .Values.tableManager.podLabels .Values.commonLabels $versionLabel) "context" .) }}
selector:
matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 6 }}
app.kubernetes.io/part-of: grafana-loki
app.kubernetes.io/component: table-manager
{{- end }}
+100
View File
@@ -543,6 +543,16 @@ compactor:
## command: ['sh', '-c', 'echo "hello world"']
##
initContainers: []
## Pod Disruption Budget configuration
## ref: https://kubernetes.io/docs/tasks/run-application/configure-pdb
## @param compactor.pdb.create Enable/disable a Pod Disruption Budget creation
## @param compactor.pdb.minAvailable Minimum number/percentage of pods that should remain scheduled
## @param compactor.pdb.maxUnavailable Maximum number/percentage of pods that may be made unavailable. Defaults to `1` if both `compactor.pdb.minAvailable` and `compactor.pdb.maxUnavailable` are empty.
##
pdb:
create: true
minAvailable: ""
maxUnavailable: ""
## Enable persistence using Persistent Volume Claims
## ref: https://kubernetes.io/docs/concepts/storage/persistent-volumes/
##
@@ -982,6 +992,16 @@ gateway:
## containerPort: 1234
##
sidecars: []
## Pod Disruption Budget configuration
## ref: https://kubernetes.io/docs/tasks/run-application/configure-pdb
## @param gateway.pdb.create Enable/disable a Pod Disruption Budget creation
## @param gateway.pdb.minAvailable Minimum number/percentage of pods that should remain scheduled
## @param gateway.pdb.maxUnavailable Maximum number/percentage of pods that may be made unavailable. Defaults to `1` if both `gateway.pdb.minAvailable` and `gateway.pdb.maxUnavailable` are empty.
##
pdb:
create: true
minAvailable: ""
maxUnavailable: ""
## @param gateway.initContainers Add additional init containers to the Gateway pod(s)
## ref: https://kubernetes.io/docs/concepts/workloads/pods/init-containers/
## e.g:
@@ -1451,6 +1471,16 @@ indexGateway:
## command: ['sh', '-c', 'echo "hello world"']
##
initContainers: []
## Pod Disruption Budget configuration
## ref: https://kubernetes.io/docs/tasks/run-application/configure-pdb
## @param indexGateway.pdb.create Enable/disable a Pod Disruption Budget creation
## @param indexGateway.pdb.minAvailable Minimum number/percentage of pods that should remain scheduled
## @param indexGateway.pdb.maxUnavailable Maximum number/percentage of pods that may be made unavailable. Defaults to `1` if both `indexGateway.pdb.minAvailable` and `indexGateway.pdb.maxUnavailable` are empty.
##
pdb:
create: true
minAvailable: ""
maxUnavailable: ""
## @section index-gateway Persistence Parameters
##
@@ -1853,6 +1883,16 @@ distributor:
## command: ['sh', '-c', 'echo "hello world"']
##
initContainers: []
## Pod Disruption Budget configuration
## ref: https://kubernetes.io/docs/tasks/run-application/configure-pdb
## @param distributor.pdb.create Enable/disable a Pod Disruption Budget creation
## @param distributor.pdb.minAvailable Minimum number/percentage of pods that should remain scheduled
## @param distributor.pdb.maxUnavailable Maximum number/percentage of pods that may be made unavailable. Defaults to `1` if both `distributor.pdb.minAvailable` and `distributor.pdb.maxUnavailable` are empty.
##
pdb:
create: true
minAvailable: ""
maxUnavailable: ""
## @section Distributor Traffic Exposure Parameters
##
@@ -2220,6 +2260,16 @@ ingester:
## command: ['sh', '-c', 'echo "hello world"']
##
initContainers: []
## Pod Disruption Budget configuration
## ref: https://kubernetes.io/docs/tasks/run-application/configure-pdb
## @param ingester.pdb.create Enable/disable a Pod Disruption Budget creation
## @param ingester.pdb.minAvailable Minimum number/percentage of pods that should remain scheduled
## @param ingester.pdb.maxUnavailable Maximum number/percentage of pods that may be made unavailable. Defaults to `1` if both `ingester.pdb.minAvailable` and `ingester.pdb.maxUnavailable` are empty.
##
pdb:
create: true
minAvailable: ""
maxUnavailable: ""
## @section Ingester Persistence Parameters
##
@@ -2626,6 +2676,16 @@ querier:
## command: ['sh', '-c', 'echo "hello world"']
##
initContainers: []
## Pod Disruption Budget configuration
## ref: https://kubernetes.io/docs/tasks/run-application/configure-pdb
## @param querier.pdb.create Enable/disable a Pod Disruption Budget creation
## @param querier.pdb.minAvailable Minimum number/percentage of pods that should remain scheduled
## @param querier.pdb.maxUnavailable Maximum number/percentage of pods that may be made unavailable. Defaults to `1` if both `querier.pdb.minAvailable` and `querier.pdb.maxUnavailable` are empty.
##
pdb:
create: true
minAvailable: ""
maxUnavailable: ""
## @section Querier Persistence Parameters
##
@@ -3028,6 +3088,16 @@ queryFrontend:
## command: ['sh', '-c', 'echo "hello world"']
##
initContainers: []
## Pod Disruption Budget configuration
## ref: https://kubernetes.io/docs/tasks/run-application/configure-pdb
## @param queryFrontend.pdb.create Enable/disable a Pod Disruption Budget creation
## @param queryFrontend.pdb.minAvailable Minimum number/percentage of pods that should remain scheduled
## @param queryFrontend.pdb.maxUnavailable Maximum number/percentage of pods that may be made unavailable. Defaults to `1` if both `queryFrontend.pdb.minAvailable` and `queryFrontend.pdb.maxUnavailable` are empty.
##
pdb:
create: true
minAvailable: ""
maxUnavailable: ""
## @section Query Frontend Traffic Exposure Parameters
##
@@ -3400,6 +3470,16 @@ queryScheduler:
## command: ['sh', '-c', 'echo "hello world"']
##
initContainers: []
## Pod Disruption Budget configuration
## ref: https://kubernetes.io/docs/tasks/run-application/configure-pdb
## @param queryScheduler.pdb.create Enable/disable a Pod Disruption Budget creation
## @param queryScheduler.pdb.minAvailable Minimum number/percentage of pods that should remain scheduled
## @param queryScheduler.pdb.maxUnavailable Maximum number/percentage of pods that may be made unavailable. Defaults to `1` if both `queryScheduler.pdb.minAvailable` and `queryScheduler.pdb.maxUnavailable` are empty.
##
pdb:
create: true
minAvailable: ""
maxUnavailable: ""
## @section Query Scheduler Traffic Exposure Parameters
##
@@ -3770,6 +3850,16 @@ ruler:
## command: ['sh', '-c', 'echo "hello world"']
##
initContainers: []
## Pod Disruption Budget configuration
## ref: https://kubernetes.io/docs/tasks/run-application/configure-pdb
## @param ruler.pdb.create Enable/disable a Pod Disruption Budget creation
## @param ruler.pdb.minAvailable Minimum number/percentage of pods that should remain scheduled
## @param ruler.pdb.maxUnavailable Maximum number/percentage of pods that may be made unavailable. Defaults to `1` if both `ruler.pdb.minAvailable` and `ruler.pdb.maxUnavailable` are empty.
##
pdb:
create: true
minAvailable: ""
maxUnavailable: ""
## @section Ruler Persistence Parameters
##
@@ -4175,6 +4265,16 @@ tableManager:
## command: ['sh', '-c', 'echo "hello world"']
##
initContainers: []
## Pod Disruption Budget configuration
## ref: https://kubernetes.io/docs/tasks/run-application/configure-pdb
## @param tableManager.pdb.create Enable/disable a Pod Disruption Budget creation
## @param tableManager.pdb.minAvailable Minimum number/percentage of pods that should remain scheduled
## @param tableManager.pdb.maxUnavailable Maximum number/percentage of pods that may be made unavailable. Defaults to `1` if both `tableManager.pdb.minAvailable` and `tableManager.pdb.maxUnavailable` are empty.
##
pdb:
create: true
minAvailable: ""
maxUnavailable: ""
## @section table-manager Traffic Exposure Parameters
##