Monitoring und Alarme
Service wurde heruntergefahren, Sie wissen zuerst — nicht warten, dass der Benutzer Ihnen sagt
Monitoring ist keine Option
Service läuft nicht bedeutet alles in Ordnung. CPU läuft voll Sie wissen nicht, Memory Leak Sie wissen nicht, Disk ist voll Sie wissen nicht — wenn Benutzer "funktioniert nicht mehr" meldet, zu passiv.
Richten Sie ein Monitoring- und Alert-System ein, wissen Sie zuerst wenn es Probleme gibt, anstatt auf Benutzer zu warten, das ist echte Operations.
Freitag Nachmittag Server leise ausfallen, Montag früh viele sagen "nicht nutzbar". Du machst Server auf —— Scheibe voll, Log-Dateien wild gewachsen Speicher voll. Mit Monitoring-Alarm, Freitag Nachmittag würde Benachrichtigung kommen, 5 Minuten fix.
Verwenden Sie Prometheus zum Erfassen von Metrik-Daten, Grafana zum Erstellen von visuellen Dashboards, kombiniert mit Alert-Regeln, CPU-Überlast, Speicher unzureichend, Service-Ausfall alle erste Zeit Push-Benachrichtigungen zu Handy oder E-Mail. Ganzes Schema Open-Source kostenlos, Docker Ein-Klick Deploy.
One-click deployment monitoring stack
Mit docker-compose Prometheus, Grafana und Node Exporter zusammen hochfahren:
# Überwachungsverzeichnis erstellen
services:
prometheus:
image: prom/prometheus:latest
container_name: prometheus
restart: always
ports:
- "9090:9090"
volumes:
- ./prometheus.yml:/etc/prometheus/prometheus.yml
- ./alert_rules.yml:/etc/prometheus/alert_rules.yml
- prometheus_data:/prometheus
command:
- "--config.file=/etc/prometheus/prometheus.yml"
- "--storage.tsdb.retention.time=30d"
grafana:
image: grafana/grafana:latest
container_name: grafana
restart: always
ports:
- "3001:3000"
volumes:
- grafana_data:/var/lib/grafana
environment:
- GF_SECURITY_ADMIN_PASSWORD=your_secure_password
node-exporter:
image: prom/node-exporter:latest
container_name: node-exporter
restart: always
ports:
- "9100:9100"
volumes:
- /proc:/host/proc:ro
- /sys:/host/sys:ro
- /:/rootfs:ro
command:
- "--path.procfs=/host/proc"
- "--path.sysfs=/host/sys"
- "--path.rootfs=/rootfs"
alertmanager:
image: prom/alertmanager:latest
container_name: alertmanager
restart: always
ports:
- "9093:9093"
volumes:
- ./alertmanager.yml:/etc/alertmanager/alertmanager.yml
volumes:
prometheus_data:
grafana_data:
Prometheus Konfiguration
global:
Alarm-Regel
groups:
Alarm-Benachrichtigungs-Konfiguration
Nach Alarm wie benachrichtigen? Mail, Dingding/Enterprise-WeChat/Slack:
global: