HetznerWatch - Hetzner Server-Verfügbarkeit automatisch überwachen
- Oliver Heisel
- 21. Aug.
- 5 Min. Lesezeit
HetznerWatch ist ein leichtgewichtiges Open-Source-Tool zur automatischen Überwachung der Verfügbarkeit von Hetzner Cloud Servern. Über die offizielle Hetzner API wird regelmäßig geprüft, ob ein gewünschter Servertyp am jeweiligen Standort verfügbar ist. Sobald sich die Verfügbarkeit ändert, kann automatisch eine Benachrichtigung über ntfy versendet werden.
Entstanden ist das Tool aus einem konkreten Problem: Gerade attraktive und kostengünstige Servervarianten sind abhängig von Standort und verfügbarer Kapazität nicht immer unmittelbar bestellbar. Wer gezielt auf einen bestimmten Servertyp wartet, muss daher regelmäßig nachsehen und im richtigen Moment reagieren. HetznerWatch übernimmt genau diese Aufgabe automatisiert. Zusätzlich werden die Abfragen über einen längeren Zeitraum nachvollziehbar, sodass nicht nur der aktuelle Zustand, sondern auch die Entwicklung der Verfügbarkeit beobachtet werden kann.
Die Hetzner Cloud API stellt für Servertypen Informationen zur aktuellen Verfügbarkeit an den jeweiligen Standorten bereit. Hetzner weist dabei darauf hin, dass diese Verfügbarkeitsangabe ein Indikator und keine Garantie für eine erfolgreiche Bestellung ist.

Ausgangslage
Hetzner bietet Cloud Server mit einem im Verhältnis zur bereitgestellten Leistung attraktiven Preis-Leistungs-Verhältnis an. Besonders interessant können dabei die kostenoptimierten Servertypen sein.
Die gewünschte Variante ist jedoch nicht zwangsläufig zu jedem Zeitpunkt an jedem Standort verfügbar. Abhängig von der aktuellen Kapazität kann ein Servertyp zeitweise nicht ausgewählt oder bestellt werden.
Wer genau auf eine bestimmte Konfiguration wartet, hat damit zunächst eine einfache Möglichkeit: regelmäßig die Hetzner Console öffnen und überprüfen, ob der gewünschte Server inzwischen wieder verfügbar ist.
Bei einer einmaligen Prüfung ist das kein Problem. Wird jedoch über mehrere Tage auf freie Kapazität gewartet, entsteht daraus ein wiederkehrender manueller Prozess. Gleichzeitig kann eine verfügbare Kapazität wieder vergeben sein, bevor die nächste manuelle Kontrolle erfolgt.
Gerade wenn bewusst ein bestimmter kostengünstiger Servertyp gewählt werden soll, ist es wenig sinnvoll, lediglich aufgrund der momentan fehlenden Verfügbarkeit dauerhaft auf eine teurere Konfiguration auszuweichen.
Die benötigten Informationen sind grundsätzlich bereits vorhanden. Hetzner stellt eine offizielle API bereit, über die Cloud-Ressourcen und Informationen zu Servertypen programmatisch abgefragt werden können. Die aktuelle API stellt dabei auch Informationen darüber bereit, ob ein Servertyp an einem bestimmten Standort verfügbar ist.
Benötigt wurde daher eine kleine Anwendung, die diese Abfrage automatisch übernimmt und nur dann Aufmerksamkeit erfordert, wenn tatsächlich eine relevante Änderung eintritt.
Definierte Lösung
Mit HetznerWatch wurde ein eigenständiges Werkzeug entwickelt, das die Verfügbarkeit gewünschter Hetzner Cloud Server automatisiert überwacht.
Statt die Hetzner Console wiederholt manuell zu öffnen, fragt HetznerWatch in regelmäßigen Abständen die entsprechenden Informationen über die Hetzner API ab.
Dazu wird ein API-Token eines Hetzner-Projekts verwendet. Hetzner stellt solche Tokens direkt innerhalb der Console unter den Sicherheitseinstellungen eines Projekts zur Verfügung. Die Kommunikation mit der API erfolgt über HTTPS und die Antworten werden als strukturierte Daten verarbeitet.
Anschließend kann festgelegt werden, welcher Servertyp beziehungsweise welche Verfügbarkeit überwacht werden soll. HetznerWatch übernimmt danach kontinuierlich die Abfrage. Dadurch muss nicht mehr selbst daran gedacht werden, mehrfach am Tag nachzusehen, ob sich der Status geändert hat.
Neben dem aktuellen Zustand ist auch die zeitliche Entwicklung interessant. Die einzelnen Prüfungen ermöglichen es, die Verfügbarkeit über einen längeren Zeitraum nachzuvollziehen. Dadurch wird beispielsweise sichtbar, ob ein Servertyp regelmäßig verfügbar wird oder über längere Zeiträume hinweg nicht angeboten werden kann. Der zweite zentrale Bestandteil sind automatische Benachrichtigungen. Dafür integriert HetznerWatch ntfy. ntfy ist ein einfaches Benachrichtigungssystem, über das Nachrichten per HTTP an Smartphones, Desktopgeräte oder den Browser gesendet werden können.
Sobald HetznerWatch eine relevante Änderung erkennt beziehungsweise der gewünschte Server verfügbar wird, kann unmittelbar eine Push-Benachrichtigung ausgelöst werden.
Damit verändert sich der Ablauf grundlegend:
Statt selbst regelmäßig zu prüfen, ob ein Server verfügbar ist, läuft die Überwachung automatisch im Hintergrund. Sobald eine passende Kapazität erkannt wird, erscheint eine Benachrichtigung und der Server kann direkt über Hetzner bestellt werden.
Für die Benachrichtigungen können zwei unterschiedliche Ansätze verwendet werden.
Wer ohne zusätzliche Infrastruktur starten möchte, kann den öffentlich bereitgestellten ntfy-Dienst verwenden. Für den Versand einfacher Nachrichten über ntfy.sh ist keine eigene ntfy-Installation erforderlich.
Alternativ kann ein eigener ntfy-Server betrieben werden. ntfy ist Open Source und unterstützt Self-Hosting, unter anderem direkt als Docker-Container. Dadurch kann auch die Benachrichtigungsinfrastruktur vollständig innerhalb der eigenen Umgebung betrieben werden.
Ergebnis & Mehrwert
HetznerWatch automatisiert einen kleinen, aber in der Praxis zeitkritischen Prozess.
Die Anwendung sorgt nicht dafür, dass zusätzliche Hetzner-Kapazitäten entstehen, und eine von der API gemeldete Verfügbarkeit stellt laut Hetzner keine Garantie für eine erfolgreiche Bestellung dar. Sie sorgt jedoch dafür, dass vorhandene Verfügbarkeit deutlich schneller erkannt werden kann.
Dadurch muss nicht regelmäßig manuell kontrolliert werden, ob der gewünschte Server inzwischen verfügbar ist.
Besonders interessant ist dies, wenn bewusst auf einen bestimmten kostengünstigen Servertyp gewartet wird. Statt aus Zeitgründen eine größere oder teurere Variante zu wählen, kann HetznerWatch im Hintergrund weiter prüfen und informieren, sobald die gewünschte Option wieder verfügbar ist.
Genau dieser Anwendungsfall war auch der Ausgangspunkt für die Entwicklung. Durch die automatische Überwachung konnte auf die gewünschte Serverkonfiguration gewartet werden, ohne permanent die Hetzner Console kontrollieren zu müssen. So ließ sich letztlich die gewünschte kostengünstige Infrastruktur mit dem Hetzner-Angebot kombinieren, obwohl der entsprechende Server nicht dauerhaft verfügbar war.
Gleichzeitig entsteht durch die fortlaufenden Prüfungen eine Historie. Damit lässt sich nicht nur die Frage beantworten, ob ein Server jetzt verfügbar ist, sondern auch nachvollziehen, wie sich dessen Verfügbarkeit über einen längeren Zeitraum entwickelt hat.
Das Tool erfüllt damit bewusst einen klar abgegrenzten Zweck:
gewünschten Server definieren, Überwachung starten und erst wieder aktiv werden, wenn die Verfügbarkeit relevant wird.
Technische Ausgestaltung
HetznerWatch ist als leichtgewichtiges, containerisiertes Werkzeug aufgebaut und kann mit Docker betrieben werden.
Der Fokus liegt darauf, die Einrichtung auch ohne umfangreiche zusätzliche Infrastruktur zu ermöglichen. Das Repository enthält deshalb eine schrittweise Beschreibung der notwendigen Konfiguration und Bereitstellung.
Für den Betrieb werden im Wesentlichen die zu überwachenden Hetzner-Einstellungen, ein entsprechender API-Zugang sowie die gewünschte ntfy-Konfiguration hinterlegt. Anschließend kann die Anwendung als Docker-Container gestartet werden.
Docker kapselt dabei die notwendigen Komponenten und Abhängigkeiten. Dadurch muss die Anwendung nicht manuell direkt auf dem Betriebssystem eingerichtet werden und kann auf einem bereits vorhandenen Docker-Host mit überschaubarem Aufwand betrieben werden.
Die Kommunikation mit Hetzner erfolgt über die offizielle API. Für die Authentifizierung werden projektbezogene API-Tokens verwendet. Hetzner beschreibt die API als REST-Schnittstelle über HTTPS mit JSON als Datenformat.
Die abgefragten Verfügbarkeitsinformationen werden von HetznerWatch regelmäßig ausgewertet und für die längerfristige Betrachtung festgehalten. Damit kann neben dem aktuellen Status auch die historische Entwicklung betrachtet werden. Für Benachrichtigungen wird ntfy über dessen HTTP-basierte Schnittstelle angebunden. Dadurch benötigt HetznerWatch weder einen eigenen E-Mail-Server noch eine komplexe Push-Infrastruktur.
Die Benachrichtigung kann wahlweise über den öffentlich erreichbaren ntfy.sh-Dienst oder über eine eigene ntfy-Instanz erfolgen. Ein eigener ntfy-Server kann ebenfalls per Docker bereitgestellt werden. Die offiziellen ntfy-Unterlagen stellen hierfür sowohl Docker- als auch Docker-Compose-Konfigurationen bereit.
Dadurch lässt sich die Architektur je nach Anforderung sehr kompakt halten:
Hetzner API → HetznerWatch → Verfügbarkeitsprüfung → Historie → ntfy-Benachrichtigung
Die Anwendung selbst verändert keine Hetzner-Ressourcen und bestellt keinen Server automatisch. Sie übernimmt die Überwachung und Benachrichtigung. Die eigentliche Entscheidung und Bestellung bleibt bewusst beim Nutzer.
HetznerWatch ist als Open-Source-Projekt auf GitHub verfügbar. Die Einrichtung ist im Repository Schritt für Schritt dokumentiert, sodass das Tool mit einer bestehenden Docker-Umgebung ohne umfangreiche zusätzliche Installation betrieben werden kann.
Eingesetzte Technologien: Hetzner API · Docker · ntfy · Web Dashboard · Open Source



