From db7b387af130cebdc3bac4931c27ecf9f2408231 Mon Sep 17 00:00:00 2001 From: Stefan Andres Date: Tue, 26 Sep 2023 11:10:26 +0200 Subject: [PATCH] Make deployment updateStrategy variable. There are scenarios where the pod can get scraped twice by the ServiceMonitor. This will leave duplicate series in prometheus that may lead to many-to-many queries causing broken grafana dashboards. With this change updateStrategy can be changed to Recreate for those cases. --- charts/opencost/Chart.yaml | 2 +- charts/opencost/templates/deployment.yaml | 6 +----- charts/opencost/values.yaml | 6 ++++++ 3 files changed, 8 insertions(+), 6 deletions(-) diff --git a/charts/opencost/Chart.yaml b/charts/opencost/Chart.yaml index 1b3adaf..4f3cfc4 100755 --- a/charts/opencost/Chart.yaml +++ b/charts/opencost/Chart.yaml @@ -9,7 +9,7 @@ keywords: - kubecost - opencost - monitoring -version: 1.20.3 +version: 1.21.0 maintainers: - name: mattray url: https://mattray.dev diff --git a/charts/opencost/templates/deployment.yaml b/charts/opencost/templates/deployment.yaml index 807bce3..25a45e0 100644 --- a/charts/opencost/templates/deployment.yaml +++ b/charts/opencost/templates/deployment.yaml @@ -11,11 +11,7 @@ spec: replicas: {{ .Values.opencost.exporter.replicas }} selector: matchLabels: {{- include "opencost.selectorLabels" . | nindent 6 }} - strategy: - rollingUpdate: - maxSurge: 1 - maxUnavailable: 1 - type: RollingUpdate + strategy: {{ toYaml .Values.updateStrategy | nindent 4 }} template: metadata: labels: diff --git a/charts/opencost/values.yaml b/charts/opencost/values.yaml index dcb33b5..1a104e7 100644 --- a/charts/opencost/values.yaml +++ b/charts/opencost/values.yaml @@ -18,6 +18,12 @@ serviceAccount: # -- Whether pods running as this service account should have an API token automatically mounted automountServiceAccountToken: true +# -- Strategy to be used for the Deployment +updateStrategy: + rollingUpdate: + maxSurge: 1 + maxUnavailable: 1 + type: RollingUpdate # -- Annotations to add to the all the resources annotations: {} # -- Annotations to add to the OpenCost Pod