Dieses Paket ermöglicht es, ein Software RAID zu überwachen. Voraussetzung ist, dass das Paket linuxmuster-nagios-base bereits auf dem Server installiert ist und das RAID bereits läuft.
Installation: apt-get install linuxmuster-nagios-swraid
nachdem das OpenLML-Repo in die Sources List eingetragen wurde.
ICP Vortex Controller, die mit dem Treiber gdth betrieben werden können mit dem hier zur Verfügung gestellten Debian-Paket in Nagios integriert werden. Voraussetzung ist, dass das Paket linuxmuster-nagios-base bereits auf dem Server installiert ist.
Installation: apt-get install linuxmuster-nagios-gdth
nachdem das OpenLML-Repo in die Sources List eingetragen wurde.
Für den Check des Status des Raid-Controllers benötigt man zwei zusätzliche Programme. Diese speichert man in seinem Homeverzeichnis in einem neuen Verzeichnis, z.B. als Administrator an einem Verzeichnis 3ware_check.
Als erstes besorgt man sich das Konsolen-Tool von 3ware namens:
tw_cli
Zu bekommen ist es unter http://www.3ware.com/support/download.asp Zum Zeitpunkt der Erfassung dieser Beschreibung heisst die Datei tw_cli-linux-x86-9.5.0.1.tgz
Desweiter braucht man noch das Nagios-Plugin, das für die Tests zuständig ist. (Update auf Musterlösung Vers. 5 neuer check_tw_cli)
check_tw_cli
Zu finden ist es unter http://exchange.nagios.org/directory/Plugins/Hardware/Storage-Systems/RAID-Controllers/check_tw_cli/details
Nun wechselt man an die Konsole des Servers, wenn man nicht sowieso schon da ist! Entweder mittels ssh oder per Turnschuh-Administration und begibt sich an der Konsole in das Verzeichnis, in der die vorher genannten Downloads (/home/administrators/administrator/3ware_check) gelandet sind. Für die nächsten Schritte benötigen wir die Root-Rechte und wenn man noch nicht unter seinem Account angemeldet ist, wechselt der nächste Befehl die Persönlichkeit:
su
Als erstes kommt nun das Programm tw_cli an seinen richtigen Platz.
Das Programmm kommt in einem tar-Archiv daher und muss noch ausgepackt werden. Das erledigt die nächste Zeile:
tar xf tw_cli-linux-x86-9.5.0.1.tgz
Danach hat man drei zusätzliche Dateien in diesem Verzeichnis:
tw_cli tw_cli.8.html tw_cli.8.nroff
Die Datei tw_cli ist das eigentliche Programm, die anderen sind Hilfe-Dateien für das Konsolen-Programm. Diese sind, für den Fall das etwas nicht stimmt mit dem RAID, sehr interessant.
Ein Überprüfen der Rechte dieser Datei mittels
ls -l tw_cli
sollte folgendes zu Tage fördern:
root@server: -rwxr-x--- 1 root root
Wenn es nicht passt, wird es passend gemacht mit:
chown root:root tw_cli chmod 750 tw_cli
tw_cli muss nun noch in den Ordner /usr/local/sbin (Anpassung für Update auf Vers. 5)
cp tw_cli /usr/local/sbin/tw_cli
Nun kommt die zweite Datei an die Reihe: check_tw_cli
Hier wiederholt man als erstes die Überprüfung der Rechte. Also wieder ein
ls -l check_tw_cli
Die richtige Antwort sollte lauten
root@server: -rwxr-xr-x 1 root root
falls nicht, dann ändern mit:
chown root:root check_tw_cli chmod 755 check_tw_cli
Wenn das erledigt ist, dann muss sie in das Verzeichnis /usr/lib/nagios/plugins.
cp check_tw_cli /usr/lib/nagios/plugins/check_tw_cli
Soweit zum besorgen und kopieren. Nun folgen die Einstellungen:
Als erstes wird das Plugin konfiguriert:
Die Konfigurationsdatei erhält den Namen 3ware.cfg und wird im Verzeichnis /etc/nagios-plugins/config
erzeugt mittels
touch /etc/nagios-plugins/config/3ware.cfg
Eigentümer und Gruppe dieser Datei sollte root sein und die Rechte -rw-r–r– besitzen. Zur Sicherheit überprüfen mit
ls- l 3ware.cfg
Das Anpassen sollte kein Problem mehr sein, also Folgendes eingeben:
chown root:root /etc/nagios-plugins/config/3ware.cfg chmod 755 /etc/nagios-plugins/config/3ware.cfg
Jetzt einfach den Inhalt mit dem Editor des eigenen Vertrauens eingeben:
#check'3ware-raid' command definition define command{ command_name check_3ware-raid command_line /usr/lib/nagios/plugins/check_tw_cli -r $ARG1$ -U $ARG2$ }
Nun noch den bzw. die Services konfigurieren.
Mit einem Editor die Datei /etc/nagios3/conf.d/linuxmuster_custom.cfg
öffnen und für jedes zu prüfende RAID folgendes am Ende hinzufügen.
(Anpassung Update auf Vers. 5)
define service{ use linuxmuster-service host_name Server service_description RAID Controller 0 Unit 0 notification_options w,u,c,r check_command check_3ware-raid!0!0 }
Zur Erklärung:
host_name: Ist der Name des Servers auf dem Nagios läuft. Daher muss der Eintrag „Server“ eventuell angepasst werden.
service_description: Ist der Text der in den Meldungen von Nagios angezeigt wird.
check_command: Ruft das im vorhergehenden Schritt beschriebene Plugin mit seinen Parametern auf. Der Parameter nach dem ersten „!“ ist der erste RAID-Controller, nach dem 2. „!“ die zu prüfende Unit. In diesem Fall also die erste Unit auf dem ersten Controller. Achtung! Die Zählung beginnt mein einer Null!
Dem zufolge müssen diese Werte an die verwendete Hardware angepasst werden. Hätte man z.B. zwei Controller mit jeweils einer Unit müsste man also zwei Abschnitte in die linuxmuster_custom.cfg
einfügen.
Da diese Checks mit dem Rechten des Root ausgeführt werden müssen, muss die sudoers Datei angepasst werden. Die Datei weist extra daraufhin, dass ein gewisser Teil nicht bearbeitet werden soll, da linuxmuster-nagios-setup diese Datei verändert.
Die Datei sudoers sollte außerdem nur mit einem besonderen Befehl editiert werden, da so die Datei /etc/sudoers mit anschließendender Syntax- und Rechteprüfung bearbeitet wird. Dieser Befehl lautet:
visudo
Es wird standardmäßig der Editor Vi eingesetzt. Sollte man sich nicht mit diesem Editor auskennen, kann man auch den seiner Wahl mittels einer Shell-Variabel starten lassen. So wird zum Beispiel der Editor vom Midnight Commander gestartet:
export EDITOR=mcedit visudo
Kleiner Kommentar am Rande: Man sollte sich aber trotzdem mal mit vi befassen, es kann Situationen geben, da kommt man nicht ohne ihn aus. Eine erste geführte Berührung kann man mittels des Befehls vimtutor aufnehmen.
Doch zurück zur eigentlichen Anpassung der sudoers:
Folgende Zeile nach dem Kommentar (1. abgebildete Zeile) ergänzen: (Anpassung Update auf Vers. 5)
# Cmnd alias specification Cmnd_Alias NAGIOS_CUSTOM=/usr/local/sbin/tw_cli
und die fehlende Zeile nagios … ergänzen nach:
root ALL=(ALL) ALL nagios ALL=NOPASSWD: NAGIOS_CUSTOM
Die Änderungen abspeichern.
Damit Nagios die 3ware-RAID-Checks ausgeführt, muss die Konfiguration neu einlesen werden. Dazu folgendes eingeben:
/etc/init.d/nagios3 reload
Somit werden Nagios-Notifications nun bei Problemen der Festplatten erzeugt.
Für den Check des Status des Raid-Controllers benötigt man zwei zusätzliche Programme.
Als erstes besorgt man sich das Konsolen-Tool von LSI namens:
MegaCli
Zu bekommen ist es unter http://www.lsi.com .
Zum Zeitpunkt der Erfassung dieser Beschreibung heisst die aktuelle Datei 2.00.11_Linux_MegaCli.zip
.
Diese muss zweifach entpackt werden und enthält dann eine rpm-Datei. Das Installieren der rpm-Datei erzeugt einen Ordner /opt/MegaRAID/MegaCli/
mit dem Programm MegaCli.
Mit folgendem Befehl kann das rpm-Paket in eine tgz-Datei umgewandelt werden, danach kann man das Konsolentool MegaCli einfach nach /opt/MegaRAID kopieren, das Installieren der rpm-Datei entfällt somit:
alien -t MegaCli-2.00.11-1.i368.rpm
Der Befehl
MegaCli -h
gibt eine Unzahl von Abfrageparametern aus.
Desweiteren braucht man noch das Nagios-Plugin, das für die Tests zuständig ist. Dieses Tool speichert man in /usr/lib/nagios/plugins/
:
check_megaraid_sas
Zu finden ist es unter http://www.nagiosexchange.org
Nun muss nagios konfiguriert werden. Dazu erzeugt man eine Datei /etc/nagios3/conf.d/myraid.cfg
mit folgendem Inhalt:
define command{ command_name check_megaraid_sas command_line /usr/lib/nagios/plugins/check_megaraid_sas -s $ARG1$ } define service{ use linuxmuster-service host_name Server service_description RAID Controller notification_options w,u,c,r check_command check_megaraid_sas!1 }
Das Argument „1“ bei check_command gibt dabei die zu erwartenden hotspare-Plattenzahl an. Erklärungen der weiteren Optionen siehe oben. Eine Anpassung aller Datei-Rechte siehe auch oben.
Nun muss noch nagios erlaubt werden das Konsolentool MegaCli
mit root-Rechten zu starten, genaueres siehe oben. Dabei den Pfad des MegaCli - Tools eintragen:
visudo
Zum Schluss muss die Konfiguration von nagios neu eingelesen werden:
/etc/init.d/nagios3 reload