Monitoring · Zabbix, Prometheus & Grafana

Ihr VPN gehört auf dasselbe Dashboard wie alles andere

Valenius stellt einen Prometheus-kompatiblen Metrik-Endpunkt bereit und liefert ein offizielles Zabbix-Template mit — ein HTTP-Item pro Minute, kein Agent auf dem Backend, keine Skripte auf dem Zabbix-Server. Backend-Zustand, Lizenzlaufzeit und jedes WireGuard®-Gateway landen in dem Monitoring-System, das Ihr Team ohnehin im Blick hat. Enthalten in beiden Editionen.

Warum es zählt

Ein VPN, das niemand beobachtet, fällt lautlos aus

VPN-Probleme melden sich selten von selbst. Eine Lizenz läuft still aus, ein Gateway antwortet nicht mehr, an einem Standort veralten die Handshakes — und der erste Alarm ist ein Anruf von jemandem, der nicht arbeiten kann. Genau solche Zustände erkennt ein Monitoring-System zuverlässig, sofern ihm jemand die Zahlen liefert.

Lizenzlaufzeit statt Lizenzüberraschung

Gültigkeit, Ablaufdatum und Seat-Auslastung werden als schlichte Zahlen exportiert. Ihr Monitoring-System kann Sie also dreißig Tage vorher warnen und nach sieben Tagen eskalieren — statt dass Sie das Problem am Morgen des Ablaufs entdecken.

🗄️

Backend-Zustand im Detail

Antwortet das Backend, ist die Datenbank erreichbar, wie lange dauert eine Abfrage, wie sieht die Antwortzeit im 95. Perzentil aus, steigen die 5xx-Antworten? All das ist sichtbar, bevor Nutzer überhaupt etwas bemerken.

📡

Gateways, die verstummt sind

Jeder Pro-verwaltete WireGuard®-Server meldet sich alle 30 Sekunden. Fällt einer aus, sehen Sie das als ausgefallenes Gateway — und getrennt davon als veraltete Daten, damit „der Server ist tot“ nie mit „die Abfrage hängt“ verwechselt wird.

🤝

Handshakes, die kalt werden

Konfigurierte Peers gegen tatsächlich verbundene Peers, dazu das Alter des ältesten Handshakes je Gateway. Ein Standort, der langsam seine Peers verliert, zeigt sich als Trend, lange bevor jemand ein Ticket dazu eröffnet.

📈

Kapazität, bevor es weh tut

CPU, Arbeitsspeicher, Load Average und Auslastung der Connection-Tracking-Tabelle des Gateways kommen zusammen mit den Peer-Daten — der Host, dem der Platz ausgeht, wird so zur Warnung, auf die Sie reagieren, und nicht zum Nachbericht, den Sie schreiben.

🔕

Keine weitere Konsole, die offen bleiben muss

Sie betreiben bereits etwas, das um 3 Uhr nachts die richtige Person alarmiert — mit Eskalation, Wartungsfenstern und Rufbereitschaftsplänen. Valenius speist genau das, statt Ihrem Team noch ein Panel zum Beobachten zu geben.

Die Integration

Ein offizielles Zabbix-Template, kein Selbstbau-Scrape

Viele Werkzeuge veröffentlichen einen Metrik-Endpunkt und überlassen Ihnen den Rest. Valenius liefert auch die fertige Zabbix-Seite mit — Items, Trigger, Discovery, Value-Maps, ein Dashboard und einen Traffic-Graphen, in einer importierbaren Datei.

Valenius by HTTP

Eine Anfrage pro Minute, unabhängig von der Größe Ihrer Flotte

Das Template fragt ein einziges HTTP-Agent-Item einmal pro Minute ab. Alles Weitere — rund zwanzig Items für Control Plane und Lizenz sowie automatisch erkannte Items und Trigger pro Gateway — wird von der in Zabbix eingebauten Prometheus-Vorverarbeitung aus dieser einen Antwort gelesen. Eine Installation mit fünfhundert Peers bleibt eine Anfrage, nicht fünfhundert.

Auf dem Valenius-Host wird nichts installiert, und auf dem Zabbix-Server läuft kein externes Skript. Der Host braucht überhaupt kein Interface, denn jedes Item ist ein HTTP-Agent- oder abhängiges Item statt einer Agent- oder SNMP-Abfrage.

  • Importgeprüft gegen einen echten Zabbix-7.4-Server; deklariert 7.0, jeder 7.x-Import funktioniert also
  • Low-Level-Discovery findet Ihre Gateways selbst — kein Bearbeiten des Hosts, wenn ein neues dazukommt
  • Mitgeliefertes Dashboard Valenius overview und ein Traffic-Graph pro Gateway
  • Alles über Makros einstellbar — Schwellwerte, Timeouts und Discovery-Filter, ohne das Template zu forken
  • Felder, die dieses Backend noch nicht liefern kann, fehlen einfach, statt als falsche Null gemeldet zu werden
  • Metriknamen gelten als öffentliche Schnittstelle: Es kommt etwas hinzu oder bleibt bewusst weg, aber nichts wird still umbenannt
Zabbix logo
Unter der Haube
  • Endpunkt: GET /api/v1/metrics · Prometheus-Textformat
  • Snapshot: im Hintergrund erzeugt, 15 s Cache — ein Scrape blockiert nie einen Anfragepfad
  • Auth: Bearer-Token mit dem einzigen Scope monitoring:read
  • Grenzen: 12 Anfragen/Minute je Token, gzip auf Wunsch
  • Außerdem: GET /api/v1/monitoring/status — dieselben Daten als kleines JSON
  • Template: integrations/zabbix/template_valenius_http.yaml im Repository

Mit einem Befehl geprüft

Der Endpunkt ist gewöhnliches HTTP — Sie können ihn also prüfen, bevor Sie Zabbix überhaupt anfassen, und bestätigen, dass er ohne Token niemanden durchlässt.

# antwortet er, und mit dem richtigen Content-Type?
curl -sSi -H "Authorization: Bearer vlnm_..." \
  https://vpn.example.com/api/v1/metrics | head -20

# und ohne Token muss er ablehnen — erwartet wird 401
curl -sSi https://vpn.example.com/api/v1/metrics | head -1
Einrichtung

Drei Schritte, etwa fünf Minuten

Kein Agent zum Ausrollen, kein Exporter zum Betreiben, kein Skript zum Einplanen. Token erzeugen, Datei importieren, zwei Makros setzen.

1

Monitoring-Token erzeugen

Öffnen Sie Monitoring in der linken Navigation des Admin-Panels und erstellen Sie ein Token. Beschränken Sie es optional auf die IP oder den CIDR-Bereich Ihres Monitoring-Servers und geben Sie ihm ein Ablaufdatum. Der vollständige Wert wird genau einmal angezeigt.

2

Template importieren

In Zabbix unter Data collection → Templates → Import die Datei template_valenius_http.yaml auswählen. Legen Sie einen Host für Ihr Backend an — kein Interface nötig — und verknüpfen Sie das Template Valenius by HTTP.

3

Zwei Makros setzen

Richten Sie {$VALENIUS.URL} auf Ihr Backend und fügen Sie das Token als Secret text in {$VALENIUS.TOKEN} ein. Eine Minute später füllt sich Latest data, und die Gateway-Discovery beginnt, Ihre Server zu finden.

In der Praxis

Wofür es Sie tatsächlich wecken wird

Die Trigger kommen mit sinnvollen Vorgaben, und jeder Schwellwert ist ein Makro — enger oder weiter stellen heißt also, ein Feld am Host zu ändern, und nicht, das Template zu forken.

Control Plane

  • Der Dienst beantwortet überhaupt keine Abfragen mehr
  • Die Datenbank ist nicht erreichbar — als eigene Ursache gemeldet, nicht als Symptom
  • Der Metrik-Snapshot ist veraltet, den Zahlen ist also nicht mehr zu trauen
  • Die Antwortzeit im 95. Perzentil liegt über dem, was sie sollte
  • Die 5xx-Antworten steigen zwischen zwei Abfragen
  • Die Backend-Version hat sich geändert — nützlich als Hinweis neben einem Änderungsprotokoll

Lizenz

  • Die Lizenz ist nicht mehr gültig
  • Der Ablauf liegt im Warnfenster (standardmäßig 30 Tage)
  • Der Ablauf liegt im kritischen Fenster (standardmäßig 7 Tage)
  • Die Seat-Auslastung hat 90 % überschritten — Zeit, über die nächste Stufe zu sprechen
  • Die Seat-Auslastung hat 98 % überschritten — das nächste Onboarding wird scheitern
  • Gar nichts, bei einer Community-Installation ohne Ablaufdatum — das Item hat schlicht nichts auszuwerten, und der Trigger löst nie aus

Pro Gateway (Pro)

  • Das Sidecar eines Gateways beantwortet die Abfrage des Backends nicht mehr
  • Ein Gateway wurde länger nicht gesehen als erlaubt
  • Der älteste Handshake an einem Gateway ist älter, als er sein sollte
  • CPU- oder Connection-Tracking-Auslastung hat ihren Schwellwert überschritten
  • Die Endpunkt-Wechsel sind sprunghaft gestiegen — roamende Peers oder ein NAT-Gerät, das sich falsch verhält
  • Automatisch erkannt: Ein heute hinzugefügtes Gateway wird heute überwacht

Flottenwerte

  • Konfigurierte Kunden, Clients und Gateways
  • Wie viele Gateways die letzte Abfrage beantwortet haben
  • Aktuell online befindliche Geräte, gemessen an allen Geräten
  • Gesamter Traffic je Gateway, als Rate dargestellt
  • Konfigurierte gegen erreichbare Peers, je Gateway
  • All das im mitgelieferten Dashboard, ohne vorher eines zu bauen
Kein Zabbix im Einsatz?

Es ist ein Standard-Endpunkt — bringen Sie Ihr eigenes Werkzeug mit

Das Zabbix-Template ist der fertige Weg, nicht der einzige. Darunter liegt schlichtes Prometheus-Textformat — das, was dem Monitoring am nächsten an einer gemeinsamen Sprache kommt. Alles, was Prometheus abfragt, liest Valenius also ohne Adapter.

Prometheus logo Grafana logo

Prometheus & Grafana

Ergänzen Sie einen Scrape-Job mit Bearer-Token, und Sie haben Verlauf, Alarmregeln und Dashboards in dem Stack, den Sie ohnehin betreiben. Grafana Alloy funktioniert genauso.

Checkmk logo

Checkmk, VictoriaMetrics, Netdata

Alle lesen das Prometheus-Format nativ. Eine Umsetzung auf unserer Seite bedeutet: Sie warten nicht darauf, dass wir eine Integration für Ihr bestimmtes Werkzeug bauen.

💚

Uptime Kuma & schlichtes curl

Für einen einfachen „Läuft alles?“-Check gibt es unter /api/v1/monitoring/status eine kleine JSON-Zusammenfassung — Status, Version, Lizenz, Datenbank, Gateway- und Peer-Zahlen, nichts zu parsen.

🛠️

Ihre eigenen Skripte

Dasselbe JSON wird der Support Sie bitten, in ein Ticket zu kopieren. Es eignet sich ebenso als Eingabe für einen nächtlichen Bericht oder eine Slack-Zusammenfassung, die Sie selbst schreiben.

Für MSPs

Gebaut für alle, die beruflich schon andere Unternehmen überwachen

Wenn Sie Zabbix für Ihre Kunden betreiben, ist eine VPN-Plattform, die Ihnen ein fertiges Template gibt, mehr wert als eine, die Ihnen eine Metrik-URL und ein Achselzucken reicht. Einmal importieren, das Template je Backend an einen Host hängen — und das Kunden-VPN wird nach demselben Maßstab überwacht wie dessen Server, mit denselben Eskalationswegen und denselben Berichten.

Weil die Token-Ebene von allem anderen getrennt ist, lässt sich ein Monitoring-Zugang bedenkenlos wie Infrastruktur behandeln. Er kann keine Clients auflisten, keine Konfigurationen lesen und nichts ändern — er darf also in der Konfiguration Ihres Monitoring-Servers liegen, ohne zum Schlüssel für das Kunden-VPN zu werden.

  • Ein Template, viele Kunden — Schwellwerte je Host, kein Fork pro Kunde
  • Die Gateway-Discovery hält eine wachsende Flotte ohne manuelle Pflege überwacht
  • Beschränken Sie ein Token auf die Adresse Ihres Monitoring-Servers und geben Sie ihm ein Ablaufdatum
  • Zahlen zur Seat-Auslastung machen aus dem Gespräch über ein Upgrade einen Datenpunkt statt einer Vermutung
🏢
Unter der Haube
  • Abfragekosten: eine HTTP-Anfrage je Backend und Minute, unabhängig von der Flottengröße
  • Gateway-Daten: alle 30 s durch die Sidecar-Abfrage von Pro aktualisiert
  • Discovery: aus derselben Antwort abgeleitet — kein zweiter Endpunkt freizugeben
  • Token: sofort widerrufbar, mit optionaler CIDR-Freigabeliste und Ablaufdatum
Zugriff & Datenschutz

Ein Zugang, der immer nur Zahlen lesen kann

Monitoring-Systeme sammeln Zugangsdaten und bewahren sie jahrelang in Konfigurationsdateien auf. Ein guter Grund dafür, dass ein Monitoring-Token das schwächste Glied Ihrer Installation ist — und dass die Daten, die es zurückgibt, bewusst langweilig sind.

🎫

Eine eigene Credential-Ebene

Ein Monitoring-Token ist kein Admin-Login mit weniger Rechten und kein Management-API-Schlüssel mit einem abgewählten Häkchen. Es trägt genau einen Scope — Metriken lesen — und von dort führt kein Weg zu irgendetwas anderem.

🙈

Keine personenbezogenen Daten in den Labels

Labels enthalten nie Hostnamen, Benutzernamen, E-Mail-Adressen, öffentliche WireGuard®-Schlüssel oder Client-IP-Adressen — nur undurchsichtige Kennungen und Zählwerte. Schlüsselmaterial verlässt das System über einen Monitoring-Scope prinzipbedingt nicht.

🏷️

Auch keine Kundennamen

Die Lizenzidentität, die an Ihr Monitoring-System geht, ist eine interne Lizenz-ID und nicht der Name der Organisation, zu der sie gehört. Was in einem geteilten NMS landet, ist eine Zahl, keine Kundenliste.

🚫

Nie unauthentifiziert

Es gibt keinen offenen Metrik-Port, auch nicht an localhost gebunden. Selbst gehostete Installationen stehen hinter Reverse Proxys, wo „localhost“ selten das ist, was man annimmt — der Endpunkt verlangt deshalb immer ein Token.

🧯

Degradiert, statt auszufallen

Ist die Datenbank nicht erreichbar, antwortet der Endpunkt trotzdem, meldet weiterhin, dass das Backend läuft, und sagt, dass die Datenbank ausgefallen ist. Ein Monitoring-Endpunkt, der in der Krise einen Fehler liefert, sagt Ihnen genau dann nichts, wenn Sie ihn am dringendsten brauchen.

🎁

Nicht hinter einer Bezahlschranke

Observability bleibt Teil des quelloffenen Kerns. Community-Installationen erhalten den Endpunkt, die Token-Ebene und das Template; Pro ergänzt die Detailsicht pro Gateway, weil diese Daten vom Pro-Sidecar stammen und ohne ihn nicht existieren.

Bringen Sie Ihr VPN aufs Dashboard

Der Metrik-Endpunkt und das Zabbix-Template stecken in der kostenlosen Community-Edition. Fangen Sie dort an — dasselbe Template funktioniert beim Wechsel auf Pro weiter, es findet dann nur mehr.