From f78b826aa126e5bac4ff10b318cf7452daffdbaf Mon Sep 17 00:00:00 2001 From: David Fernandez Date: Fri, 17 Apr 2026 14:42:37 -0300 Subject: [PATCH 1/2] fix(base): ensure metrics-extractor lease exists before log-controller starts Add init container to nullplatform-log-controller DaemonSet that creates the nullplatform-metrics-extractor Lease if it does not exist. This fixes startup failures on new EKS clusters where deploy tooling excludes coordination.k8s.io/Lease resources from sync. Co-Authored-By: Claude Sonnet 4.6 --- charts/base/templates/daemonset.yaml | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/charts/base/templates/daemonset.yaml b/charts/base/templates/daemonset.yaml index 5d898d3..0fe1dbf 100644 --- a/charts/base/templates/daemonset.yaml +++ b/charts/base/templates/daemonset.yaml @@ -29,6 +29,22 @@ spec: tolerations: {{- toYaml .Values.logging.tolerations | nindent 8 }} {{- end }} + initContainers: + - name: ensure-lease + image: bitnami/kubectl:1.31 + command: + - /bin/sh + - -c + - | + kubectl apply -f - <<'EOF' + apiVersion: coordination.k8s.io/v1 + kind: Lease + metadata: + name: nullplatform-metrics-extractor + namespace: {{ .Values.namespaces.nullplatformTools }} + spec: + holderIdentity: "" + EOF containers: - name: nullplatform-log-controller image: {{ .Values.logging.controller.image }} From ab8f4de059f1c1c933123023d92c8ae2a4ef32fd Mon Sep 17 00:00:00 2001 From: David Fernandez Date: Mon, 20 Apr 2026 12:05:16 -0300 Subject: [PATCH 2/2] fix(base): make ensure-lease init container optional via logging.ensureLease Default is false to avoid breaking existing clusters that don't need it. Co-Authored-By: Claude Sonnet 4.6 --- charts/base/templates/daemonset.yaml | 2 ++ charts/base/values.yaml | 1 + 2 files changed, 3 insertions(+) diff --git a/charts/base/templates/daemonset.yaml b/charts/base/templates/daemonset.yaml index 0fe1dbf..9d28477 100644 --- a/charts/base/templates/daemonset.yaml +++ b/charts/base/templates/daemonset.yaml @@ -29,6 +29,7 @@ spec: tolerations: {{- toYaml .Values.logging.tolerations | nindent 8 }} {{- end }} + {{- if .Values.logging.ensureLease }} initContainers: - name: ensure-lease image: bitnami/kubectl:1.31 @@ -45,6 +46,7 @@ spec: spec: holderIdentity: "" EOF + {{- end }} containers: - name: nullplatform-log-controller image: {{ .Values.logging.controller.image }} diff --git a/charts/base/values.yaml b/charts/base/values.yaml index a264f37..df079fe 100644 --- a/charts/base/values.yaml +++ b/charts/base/values.yaml @@ -149,6 +149,7 @@ logging: # operator: "Exists" # effect: "NoSchedule" tolerations: [] + ensureLease: false streams: enabled: false mountPath: "/etc/null-logs/streams-dd.conf"