Archive for the ‘nagios’ Category

[nagios] check_messpc

Mittwoch, Januar 20th, 2010

check_messpc.txt

check_messpc.py is  a nagios script written in python to monitor messpc http://www.messpc.de/  via nagios.

It is written to monitor 4 Ports (as we use here) and will be

Warning when > 28 °C

Critical when > 30°C

Community String must be set in source code and you can just do an ./check_messpc.py <hostename>

[nagios] check_apc

Montag, Januar 18th, 2010

check_apccheck_apc is a python script, written to monitor APC Model: Smart-UPS 3000 RM

to use this script, please fill in the CommunityString

you can run the command by python check_apc.py <hostename>

It will return an generated Status string

[nagios] NagiosCenter View (review)

Montag, Oktober 26th, 2009

translate to english

So denn, vielleicht ist es dir richtige Zeit mal auf eine Software einzugehen die nun schon etwas länger “in den Regalen steht.” NagiosCenter ist diese.

Details der Software:

  • Art: Webfrontend und Client Software
  • Lang: PHP, Python (MySQL)
  • Gibt eine Übersicht laufender (und nicht laufender) Prozesse verschiedener Nagios Server

Die meisten Nagios User kennen das Nagios Webfrontend.So steht die Frage im Raum warum schreibt man ein neues.

Die Frage ist recht sinnig, eigentlich tut NagiosCenter nichts anderes als Daten dazustellen, die selben Daten wie nagios selbst es tut. Böse Zungen behaupten sogar das Nagios dies Design technisch schöner macht.

Diese Software (also NagiosCenter) wurde aber auch aus einem anderen Grund geschrieben. Es stellte sich das Problem das eine Firma Nagios Überwachung an diversen Standorten betreibt. Einige davon besitzen nur eine DSL leitung mit ständig wechselnder IP Adresse also. Der Weg Nagios so zu konfigurieren das es per nrpe und Co sich über eine solche Lösung verbindet war zwar Möglich barg aber kleinere Probleme, wie timeout z.b..

Aus diesem Grund entstand NagiosCenter.

NagiosCenter kann mit hilfe des in Python geschriebenen Daemons die Daten eines entferneten Nagios abrufen und zentral Darstellen. Hierzu benutzt es einen Daemon der auf dem entferneten System selbst läuft. Dieses hat den Vorteil das der Client auf die Mysql DB zugreifen kann und nicht der Server umständlich sich zum Client verbinden muss. Timeout Probleme werden so z.b. umgangen.

NagiosCenter gibt in seinem Webfrontend dann einen Überblick über die verschiedenen Clients (Collectoren genannt) und zeigt die selben Daten wie Nagios es vor Ort tut. In der vorliegenden Version 1.0RC1 sind dependencys und hostgroups leider noch nicht implementiert. Aber sollte es Nachfrage diesbezüglich geben bin ich mir sicher das dies Nachgereicht wird.

Alles in allem also eine schöne kleine Software. Und die paar Erfolgsgeschichten geben ihr wohl Recht. So ist nun erwiesen das NagiosCenter zumindest in 2 Unternehmen eingesetzt wird und dort jeweils 2 bis 5 Nagiosserver zentralisiert. So macht das Entwickeln doch Spass.

[nagios] check_lsh

Montag, Oktober 26th, 2009

translate to english

SSH kann ja jeder,

so stellte sich die Herausforderung das man zwar mit check_ssh der nagios_plugins auch LSH überprüfen kann, das ganze jedoch zu ungewollten Fehlern führt.

Also habe ich kurzerhand das ganze so editiert das es etwas besser passt.

check_lsh.c

wie auch die check_ssh besitzt dieses Test folgende Form

Usage:check_lsh [-46] [-t <timeout>] [-r <remote version>] [-p <port>] <host>

Rückgabewerte entsprechen Analog:

- OK: Wenn der Rückgabewert “lshd” enthällt

- Warning: Wenn der Rückgabewert hiervon abweicht

- Critical: Wenn es keinen Rückgabewert gibt

Bleibt noch zu erwähnen das der default Port auf 1022 gesetzt wurde. Da wir hier diesen verwenden.

Desweiteren kann das nun über den gcc kompiliert werden, ich habe es aus den nagios_plugins heraus kompiliert in dem ich das configure skript und das Makefile angepasst habe, mittels ersetzen der check_ssh optionen durch check_lsh.

[nagios] check_rofs.sh

Montag, Oktober 26th, 2009

translate to english

Von Zeit zu Zeit kommt es bei uns vor das ein Dateisystem sich einfach verabschiedet und sich auf readonly setzt. Dies ist gerade wenn es sich um das rootfs handelt eine recht heimtükische Sache.Um also diesem effekt auf die Spur zu kommen bedarf es einen kleinen nagios skriptes. Da wie festzustellen war sich die option unter /proc/mounts  ändert wenn dies passiert. (Anmerkung: die Ausgabe von df oder der fstab schafft dies wenn das rootfs betroffen ist nicht mehr.

check_rofs.txt

Usage: check_rofs.sh <mountpoint>

Rückgabewerte:

- OK: Wenn <mountpoint> rw gesetzt

- Critical: Wenn <mountpoint> ro gesetzt

- Warning: Wenn “Test result empty (For any reason)”