diff --git a/k8s/monitoring/values-production.yaml b/k8s/monitoring/values-production.yaml index bb03cd3..43c5821 100644 --- a/k8s/monitoring/values-production.yaml +++ b/k8s/monitoring/values-production.yaml @@ -87,33 +87,33 @@ kube-prometheus-stack: additionalScrapeConfigs: - job_name: 'node-exporter' kubernetes_sd_configs: - - role: pod + - role: endpoints relabel_configs: - # 1. Filter: Precisely target the node-exporter pods in the monitoring namespace. - - source_labels: [__meta_kubernetes_namespace, __meta_kubernetes_pod_name] + # 1. Filter: Target node-exporter services in the monitoring namespace. + - source_labels: [__meta_kubernetes_namespace, __meta_kubernetes_service_name] separator: '/' - regex: 'monitoring/monitoring-prometheus-node-exporter-.*' + regex: 'monitoring/.*node-exporter.*' action: keep # 2. Filter: Ensure we are targeting the standard port (usually 9100) - - source_labels: [__meta_kubernetes_pod_container_port_number] - regex: '9100' + - source_labels: [__address__] + regex: '.*:9100$' action: keep # 3. Pull node labels (workload) - - source_labels: [__meta_kubernetes_pod_node_label_workload] + - source_labels: [__meta_kubernetes_node_label_workload] target_label: workload action: replace # 4. Set instance and node labels correctly - - source_labels: [__meta_kubernetes_pod_node_name] + - source_labels: [__meta_kubernetes_endpoint_node_name] target_label: instance action: replace - - source_labels: [__meta_kubernetes_pod_node_name] + - source_labels: [__meta_kubernetes_endpoint_node_name] target_label: node action: replace - - source_labels: [__meta_kubernetes_pod_ip] + - source_labels: [__address__] target_label: ip_address action: replace diff --git a/k8s/monitoring/values-staging.yaml b/k8s/monitoring/values-staging.yaml index 1eb8cbd..216e7da 100644 --- a/k8s/monitoring/values-staging.yaml +++ b/k8s/monitoring/values-staging.yaml @@ -87,33 +87,33 @@ kube-prometheus-stack: additionalScrapeConfigs: - job_name: 'node-exporter' kubernetes_sd_configs: - - role: pod + - role: endpoints relabel_configs: - # 1. Filter: Precisely target the node-exporter pods in the monitoring namespace. - - source_labels: [__meta_kubernetes_namespace, __meta_kubernetes_pod_name] + # 1. Filter: Target node-exporter services in the monitoring namespace. + - source_labels: [__meta_kubernetes_namespace, __meta_kubernetes_service_name] separator: '/' - regex: 'monitoring/monitoring-prometheus-node-exporter-.*' + regex: 'monitoring/.*node-exporter.*' action: keep # 2. Filter: Ensure we are targeting the standard port (usually 9100) - - source_labels: [__meta_kubernetes_pod_container_port_number] - regex: '9100' + - source_labels: [__address__] + regex: '.*:9100$' action: keep # 3. Pull node labels (workload) - - source_labels: [__meta_kubernetes_pod_node_label_workload] + - source_labels: [__meta_kubernetes_node_label_workload] target_label: workload action: replace # 4. Set instance and node labels correctly - - source_labels: [__meta_kubernetes_pod_node_name] + - source_labels: [__meta_kubernetes_endpoint_node_name] target_label: instance action: replace - - source_labels: [__meta_kubernetes_pod_node_name] + - source_labels: [__meta_kubernetes_endpoint_node_name] target_label: node action: replace - - source_labels: [__meta_kubernetes_pod_ip] + - source_labels: [__address__] target_label: ip_address action: replace