Munin und 3Ware

Hinter Munin versteckt sich ein sehr puristisches aber brauchbares Monitoring-Tool um ein ganzes Netzwerk zu überwachen. Munin besteht dabei aus zwei Teilen. Der Node und einem Crawler, der zyklisch (5 Minuten) alle bekannten Nodes abfragt. Danach werden Graphen von den gesammelten Daten über die Zeiträume Tag, Woche, Monat und Jahr erzeugt. Damit lassen sich gut Trends und Ungereimtheiten ablesen. Dazu wird noch rudimentäres „Alerting“ geboten. Über/Unter-schreitet ein „getrackter“ Wert ein vorgegebenes Limit, wird eine Warnmail ausgesendet. Zudem wird der Wert Farblich zusätzlich markiert, so das man beim Kontrollieren der Status-Webseite sofort sieht, das was im Argen liegt.

Die Node bietet dabei von Start weg überhaupt keine Funktionalität. Alles was man angezeigt bekommen will, muss via Plugins geliefert werden. Die Communitie bietet hier jedoch ein extrem umfangreiches Repertoire an schon vorhanden Plugins. Darunter auch Plugins die SNMP Quellen abfragen.

Nun bieten 3Ware einen SNMP Zugang zu allen RAID-Daten. Nur ist dies leider sehr umständlich. Da sich Plugins sehr einfach schreiben lassen, hab ich einfach drei Plugins geschrieben, die mir die wichtigsten Daten extrahieren und in Munin zur Verfügung stellen. Ich benutzte dazu „tw_cli“ welches von 3Ware mitgeliefert wird. Anschließend wird dessen Output ausgewertet und dargestellt.

die Sources gibt es hier:

  • RAID-Status: Liefert den Status aller im System bekannten RAID-Units
  • RAID-Unit-Status: Listet den Status aller physikalisch Einheiten einer RAID-Unit.
  • BBU – Status: Liefert den Status der installierten BBUs

3Ware installation

Das erste was nach der Installation der Hardware auffällt ist, dass der Boot-Vorgang extrem viel länger dauert. Beim ersten Start hat es locker 30 Sek gebraucht, bis das BIOS des RAID-Controllers durch war und mein Server endlich ins Linux gebootet hat. In den folgenden Boots wird das nicht viel besser.

Die Installation des 9650 ist unter Ubuntu 9.04 denkbar einfach. Auch alle anderen Distributionen werden (wenn auch nicht offiziell) ohne Probleme unterstützt. Einzig die Kernelversion 2.6.14  oder die entsprechenden Treibermodule werden vorausgesetzt. 3Ware bietet drei Möglichkeiten den RAID-Controller zu administrieren. BIOS, CLI und die 3DM -genannte webbasierte RemoteManagement – Konsole. Die Installation erfolgt problemlos, einzig eine „echte“ JavaRuntime und das Programm „bc“ werden benötigt. Beide sind aber im offiziellen Repository enthalten und man gefährdet seinen Server nicht mit Fremdquellen. Ein „kleines“ „aptitude install“ vorneweg und die Installation kann beginnen.

Hat man eine grafische Oberfläche kann man das Setup einfach so starten, steht einem nur ein Kommandozeilen-Terminal zur Verfügung muss man noch den Parameter „-console“ anhängen. Anschließend führt ein Assistent durch die Installation und nach „wenigen“ Minuten steht einem der RAID-Controller in vollen Funktionsumfang zur Verfügung.

sudo aptitute install bc
tar xfvz 3DM2_CLI-Linux-x86_64-9.5.2.tgz
sudo ./setupLinux_x64.bin -consol

Jetzt wird man durch den Assistenten geführt. Das dauert wie gesagt ein paar Minuten. Anschließend ist alles nach Wunsch installiert und konfiguriert. Will man nachträglich etwas ändern so findet man das Config-File unter /etc/3dm2/

Man muss nur noch dafür sorgen, dass die Remote – Konsole auch automatisch gestartet wird. Leider ist der mitgelieferte Startscript, der auch brav unter /etc/init.d abgelegt wird, nicht ganz Standardkonform. Es fehlen die Angaben zu Required-Start und Required-Stop. Ergo schnell die Datei mit einem Editor der Wahl geöffnet und den Header angepasst.

#!/bin/sh
#
# 3dm2:         Starts the 3ware daemon
#
# Author:       Michael Benz

#
# Default-Start: 3 4 5
# Default-Stop: S 0 1 6
# Required-Start:  $network $remote_fs $syslog
# Required-Stop:   $network $remote_fs $syslog
# Provides: tdm2
# Short-Description: 3ware Daemon
# Description: Start the 3dm2 application which logs the current state
#              of the 3ware DiskSwitch controller card, and then polls
#              for state changes.
#
# config: /etc/3dm2/3dm2.conf

Zeile 9 und 10 sind von mir eingefügt. Anschließend folgenden Befehl ausführen.

sudo update-rc.d tdm2 defaults

Nun startet die Remote-Konsole automatisch beim Systemstart mit.
Für den ersten Test startet man entweder neu oder ruft den Script manuell auf.

/etc/init.d/tdm2 start

Wenn man die Konsole aufrufen will muss man beachten, dass nur HTTPS anfragen beantwortet werden. Nach dem Login (Standartpassword: 3ware) sollte man sofort die Passwörter ändern und ein BIOS-Update einspielen. letzteres bedarf leider eines Neustarts.

Anschließend kann man seine RAID-Arrays konfigurieren.