global: scrape_interval: 30s external_labels: cluster: 'olimp' environment: 'production' scrape_configs: # ========== Node Exporter со всех серверов ========== - job_name: 'node' static_configs: - targets: {% for server in monitoring_groups.node_exporter_servers %} - '{{ server }}:{{ monitoring_ports.node_exporter }}' {% endfor %} scrape_interval: 30s relabel_configs: - source_labels: [__address__] target_label: instance regex: '(.*):{{ monitoring_ports.node_exporter }}' replacement: '${1}' # ========== cAdvisor для мониторинга Docker на всех серверах ========== - job_name: 'cadvisor' static_configs: - targets: {% for server in monitoring_groups.cadvisor_servers %} - '{{ server }}:{{ monitoring_ports.cadvisor }}' {% endfor %} scrape_interval: 30s metrics_path: /metrics relabel_configs: - source_labels: [__address__] target_label: instance regex: '(.*):{{ monitoring_ports.cadvisor }}' replacement: '${1}' # ========== Proxmox VE ========== - job_name: 'proxmox' static_configs: - targets: {% for server in monitoring_groups.proxmox_servers %} - '{{ server }}:{{ monitoring_ports.proxmox_exporter }}' {% endfor %} metrics_path: /pve params: module: [default] scrape_interval: 30s relabel_configs: - source_labels: [__address__] target_label: instance regex: '(.*):{{ monitoring_ports.proxmox_exporter }}' replacement: '${1}' metric_relabel_configs: # Исключаем остановленные контейнеры - source_labels: [status] regex: 'stopped' action: drop # Исключаем остановленные VM - source_labels: [vm_status] regex: 'stopped' action: drop # ========== Self-monitoring ========== - job_name: 'vmagent' static_configs: - targets: ['localhost:{{ monitoring_ports.vmagent }}'] scrape_interval: 30s relabel_configs: - source_labels: [__address__] target_label: instance replacement: 'vmagent' - job_name: 'victoriametrics' static_configs: - targets: ['localhost:{{ monitoring_ports.victoriametrics }}'] scrape_interval: 30s metrics_path: /metrics relabel_configs: - source_labels: [__address__] target_label: instance replacement: 'victoriametrics'