Dies ist eine alte Version des Dokuments!
There are three variantes of Nagios plugins available.
If you have already Unipager V 1.0.0 or newer installed, the JSON output solution is highly recommended due to performance issues.
This approach uses the same check_http_json
Nagios plugin as here. For further information on installation refere to this site. No nagios-nrpe-server
is needed (although it makes sense to use it for temperature monitoring, disk space, etc.)
Add to your commands.cfg
the following lines:
# 'check_unipager_connected' command definition define command{ command_name check_unipager_connected command_line /usr/lib/nagios/plugins/check_http_json -H '$HOSTNAME$' -P $ARG1$ -p status -Q "connected,True" } # 'check_unipager_queue' command definition define command{ command_name check_unipager_queue command_line /usr/lib/nagios/plugins/check_http_json -H '$HOSTNAME$' -P $ARG1$ -p status -w queue,$ARG2$ -c queue,$ARG3$ } <file> Ein entsprechendes Plugin für die Websocket-Schnittstelle kann unter [[https://github.com/rwth-afu/UniPagerNagios|https://github.com/rwth-afu/UniPagerNagios]] heruntergeladen werden. Es gibt 2 Varianten: * C++ Version (Viele Abhängigkeiten) * Pyhton2 Version (Einfache Installation) Dazu muss der Nagios NRPE-Server installiert werden. <code>sudo apt-get install nagios-nrpe-server</code> Zur Installation des Check-Plugins zunächst das Repository herunterladen: <code>git clone https://github.com/rwth-afu/UniPagerNagios.git</code>. ===== C++-Version ===== Mit <code> sudo apt-get install libssl-dev libboost-dev libjson-spirit-dev libboost-system-dev libboost-coroutine-dev libboost-context-dev libboost-thread-dev libboost-program-options-dev cd UniPagerNagios/cplusplus make </code> das Programm kompilieren und die gebaute Datei build/unipagernagios mittels <code> sudo cp ./build/unipagernagios /usr/lib/nagios/plugins/check_unipager </code> ins Zielverzeichnis kopieren. Dann noch dem Benutzer root zuweisen, sowie ausführbar machen <code> sudo chown root:root /usr/lib/nagios/plugins/check_unipager sudo chmod 755 /usr/lib/nagios/plugins/check_unipager </code> ===== Pyhton2-Version ===== FIXME ===== Generelle Einstellungen ===== Die Datei ///etc/nagios/nrpe.cfg// entsprechen anpassen, insbesondere: <code>allowed_hosts=127.0.0.1,44.225.x.y</code> Die Datei ///etc/nagios/nrpe.d/check_unipager.cfg// erstellen mit Inhalt <code>sudo nano /etc/nagios/nrpe.d/check_unipager.cfg</code> <file>command[check_unipager]=/usr/lib/nagios/plugins/check_unipager -H localhost
ACHTUNG: Nur bei Zugriff von localhost aus braucht man ab der Version 0.7.1 von UniPager kein Passwort.
Dann den nagios-nrpe-server neu starten:
service nagios-nrpe-server restart
Auf dem Haupt-Nagios-Server kann man dann mit den NRPE-Plugin den Status abfragen. Dazu erstellt man eine Datei in /etc/nagios3/conf.d mit z.B. dem Hostnamen c9000.db0sda.ampr.org.cfg und dem Inhalt
define host{ use generic-host ; Name of host template to use host_name c9000.db0sda.ampr.org alias c9000.db0sda address 44.225.164.26 hostgroups db0sda, ssh-servers, raspberrypi } # Define a service to check if rustpager is connected to a Core define service{ use generic-service host_name c9000.db0sda.ampr.org service_description UniPager Connection to DAPNET Core check_command check_nrpe_1arg!check_unipager }
Die hostgroup, host_name, alias und IP müssen natürlich angepasst werden. Einmal nagios neustarten und schon wird der Status überwacht.