Service Monitoring

Einleitung

In diesem Dokument möchten wir die Grundlagen zur Einrichtung von Hosts und Services erklären. Dazu gehört auch, wie die Konfiguration eines Hosts mit Bezug auf den Bloonix-Agenten funktioniert.

Was ist ein Host und was ist ein Service?

Zunächst ist es sinnvoll die Begriffe Host und Service zu erläutern, denn auf diese Begriffe werden Sie immer wieder in der Dokumentation stoßen.

Was ist ein Host?

Ein Host ist in Bloonix ein Metaobjekt und kann alles mögliche sein, zum Beispiel ein Server, eine virtuelle Maschine, ein Router, ein Switch, sogar eine Klimaanlage oder ganz schlicht eine Service-IP, die in einem Cluster via Keepalived zwischen Servern wechseln kann. Sozusagen ist ein Host ein Objekt mit einer IP Adresse und ist Teil eines Netzwerks. In der WebGUI werden Hosts immer mit einem Hostnamen, einer IP Adresse und einem Passwort eingerichtet. Das Passwort wird später nur für den Bloonix Agenten benötigt.

Was ist ein Service?

Ein Service wird gerne auch als Check oder Service-Check bezeichnet. Hinter einem Service, welcher in der WebGUI konfiguriert ist, steckt immer auch ein Plugin. Plugins sind kleine Skripts mit denen der Status von Services geprüft wird. Mit diesen Plugins wird z.B. die CPU Auslastung, die Verfügbarkeit einer Datenbank oder ein Port von Routern geprüft.

Spricht man von Services, so sind die Services gemeint, welcher in der WebGUI eingerichtet ist. Spricht man von Plugins, dann sind damit die Skripte gemeint, die für die Überprüfung eines Services ausgeführt werden.

Einrichtung eines Hosts

Beginnen wir mit der Einrichtung eines Hosts in der WebGUI. Vorzugsweise sollte der Host ein Server oder eine virtuelle Maschine mit Linux als Betriebssystem sein, auf dem bereits der Bloonix-Agent installiert ist. Auf diese Weise können wir die Konfiguration des Hosts direkt auf dem Server mit dem Bloonix-Agenten vollenden.

Klicke, so wie in der Grafik zu sehen ist, auf den Menupunkt Hosts und dann auf das Plus-Zeichen.

Nachdem das Formular für die Einrichtung des Hosts ausgefüllt und abgesendet wurde, erscheint zum Abschluss eine Information, die für die Einrichtung des Bloonix-Agenten wichtig ist. Das sieht beispielhaft wie folgt aus:

Hinweiß: der Hostname des Bloonix-Servers, hier bloonix-server.example genannt, lässt sich in den Systemeinstellungen über den Parameter Parameter Bloonix Server Hostnamen anpassen.

Bitte beachte auch, dass die Host-ID, dass Passwort und der Hostname des Bloonix-Servers nur Beispiele sind.

Jetzt gibt es zwei Möglichkeiten den Bloonix-Agenten einzurichten, manuell und über das Skript bloonix-init-host.

Manuelle Einrichtung des Bloonix-Agenten

Bei der manuellen Einrichtung müssen zwei Dateien editiert werden:

  • /etc/bloonix/agent/main.conf
  • /etc/bloonix/agent/conf.d/host.conf

In der Datei /etc/bloonix/agent/main.conf muss die Adresse des Bloonix-Servers eingetragen werden. Der Eintrag erfolgt in der Sektion server und dem darin enthaltenen Parameter host:

server {
    host 127.0.0.1
    host bloonix-server.example

Als nächstes wird in der Datei /etc/bloonix/agent/conf.d/host.conf die ID des Hosts sowie das Passwort eingetragen:

host {
    host_id 33
    password GOkUm91qvpjq388N8mWJdjHiQrkA4WCrjFyweLm3
}

Sind alle Anpassungen erledigt, muss im letzten Schritt der Bloonix-Agent neugestartet werden, damit die Änderungen aktiv werden.

Automatische Einrichtung des Bloonix-Agenten

Die gesamte Einrichtung lässt sich auch, so wie in der Beispielgrafik gezeigt wird, über das Skript bloonix-init-host erledigen. Voraussetzung dafür ist, dass die Konfigurationsdatei des Agenten im Originalzustand ist oder das zumindest die Zeile host 127.0.0.1 in der Sektion server gefunden wird.

bloonix-init-host \
    --host-id 33 \
    --password GOkUm91qvpjq388N8mWJdjHiQrkA4WCrjFyweLm3 \
    --server bloonix-server.example

Einrichtung von Services

Ist der Host einmal eingerichtet, so können nun die Services hinzugefügt werden. Dazu klicken Sie sich wie in den folgenden Grafiken dargestellt durch die Menus.




Wählen Sie ein Plugin aus, mit welchem Sie den Server, auf dem der Agent läuft, überprüfen möchten. Dies könnte z.B. ein CPU Check sein, mit dem die Auslastung des Server überprüft wird.

Falls bei der Einrichtung des Service die Option Remote check vorkommt, so lassen Sie den Parameter bitte deaktiviert:

Die genaue Bedeutung dieser Option wird im Dokument Lokal, Remote, Satellit erklärt.

Interaktion zwischen Bloonix-Server und Bloonix-Agent

Nach der Einrichtung der Services haben diese zunächst den Status INFO, da die Services bislang noch nicht geprüft wurden:

Der Agent kann nun mit der Überwachung der Services starten. Hierzu verbindet sich der Agent mit dem Server und übermittelt die Host-ID und das Passwort, um sich zu authentifizieren. Der Server übersendet dem Agenten auf Anfrage die Services, die in der WebGUI für den Host eingerichtet wurden, damit der Agent hierzu die passenden Checks auf dem Server ausführen kann.

Nach der Prüfung verbindet sich der Agent erneut beim Bloonix Server um den Status und die Metriken der Services zu übermitteln. In der WebGUI ist es dann möglich den aktuellen Status der Services einzusehen: