apiVersion: v1 kind: ConfigMap metadata: name: prometheus-config data: prometheus.yml: | global: scrape_interval: 10s evaluation_interval: 10s alerting: alertmanagers: [] rule_files: - /etc/prometheus/alerts.yml scrape_configs: # This scrapes endpoints on my servers - job_name: node static_configs: - targets: - "genesis.shire-zebra.ts.net:9100" - "isaiah.shire-zebra.ts.net:9100" - "jeremiah.shire-zebra.ts.net:9100" - "zeke.shire-zebra.ts.net:9100" - "hosea.shire-zebra.ts.net:9100" - "exodus.shire-zebra.ts.net:9100" - "linode.shire-zebra.ts.net:9100" - job_name: systemd static_configs: - targets: - "genesis.shire-zebra.ts.net:9558" - "isaiah.shire-zebra.ts.net:9558" - "jeremiah.shire-zebra.ts.net:9558" - "zeke.shire-zebra.ts.net:9558" - "hosea.shire-zebra.ts.net:9558" - "exodus.shire-zebra.ts.net:9558" - "linode.shire-zebra.ts.net:9558" - job_name: ping static_configs: - targets: - "genesis.shire-zebra.ts.net:9427" - "isaiah.shire-zebra.ts.net:9427" - "jeremiah.shire-zebra.ts.net:9427" - "zeke.shire-zebra.ts.net:9427" - "hosea.shire-zebra.ts.net:9427" - "exodus.shire-zebra.ts.net:9427" - "linode.shire-zebra.ts.net:9427" - job_name: kea static_configs: - targets: - "genesis.shire-zebra.ts.net:9547" - job_name: dnsmasq static_configs: - targets: - "genesis.shire-zebra.ts.net:9153" # Converter from TrueNAS - job_name: graphite static_configs: - targets: - "hosea.shire-zebra.ts.net:9108" # Restic rest-server backup metrics - job_name: restic_backups static_configs: - targets: - "nas1.shire-zebra.ts.net:30248" # Mattermost metrics - job_name: mattermost metrics_path: /metrics static_configs: - targets: - "mattermost.thehellings.lan:8065" # UniFi metrics via unpoller - job_name: unifi static_configs: - targets: - "unpoller.monitoring.svc.cluster.local:9130" # This scrapes metrics from the Kubernetes kubelets - job_name: kubelet kubernetes_sd_configs: - role: node scheme: https tls_config: ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt authorization: credentials_file: /var/run/secrets/kubernetes.io/serviceaccount/token # This scrapes metrics about the containers themselves - job_name: cadvisor kubernetes_sd_configs: - role: node scheme: https tls_config: ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt metrics_path: /metrics/cadvisor bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token #authorization: # credentials_file: /var/run/secrets/kubernetes.io/serviceaccount/token # This scrapes Service endpoints in Kubernetes - job_name: 'k8sservices' kubernetes_sd_configs: - role: endpointslice relabel_configs: - source_labels: - __meta_kubernetes_namespace - __meta_kubernetes_service_name action: drop regex: "default;kubernetes" - source_labels: - __meta_kubernetes_namespace regex: default action: keep - source_labels: - __meta_kubernetes_service_name target_label: job authorization: credentials_file: /var/run/secrets/kubernetes.io/serviceaccount/token # This scrapes any exposed pod port named "metrics", assuming that it is # a prometheus source - job_name: k8spods kubernetes_sd_configs: - role: pod relabel_configs: - source_labels: - __meta_kubernetes_pod_container_port_name regex: metrics action: keep - source_labels: - __meta_kubernetes_pod_container_name target_label: job authorization: credentials_file: /var/run/secrets/kubernetes.io/serviceaccount/token