Ich wollte mal wieder mein Monitoring auf den neuesten Stand bringen und alle Altlasten löschen. Da ich ein Software Raid 1 mit mdadm laufen hab, liegt es nahe dieses auch mit Icinga zu überwachen.
Ein Plugin ist schnell gefunden, da Icinga von Nagios abstammt: check_md_raid.
Die Installation des Plugins ist, wenn man schonmal Plugins installiert hat, sehr einfach. Man sollte aber noch eine Kleinigkeit anpassen, dazu später mehr. Zuerst kopiert man das Plugin zu den anderen und macht es ausführbar, normalerweise hierhin:
/usr/local/icinga/libexec
Dann muß man es noch in die commands.cfg und in die entsprechende Serverdatei eintragen. Bei mir ist das localhost, also localhost.cfg. Beide Dateien befinden sich im etc/objects Verzeichnis von Icinga. Mein localhost.cfg Eintrag sieht so aus:
define service{
use local-service
host_name localhost
service_description Raid
check_command check_md_raid
}Das Skript benötigt keine Eingabeparameter. commands.cfg:
define command{
command_name check_md_raid
command_line $USER1$/sudo /usr/local/icinga/libexec/check_md_raid
}Es gibt allerdings viele Möglichkeiten wie das aussehen könnte. Da das Script Root-Rechte benötigt (resp. der Aufruf von mdadm), kann man sudo benutzen um das Problem zu lösen. Ich rufe dabei das gesamte Skript mit Root-rechten auf, so wie es auch gedacht ist. Werft mal einen Blick hinein.
Man könnte aber natürlich auch das Skript verändern und nur den Aufruf von mdadm selbst mit administrativen Privilegien gestatten. Ich habs mir aber einfach gemacht
. Natürlich braucht man dann auch einen Eintrag in der /etc/sudoers. Diesen kann man z.b. mit visudo hinzufügen. In meinem Fall:
icinga ALL = NOPASSWD: /usr/local/icinga/libexec/check_md_raid
Wenn man diesen Weg wählt muß man natürlich dafür sorgen dass check_md_raid nicht von normalen Usern (auch nicht von Icinga) verändert werden kann. Das wäre sonst ein riesiges Sicherheitsrisiko.
Funktioniert das soweit kann man Icinga neustarten und im Browser aufrufen. Der Status sollte bereits korrekt angezeigt werden, jedoch steht was in der Statuszeile was dort nicht hingehört:
mdadm: metadata format 00.90 unknown, ignored. mdadm: metadata format 00.90 unknown, ignored.
Es handelt sich hierbei um einen kleinen Bug, der auftritt da das Format in dem die Informationen über das Metadaten-Format geändert wurde. So zu sagen Meta-meta Daten
Eliminiert kriegt man diese Meldung indem man in der
/etc/mdadm/mdadm.conf
eine Kleinigkeit ändert. So wird
metadata=00.90
zu
metadata=0.90
Ihr solltet nun funktionierendes Raid-Monitoring haben:



1 comment so far
Immer diese Monitoring-fetischisten..
January 2nd, 2011 at 15:56
Leave a Comment