From d8bb3527de35b300beec8cf7f2cde2deb9ca6936 Mon Sep 17 00:00:00 2001 From: Andrei Kvapil Date: Mon, 23 Feb 2026 16:15:36 +0100 Subject: [PATCH] fix(monitoring-agents): revert _cluster FQDN and use cluster-domain in tenant HelmRelease PR #2075 added _cluster.cluster-domain references to monitoring-agents values.yaml for FQDN resolution. This broke fluent-bit because it is a subchart where _cluster values are not accessible (only global values are shared with subcharts), causing "index of untyped nil". Revert values.yaml to short DNS names (.svc) for the management cluster where they resolve locally, and add FQDN with cluster-domain suffix in the tenant kubernetes HelmRelease where _cluster values are available and cross-cluster DNS resolution is needed. Closes #2084 Co-Authored-By: Claude Signed-off-by: Andrei Kvapil --- .../templates/helmreleases/monitoring-agents.yaml | 5 +++-- packages/system/monitoring-agents/values.yaml | 10 +++++----- 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/packages/apps/kubernetes/templates/helmreleases/monitoring-agents.yaml b/packages/apps/kubernetes/templates/helmreleases/monitoring-agents.yaml index ff54b6e2..602f7efb 100644 --- a/packages/apps/kubernetes/templates/helmreleases/monitoring-agents.yaml +++ b/packages/apps/kubernetes/templates/helmreleases/monitoring-agents.yaml @@ -1,4 +1,5 @@ {{- $targetTenant := .Values._namespace.monitoring }} +{{- $clusterDomain := (index .Values._cluster "cluster-domain") | default "cozy.local" }} {{- if .Values.addons.monitoringAgents.enabled }} apiVersion: helm.toolkit.fluxcd.io/v2 kind: HelmRelease @@ -49,7 +50,7 @@ spec: cluster: {{ .Release.Name }} tenant: {{ .Release.Namespace }} remoteWrite: - url: http://vminsert-shortterm.{{ $targetTenant }}.svc:8480/insert/0/prometheus + url: http://vminsert-shortterm.{{ $targetTenant }}.svc.{{ $clusterDomain }}:8480/insert/0/prometheus fluent-bit: readinessProbe: httpGet: @@ -72,7 +73,7 @@ spec: [OUTPUT] Name http Match kube.* - Host vlogs-generic.{{ $targetTenant }}.svc + Host vlogs-generic.{{ $targetTenant }}.svc.{{ $clusterDomain }} port 9428 compress gzip uri /insert/jsonline?_stream_fields=stream,kubernetes_pod_name,kubernetes_container_name,kubernetes_namespace_name&_msg_field=log&_time_field=date diff --git a/packages/system/monitoring-agents/values.yaml b/packages/system/monitoring-agents/values.yaml index 2b208424..a4d4b025 100644 --- a/packages/system/monitoring-agents/values.yaml +++ b/packages/system/monitoring-agents/values.yaml @@ -280,8 +280,8 @@ vmagent: cluster: cozystack remoteWrite: urls: - - http://vminsert-shortterm.{{ .Values.global.target }}.svc.{{ (index .Values._cluster "cluster-domain") | default "cluster.local" }}:8480/insert/0/prometheus - - http://vminsert-longterm.{{ .Values.global.target }}.svc.{{ (index .Values._cluster "cluster-domain") | default "cluster.local" }}:8480/insert/0/prometheus + - http://vminsert-shortterm.{{ .Values.global.target }}.svc:8480/insert/0/prometheus + - http://vminsert-longterm.{{ .Values.global.target }}.svc:8480/insert/0/prometheus extraArgs: {} fluent-bit: @@ -344,7 +344,7 @@ fluent-bit: [OUTPUT] Name http Match kube.* - Host vlogs-generic.{{ .Values.global.target }}.svc.{{ (index .Values._cluster "cluster-domain") | default "cluster.local" }} + Host vlogs-generic.{{ .Values.global.target }}.svc port 9428 compress gzip uri /insert/jsonline?_stream_fields=log_source,stream,kubernetes_pod_name,kubernetes_container_name,kubernetes_namespace_name&_msg_field=log&_time_field=date @@ -355,7 +355,7 @@ fluent-bit: [OUTPUT] Name http Match events.* - Host vlogs-generic.{{ .Values.global.target }}.svc.{{ (index .Values._cluster "cluster-domain") | default "cluster.local" }} + Host vlogs-generic.{{ .Values.global.target }}.svc port 9428 compress gzip uri /insert/jsonline?_stream_fields=log_source,reason,meatdata_namespace,metadata_name&_msg_field=message&_time_field=date @@ -366,7 +366,7 @@ fluent-bit: [OUTPUT] Name http Match audit.* - Host vlogs-generic.{{ .Values.global.target }}.svc.{{ (index .Values._cluster "cluster-domain") | default "cluster.local" }} + Host vlogs-generic.{{ .Values.global.target }}.svc port 9428 compress gzip uri /insert/jsonline?_stream_fields=log_source,stage,user_username,verb,requestUri&_msg_field=requestURI&_time_field=date