Zum Inhalt

Alerting

Dreifaches Alerting-System: Prometheus-Alerts via ntfy, externe Überwachung via Uptime Kuma, Heartbeat via Healthchecks. Container-Update-Benachrichtigungen via MqDockerUp.

Alertmanager

GitHub · prom/alertmanager:v0.31.1

URL https://alertmanager.home.robinwerner.net
Speicher /mnt/ssd/container-data/monitoring-stack/alertmanager (<100 MB)
User nobody:nobody

ntfy-alertmanager Adapter

Codeberg · xenrox/ntfy-alertmanager:v1.0.0

Formatiert Alertmanager-Webhooks zu ntfy-Benachrichtigungen mit Titel, Priority und Tags (statt rohem JSON).

Netzwerk monitoring (nur intern erreichbar)
Config secrets/ntfy-alertmanager.scfg (enthält ntfy-Credentials)
Healthcheck http://localhost:8080/health

Nachrichtenfluss

Alertmanager --webhook--> ntfy-alertmanager --formatiert--> ntfy (Hetzner)

Label-Mapping

Severity ntfy Priority Tags ntfy Topic
critical 5 (urgent) rotating_light homelab-critical
warning 3 (default) warning homelab-alerts
resolved 1 (min) white_check_mark (wie Original)

Resolved-Alerts aktualisieren die bestehende Benachrichtigung (update-notification: true).

Routing

Severity Repeat-Interval
critical 1 Stunde
warning 4 Stunden

Alert-Rules

Critical (Push sofort)

Alert Bedingung For
DiskAlmostFull Filesystem < 10% frei 5m
ContainerDown Wichtige Container absent 5m
NfsMountLost NFS-Mountpoint nicht verfügbar 2m

Überwachte NFS-Mounts: /mnt/unas (Media), /mnt/paperless (Dokumente), /mnt/monitoring (Langzeit-Metriken).

Wichtige Container (Critical bei Ausfall): traefik, homeassistant, grafana, prometheus, pihole.

Warning (Dashboard + Push nach 4h)

Alert Bedingung For
HighCPU CPU > 80% 10m
HighMemory RAM > 85% 10m
DiskSpaceLow Filesystem < 20% frei 10m
ContainerRestarting Restart-Count > 3 in 15m 15m

Konfigurationsdateien

Datei Inhalt
configs/prometheus/rules/node-alerts.yml DiskAlmostFull, DiskSpaceLow, HighCPU, HighMemory, NfsMountLost
configs/prometheus/rules/container-alerts.yml ContainerDown, ContainerRestarting
configs/alertmanager/alertmanager.yml Routing zu ntfy-alertmanager
secrets/ntfy-alertmanager.scfg ntfy-alertmanager Config (Label-Mapping, ntfy-Auth)

Dreifaches Alerting

Pfad 1: Prometheus -> Alertmanager -> ntfy-alertmanager -> ntfy -> Handy
Pfad 2: Uptime Kuma (Hetzner) -> ntfy -> Handy (bei NUC-Ausfall)
Pfad 3: NUC Heartbeat-Cronjob -> Healthchecks (Hetzner) -> ntfy -> Handy
  • Pfad 1 erkennt Service-Probleme auf dem NUC
  • Pfad 2 erkennt einen kompletten NUC-Ausfall (extern überwacht)
  • Pfad 3 erkennt Netzwerk- oder Cronjob-Probleme (Dead-Man's-Switch)

MqDockerUp

GitHub · micrib/mqdockerup:v1.23.7

Container-Update-Benachrichtigungen via MQTT an Home Assistant.

Netzwerk proxy_network (Zugriff auf Mosquitto)
Speicher /mnt/ssd/container-data/monitoring-stack/mqdockerup (SQLite)
Docker-Socket Read-Only gemountet

Konfiguration

Parameter Wert
Container-Check alle 5 Minuten
Update-Check stündlich
MQTT-Discovery homeassistant (Auto-Discovery für HA)
GitHub Token Fine-grained PAT für GHCR-Image-Checks (optional)