diff --git a/services/monitoring/deploy/alloy/alloy-loki-examples copy.config b/services/monitoring/deploy/alloy/alloy-loki-examples copy.config index 1007fba..85bb1f6 100644 --- a/services/monitoring/deploy/alloy/alloy-loki-examples copy.config +++ b/services/monitoring/deploy/alloy/alloy-loki-examples copy.config @@ -138,4 +138,7 @@ } } - } \ No newline at end of file + } + + + diff --git a/services/monitoring/deploy/alloy/alloy-prometheus-examples.config b/services/monitoring/deploy/alloy/alloy-prometheus-examples.config index 00e32ce..03baa9e 100644 --- a/services/monitoring/deploy/alloy/alloy-prometheus-examples.config +++ b/services/monitoring/deploy/alloy/alloy-prometheus-examples.config @@ -80,4 +80,6 @@ // metrics_path = "/metrics" // // forward_to = [prometheus.remote_write.prometheus_srv.receiver] - // } \ No newline at end of file + // } + + diff --git a/services/monitoring/deploy/alloy/kube-scraper/helm-values.yaml b/services/monitoring/deploy/alloy/kube-scraper/helm-values.yaml index 499c1a3..c4cd162 100644 --- a/services/monitoring/deploy/alloy/kube-scraper/helm-values.yaml +++ b/services/monitoring/deploy/alloy/kube-scraper/helm-values.yaml @@ -27,15 +27,9 @@ alloy: role = "pod" } - // ============================================ - // Discovery: Kubernetes - pods - // used by: - // - loki kubernetes pod logs - // ============================================ - // ============================================ - // Discovery: Kubernetes - pods + // Discovery: Kubernetes - service // used by: // - loki kubernetes kube state metrics // ============================================ @@ -172,10 +166,55 @@ alloy: } + // =============================================================================== + // prometheus / Metrics - Node exporter + // Requirements: + // - discovery.relabel - node_exporter + // =============================================================================== + prometheus.scrape "node_exporter" { + job_name = "integrations/kubernetes/node-exporter" + targets = discovery.relabel.node_exporter.output + scheme = "http" + forward_to = [prometheus.remote_write.prometheus_srv.receiver] + } + + + discovery.relabel "node_exporter" { + targets = discovery.kubernetes.kube_pods.targets + + rule { + source_labels = ["__meta_kubernetes_pod_label_app_kubernetes_io_name"] + regex = "node-exporter|prometheus-node-exporter" + action = "keep" + } + + rule { + source_labels = ["__meta_kubernetes_pod_container_port_number"] + regex = "9100" + action = "keep" + } + + rule { + source_labels = ["__meta_kubernetes_pod_node_name"] + target_label = "node" + } + + rule { + source_labels = ["__meta_kubernetes_pod_node_name"] + target_label = "nodename" + } + + rule { + source_labels = ["__meta_kubernetes_pod_node_name"] + target_label = "instance" + } + } + + // =============================================================================== // prometheus / Metrics - Scrape kube_state_metrics // Requirements: - // - discovery.relabel - kube_node_metrics (cAdviser) + // - discovery.relabel - kube_state_metrics // =============================================================================== prometheus.scrape "kube_state_metrics" { job_name = "integrations/kubernetes/kube-state-metrics" @@ -210,14 +249,6 @@ alloy: target_label = "nodename" } - - rule { - source_labels = ["node"] - regex = "(.+)" - replacement = "$1:9100" - target_label = "instance" - } - } @@ -274,14 +305,6 @@ alloy: replacement = "/metrics/cadvisor" target_label = "__metrics_path__" } - - rule { - source_labels = ["node"] - regex = "(.+)" - replacement = "$1:9100" - target_label = "instance" - } - }