Guides · Selfhosting
Uptime Kuma + Beszel: Der kostenlose Monitoring-Stack fürs Homelab
Zwei leichtgewichtige Tools, die zusammen 90 % des Homelab-Monitorings abdecken: Uptime Kuma für Dienste und SSL, Beszel für CPU, RAM, Disks und Docker — mit Compose-Setup und Alarm-Strategie.
Veröffentlicht:
Irgendwann kippt jedes Homelab von „ich probier was aus“ zu „davon hängen Dinge ab“ — spätestens, wenn die Familie Fotos auf Immich und Passwörter in Vaultwarden hat. Ab da braucht es Antworten auf zwei Fragen: Läuft alles? und Wie geht es den Maschinen? Genau diese Arbeitsteilung decken zwei kostenlose, leichtgewichtige Open-Source-Tools ab, die sich als De-facto-Standard etabliert haben — und die wir bei Labkompass selbst einsetzen.
Die Arbeitsteilung
- Uptime Kuma prüft von außen: Ist der Dienst erreichbar? HTTP 200? Zertifikat gültig? Docker-Container am Leben? Und alarmiert über Dutzende Kanäle (Telegram, Discord, E-Mail, ntfy …).
- Beszel schaut von innen: CPU, RAM, Disk-Belegung, Temperatur, Netzwerk und die Ressourcen einzelner Docker-Container — als Hub mit Mini-Agents (~10 MB) auf jedem überwachten System, mit Historie und eigenen Schwellwert-Alarmen.
Grafana + Prometheus können all das auch — aber mit deutlich mehr Lernkurve und Pflege. Für die allermeisten Homelabs ist das hier die ehrlichere Empfehlung; aufrüsten kannst du immer noch.
Setup per Docker Compose
Beide auf dem Docker-Host deiner Wahl (VM auf dem Proxmox-Server oder Altrechner):
services:
uptime-kuma:
image: louislam/uptime-kuma:2
volumes:
- ./kuma-data:/app/data
ports:
- "3001:3001"
restart: unless-stopped
beszel:
image: henrygd/beszel
volumes:
- ./beszel-data:/beszel_data
ports:
- "8090:8090"
restart: unless-stopped
Auf jedem zu überwachenden System kommt zusätzlich der Beszel-Agent dazu (Compose-Snippet und den zugehörigen Key generiert die Beszel-Oberfläche beim Hinzufügen eines Systems — inklusive Docker-Socket-Mount, wenn Container-Statistiken gewünscht sind).
Ein Detail mit Prinzip: Der Uptime-Kuma-Datenordner gehört in dein Backup — die mühsam gepflegten Monitore will niemand zweimal anlegen.
Uptime Kuma sinnvoll befüllen
Nicht wahllos alles anlegen — dieses Gerüst hat sich bewährt:
- HTTP(S)-Monitore für jeden Dienst mit Weboberfläche (Immich, Vaultwarden, Jellyfin …) — mit aktivierter Zertifikatsprüfung und Ablauf-Warnung (Standard: Alarm z. B. 14 Tage vorher)
- Ping-Monitore für Infrastruktur: Router/OPNsense, Switch, Access Points, NAS
- DNS-Monitor gegen deinen Pi-hole/AdGuard — wenn DNS steht, „ist das Internet kaputt“, das willst du zuerst wissen
- Push-Monitore („Heartbeat“) für Backup-Jobs: Der Backup-Job ruft am Ende eine Kuma-URL auf; bleibt der Aufruf aus, kommt Alarm. Damit überwachst du das, was still versagt — die wertvollste Monitor-Art überhaupt.
Beszel: Schwellwerte statt Datenfriedhof
Beim Hinzufügen der Systeme direkt Alarme setzen — sinnvolle Startwerte:
- Disk > 85 % — die häufigste schleichende Störung (Docker-Logs, Datenbank-Wachstum, vergessene Downloads)
- CPU dauerhaft > 90 % über längere Zeit — irgendwas dreht durch
- RAM > 90 % — bevor der OOM-Killer wahllos Dienste abschießt
- Temperatur je nach Gerät — besonders bei lüfterlosen Mini-PCs im Sommer interessant
Die Alarm-Strategie: Wer bewacht den Wächter?
Drei Regeln, die den Unterschied zwischen „Monitoring“ und „Beruhigungs-Dashboard“ machen:
- Ein Kanal, der dich wirklich erreicht — Telegram, Discord oder selfhosted ntfy. E-Mail als Zweitkanal.
- Das Henne-Ei-Problem lösen: Läuft das Monitoring auf dem Server, den es überwacht, schweigt es genau dann, wenn alles brennt. Der klassische Ausweg im Homelab: Kuma auf ein anderes Gerät als die Hauptdienste (z. B. den Pi, der eh läuft) — oder ein kostenloser externer Heartbeat-Dienst, der Alarm schlägt, wenn dein Kuma sich nicht mehr meldet.
- Alarm-Hygiene: Jeder Alarm, der keine Handlung auslöst, wird gelöscht oder entschärft. Drei Fehlalarme pro Woche, und du liest auch den echten nicht mehr.
Grenzen des Duos — und was dann?
Kein Log-Management, keine Metrik-Korrelation, keine komplexen Dashboards. Wenn du dahin willst: Grafana/Prometheus (oder VictoriaMetrics) sind der nächste Schritt — als bewusstes Projekt, nicht als Pflicht. Und für den Blick von außen auf deine öffentlichen Dienste lässt sich Kumas Statuspage-Funktion nutzen; extern erreichbar machen würden wir sie nur hinter sauberem VPN/Proxy.
Fazit
Zwei Container, ein Agent pro Maschine, ein Abend Arbeit: Danach weißt du vor der Familie, dass Immich down ist, bevor die Platte voll läuft — und ob das nächtliche Backup wirklich lief. Mehr Monitoring braucht ein Homelab lange nicht.