diff --git a/monitoring/base/alloy/node-scraper/config.alloy b/monitoring/base/alloy/node-scraper/config.alloy index a9bd4a3..0f33bfb 100644 --- a/monitoring/base/alloy/node-scraper/config.alloy +++ b/monitoring/base/alloy/node-scraper/config.alloy @@ -346,6 +346,43 @@ prometheus.scrape "kubelet" { } } + +// =============================================================================== +// Scrape Kubernetes pods containers metrics / cAdvisor +// Requirements: +// - discovery.relabel - kube_node_metrics +// =============================================================================== + +prometheus.scrape "cadvisor" { + job_name = "integrations/kubernetes/cadvisor" + targets = discovery.relabel.kube_node_metrics.output + scheme = "https" + + tls_config { + server_name = "kubernetes" + ca_file = "/var/run/secrets/kubernetes.io/serviceaccount/ca.crt" + insecure_skip_verify = true + } + + bearer_token_file = "/var/run/secrets/kubernetes.io/serviceaccount/token" + forward_to = [prometheus.remote_write.prometheus_srv.receiver] +} + +// ============================================ +// Discovery: Kubernetes - endpoints +// used by: +// - loki kubernetes kube state metrics +// ============================================ +discovery.kubernetes "kube_endpoints" { + role = "endpoints" + selectors { + role = "endpoints" + field = "spec.nodeName=" + coalesce(env("HOSTNAME"), constants.hostname) + } +} + + + // =============================================================================== // prometheus / Metrics - Scrape kube_state_metrics // Requirements: @@ -385,26 +422,6 @@ discovery.relabel "kube_state_metrics" { } } -// =============================================================================== -// Scrape Kubernetes pods containers metrics / cAdvisor -// Requirements: -// - discovery.relabel - kube_node_metrics -// =============================================================================== - -prometheus.scrape "cadvisor" { - job_name = "integrations/kubernetes/cadvisor" - targets = discovery.relabel.kube_node_metrics.output - scheme = "https" - - tls_config { - server_name = "kubernetes" - ca_file = "/var/run/secrets/kubernetes.io/serviceaccount/ca.crt" - insecure_skip_verify = true - } - - bearer_token_file = "/var/run/secrets/kubernetes.io/serviceaccount/token" - forward_to = [prometheus.remote_write.prometheus_srv.receiver] -}