modified: services/monitoring/deploy/alloy/kube-scraper/helm-values.yaml
146 lines
4.5 KiB
Plaintext
146 lines
4.5 KiB
Plaintext
// ============================================
|
|
// Metrics: Discovery Kubernetes Services
|
|
// ============================================
|
|
|
|
// discovery.kubernetes "k8s_services" {
|
|
// role = "service"
|
|
// }
|
|
|
|
// ============================================
|
|
// Metrics: Kube State Metrics (k8s_services)
|
|
// ============================================
|
|
|
|
// prometheus.scrape "kube_state_metrics" {
|
|
// job_name = "integrations/kubernetes/kube-state-metrics"
|
|
// targets = discovery.relabel.kube_state_metrics.output
|
|
//
|
|
// scheme = "http"
|
|
//
|
|
// forward_to = [prometheus.remote_write.prometheus_srv.receiver]
|
|
// }
|
|
|
|
// ============================================
|
|
// API Server discovery
|
|
// ============================================
|
|
|
|
// discovery.relabel "apiserver" {
|
|
// targets = discovery.kubernetes.k8s_services.targets
|
|
|
|
// rule {
|
|
// source_labels = ["__meta_kubernetes_service_name"]
|
|
// regex = "kubernetes"
|
|
// action = "keep"
|
|
// }
|
|
// rule {
|
|
// target_label = "cluster"
|
|
// replacement = env("CLUSTER_NAME")
|
|
// }
|
|
// }
|
|
|
|
// prometheus.scrape "apiserver" {
|
|
// job_name = "integrations/kubernetes/apiserver"
|
|
// targets = discovery.relabel.apiserver.output
|
|
|
|
// scheme = "https"
|
|
// metrics_path = "/metrics"
|
|
|
|
// 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]
|
|
// }
|
|
|
|
// ============================================
|
|
// CoreDNS discovery
|
|
// ============================================
|
|
// discovery.relabel "coredns" {
|
|
// targets = discovery.kubernetes.k8s_services.targets
|
|
//
|
|
// rule {
|
|
// source_labels = ["__meta_kubernetes_pod_label_k8s_app"]
|
|
// regex = "kube-dns"
|
|
// action = "keep"
|
|
// }
|
|
// rule {
|
|
// target_label = "cluster"
|
|
// replacement = env("CLUSTER_NAME")
|
|
// }
|
|
// }
|
|
|
|
// prometheus.scrape "coredns" {
|
|
// job_name = "integrations/kubernetes/coredns-pods"
|
|
// targets = discovery.relabel.coredns.output
|
|
|
|
// scheme = "http"
|
|
// metrics_path = "/metrics"
|
|
//
|
|
// forward_to = [prometheus.remote_write.prometheus_srv.receiver]
|
|
// }
|
|
|
|
|
|
// ============================================
|
|
// Prometheus: prometheus_srv
|
|
// ============================================
|
|
|
|
prometheus.remote_write "prometheus_srv" {
|
|
|
|
endpoint {
|
|
url = env("PROMETHEUS_URL")
|
|
}
|
|
|
|
// global labels
|
|
external_labels = {
|
|
cluster = env("CLUSTER_NAME"),
|
|
zone = env("ZONE"),
|
|
}
|
|
|
|
}
|
|
|
|
// ===============================================================================
|
|
// 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"
|
|
}
|
|
} |