استک پایش شبکه: Prometheus + Grafana
این راهنما یک استک مشاهدهپذیری کامل برای زیرساخت شبکه با استفاده از Docker Compose استقرار میدهد.
Docker Compose Stack
YAML
version: '3.8'
services:
prometheus:
image: prom/prometheus:latest
volumes:
- ./prometheus.yml:/etc/prometheus/prometheus.yml
- prometheus-data:/prometheus
command:
- '--storage.tsdb.retention.time=90d'
ports:
- "9090:9090"
grafana:
image: grafana/grafana:latest
environment:
- GF_SECURITY_ADMIN_PASSWORD=SecurePass123
ports:
- "3000:3000"
snmp-exporter:
image: prom/snmp-exporter:latest
ports:
- "9116:9116"پرسوجوهای مفید PromQL
PROMQL
# درصد استفاده از پهنای باند
rate(ifHCInOctets{ifAlias!=""}[5m]) * 8 / ifHighSpeed * 100
# ۵ بزرگترین مصرفکننده
topk(5, rate(ifHCInOctets[5m]) * 8)
# نرخ خطای رابط
rate(ifInErrors[5m]) > 0هشداردهی با Alertmanager
YAML
groups:
- name: network
rules:
- alert: InterfaceDown
expr: ifOperStatus == 2
for: 2m
labels:
severity: critical
annotations:
summary: "رابط {{ $labels.ifAlias }} خاموش است"