version: "3.8"
services:
prometheus:
image: prom/prometheus
volumes:
- ./prometheus:/etc/prometheus
- prom_data:/prometheus
ports:
- "9090:9090"
restart: unless-stopped
grafana:
image: grafana/grafana
ports:
- "3000:3000"
volumes:
- graf_data:/var/lib/grafana
restart: unless-stopped
node-exporter:
image: prom/node-exporter
network_mode: host
pid: host
restart: unless-stopped
cadvisor:
image: gcr.io/cadvisor/cadvisor
privileged: true
ports:
- "8080:8080"
volumes:
- /:/rootfs:ro
- /var/run:/var/run:ro
- /sys:/sys:ro
- /var/lib/docker:/var/lib/docker:ro
volumes:
prom_data:
graf_data: docker-compose up -d global:
scrape_interval: 15s
scrape_configs:
- job_name: prometheus
static_configs:
- targets: ["localhost:9090"]
- job_name: node
static_configs:
- targets: ["MONITORING_HOST_IP:9100"]
- job_name: cadvisor
static_configs:
- targets: ["localhost:8080"]
groups:
- name: base
rules:
- alert: TargetDown
expr: up == 0
for: 2m
labels:
severity: critical
- alert: DiskAlmostFull
expr: node_filesystem_avail_bytes / node_filesystem_size_bytes < 0.1
for: 10m
labels:
severity: warning
Истории успеха
Другие статьи