Zabbix HP Smartarray raidcontroller ueberwachen

hpacucli downloaden und installieren

Wie bei fast allen Raidcontrollern braucht Zabbix ein Tool des Herstellers, um den Status des Raids und der angeschlossenen Festplatten auszulesen. Das entsprechende Werkzeug von Hewlett-Packard für die sogenannten Smart Array Controller nennt sich hpacucli.

Versuchen Sie hpacucli von folgender Seite downzuloaden http://bit.ly/1ayRDmu, oder suchen Sie auf den Downloadseiten von hp.com nach Treiberdownloads für Ihren Kontroller. Debian- und Ubuntu-Benutzer wählen den Download für Red Hat Enterprise Linux 6 Server aus.

Unter vielen Downloads ist auch das Kommandozeilentool hpcacucli versteckt.

Direkter Download für HP Array Configuration Utility CLI for Linux (ohne Gewähr) ftp://ftp.hp.com/pub/softlib2/software1/pubsw-linux/p1257348637/v80070/

wget ftp://ftp.hp.com/pub/softlib2/software1/pubsw-linux/p1257348637/v80070/hpacucli-9.40-12.0.x86_64.rpm

Nutzer von Red Hat, CentOS und SUSE installieren das Paket ganz einfach per rpm -i hpacucli-9.40-12.0.x86_64.rpm. Auf Ubuntu- oder Debiansystemen können das RPM-Paket mit alien konvertieren und dann installieren

root@server:/tmp# alien hpacucli-9.40-12.0.x86_64.rpm 
Warning: Skipping conversion of scripts in package hpacucli: postinst postrm preinst prerm
Warning: Use the --scripts parameter to include the scripts.
hpacucli_9.40-13_amd64.deb generated
root@server:/tmp# dpkg -i hpacucli_9.40-13_amd64.deb 
Vormals nicht ausgewähltes Paket hpacucli wird gewählt.
(Lese Datenbank ... 62771 Dateien und Verzeichnisse sind derzeit installiert.)
Entpacken von hpacucli (aus hpacucli_9.40-13_amd64.deb) ...
hpacucli (9.40-13) wird eingerichtet ...
Trigger für man-db werden verarbeitet ...

Alternativ können Ubuntu und Debian-Nutzer auch das DEB Repository von HP.COM verwenden.

echo "deb http://downloads.linux.hp.com/SDR/downloads/ProLiantSupportPack squeeze/current non-free" \
> /etc/apt/sources.list.d/HP-ProLiantSupportPack.list
wget -q -O - http://downloads.linux.hp.com/SDR/downloads/ProLiantSupportPack/GPG-KEY-ProLiantSupportPack | \
apt-key add -

Testen Sie nun mit folgendem Kommando, ob Sie den Status des Raids und der Festplatten auslesen können.

hpacucli ctrl all show config detail

Ausgabe von hpacucli an Zabbix-Server senden

Die Ausgabe von hpacucli müssen Sie nun mit einem Skript parsen und die relevaten Information per zabbix_sender an den Zabbix-Server oder Proxy übertragen. Unter http://lab4.org/files/hpacucli2zabbix.pl finden Sie ein Perl-Skript, welches diese Aufgabe übernimmt. Laden Sie das Skript herunter und speichern Sie es zum Beispiel in /opt/compaq/hpacucli. Öffnen Sie das Skript mit einem Editor und passen Sie die IP-Adresse Ihres Zabbix-Servers an.

Richten Sie außerdem einen Cronjob ein, der das Skript zum Beispiel alle 30 Minuten ausführt.

# /etc/cron.d/hpacucli2zabbix
# Send Status from HP SmartyArray to Zabbix-Server or proxy
*/30 * * * * root /opt/compaq/hpacucli/hpacucli2zabbix.pl
hpacucli2zabbix.pl sendet die Ausgabe von hpacucli an Zabbix.

Items und Trigger einrichten

Wenn das Perl-Skript bereit zum Senden der Daten ist, können Sie Items und Trigger einrichten. Die Items müssen vom Typ Zabbix-Trapper sein. Stellen Sie sicher, dass Ihr Zabbix-Server Trapper-Daten empfängt. (Siehe Zabbix_Daten_per_Zabbix-Sender_schicken) Ein fertiges Template bestehend aus Items und Trigger können Sie sich unter http://lab4.org/files/hp_smart_array_templates.xml herunterladen.

Items, welche die Daten von zabbix_sender "empfangen".


Richten Sie mit der Funktion nodata() einen Trigger ein, der anschlägt, wenn Zabbix Sender keine Daten schickt. Sonst wähnen Sie sich in einer falschen Sicherheit.
Trigger, welche den Status eines Smart Arrays überwachen.