Einleitung
Mit grosser Wahrscheinlichkeit können die meisten der Dienste die im Netzwerk überwacht werden sollen, direkt mit einem Plugin von dem Server auf dem Nagios läuft überprüft werden. Dienste die direkt auf ihre Verfügbarkeit hin überprüft werden können, sind z.B. Web-, eMail oder FTP-Dienste, da diese in den meisten Fällen öffentlich zugänglich sind. Trotzdem gibt es einige Dinge die interessant zu überwachen sind, die aber nicht öffentlich zugänglich sind. Diese "privaten" Ressourcen oder Dienste sind z.B. Werte wie die Festplattenkapazitäten, Prozessorlast, etc. auf einer entfernten Maschine, die nicht ohne eine vermittelnde Instanz überwacht werden können. Dienst-Überprüfungen, die solch einen Agenten benötigen um Zugriff auf die private Ressource zu erhalten, werden indirekte Überprüfungen genannt.
Indirekte Überprüfungen sind sinnvoll für:
Es gibt verschiedene Methoden um indirekte aktive Überprüfungen auszuführen (passive Überprüfungen werden hier nicht beschrieben), hier wird aber nur der Weg mit dem nrpe Addon beschrieben.
Indirekte Dienst-Überprüfungen
Das folgende Diagramm zeigt wie indirekte Dienst-Überprüfungen funktionieren. Eine grössere Version ist durch Klicken auf das Bild verfügbar...
Multiple indirekte Dienst-Überprüfungen
Falls Server überwacht werden sollen, die hinter einer Firewall liegen (und der Host auf dem Nagios läuft
ausserhalb dieser Firewall steht), dann kann diese Aufgabe schon einiges an Kopfschmerzen bereiten.
Mit grösster Wahrscheinlichkeit wird auf dieser Firewall ein Grossteil der eingehenden Anfragen, die für
eine Überwachung nötig sind, geblockt.
Eine Lösung um aktive Überprüfungen (passive Überprüfungen können auch
benutzt werden) auf Hosts hinter einer Firewall auszuführen, wäre ein kleines Loch in die Firewall-Regeln
zu stechen, die es Nagios erlaubt die sogenannten "calls" an den nrpe-Daemon auf dem Host hinter
der Firewall zu stellen.
Der Host innerhalb der Firewall kann dann als Zwischenstelle weitere Überprüfungen auf anderen Servern
innerhalb der Firewall auszuführen.
Das folgende Diagramm zeigt, wie multiple Dienst-Überprüfungen funktionieren. Es sollte beachtet werden,
dass der nrpe-Daemon auf den Hosts #1 und #2 läuft. Die Kopie, die auf Host #2 läuft erlaubt es
dem nrpe-Agenten auf Host #1 "private" Dienste auf Host #2 zu überwachen. "Private" Dienste sind
Dinge wir die Prozessorlast, die Festplattenkapazität, etc. Also Ressoucen, die nicht öffentlich zur
Verfügung stehen, so wie SMTP, FTP und Web-Dienste.
Ein Klick auf das Diagramm zeigt eine vergrösserte Version...
Indirekte Host-Überprüfungen
Indirekte Host-Überprüfungen arbeiten auf der gleichen Grundlage wie indirekte Dienst-Überprüfungen.
Hauptsächlich fragt das Plugin aus dem "host check"-Befehl einen vermittelnden Agenten (z.B. einen
Daemon, der auf dem entfernten Host läuft) an, eine Überprüfung für das aufrufende Plugin auszuführen.
Indirekte Host-Überprüfungen sind sinnvoll, wenn ein entfernter Host, der überwacht werden soll,
hinter einer Firewall steht und die eingehenden Anfragen nur auf eine bestimmte Maschine hereingelassen
werden sollen. Diese Maschine (Host #1 auf dem folgenden Diagramm) wird die Host-Überprüfung ausführen
und die Ergebnisse an das check_nrpe plugin (auf dem zentralen Server) zurückgeben.
Es sollte beachtet werden, das dieses Setup potentielle Probleme hervorrufen kann.
Falls der Host #1 aus irgendwelchen Gründen nicht mehr erreichbar ist, ist das check_nrpe-Plugin
nicht in der Lage den nrpe-Daemon zu erreichen und Nagios wird glauben, dass alle entfernten
Hosts #2, #3 und #4 nicht erreichbar sind, auch wenn dies evtl. garnicht der Fall ist. Falls #1 Ihre
Firewall ist, dann ist dieses Problem nicht wirklich ein Thema, da Nagios, wenn es erkennt das Host #1
down ist, die daran angeschlossenen Server "nur" als unerreichbar markiert.
Das folgende Diagramm zeigt wie indirekte Host-Überprüfungen ausgeführt mit dem nrpe-Daemon
und dem check_nrpe-Plugin ausgeführt werden können.
Ein Klick auf das Bild zeigt eine Vergrösserung...