Login
Login-Name Passwort


 
Newsletter
Werbung

So, 22. Februar 2009, 00:00

Nagios - Automatische Überwachung einer IT-Infrastruktur, Teil 2

Erweiterungen

Logo

Nagios

Logo

Vorwort

Durch verschiedene Addons kann die Funktionsweise von Nagios erweitert werden. Die wichtigsten werden hier vorgestellt.

NDOUtils

Für spätere Updates ist es notwendig, eine Anbindung an eine Datenbank zu haben. Dafür wird hier NDOUtils benutzt, um die Nagios-Daten in eine MySQL-Datenbank zu schreiben. Dafür macht es vom Event-Broker von Nagios Gebrauch, welcher Module bei jedem Event mit hinzufügt und diese bei Bedarf ausführt. Das Modul hier heißt ndomod, das dadurch ausgeführte Programm ndo2db.

NDOUtils

cjt Systemsoftware AG

NDOUtils

Installation

Man geht zunächst standardmäßig vor:

./configure
make

Leider gibt es noch kein Installations-Skript, daher müssen die Daten manuell kopiert werden. Da wir Nagios 3 haben, kopiert man folgende Dateien:

cd /pfad/zu/ndo/
cp ./ndo2db-3x ./ndomod-3x.p /usr/local/nagios/bin # (bei Nagios 2: 2x)
cp ./ndo2db.cfg ./ndomod.cfg /usr/local/nagios/etc

In MySQL erstellt man eine Datenbank namens Nagios, in die man das vorgefertigte MySQL-Script lädt. Außerdem nehmen wir an, dass das Modul als root auf die Datenbank zugreift, daher erstellen wir nicht extra einen User.

mysql
CREATE DATABASE nagios
exit
cd /<NDO-Quelle>/db
mysql -u root -p nagios < mysql.sql

Konfiguration

Einstellungen nehmen wir nur in den Dateien ndo2db.cfg und nagios.cfg vor:

ndo2db.cfg:

db_user=root
db_pass=
db_prefix=nagios_ (eventuell schon eingestellt)

nagios.cfg (am besten unter Broker-Module, ca. Z. 250):

broker_module=/usr/local/nagios/bin/ndomod-3x.p
config_file=/usr/local/nagios/etc/ndomod.cfg

Nun noch Nagios und NDO starten:

/usr/local/nagios/bin/ndo2db-3x -c /usr/local/nagios/etc/ndo2db.cfg
/etc/init.d/nagios restart/start

Nun sollten die Daten von Nagios in die Datenbank geschrieben werden. Fehler werden in der Log-Datei nagios.log gespeichert.

Nützlich ist noch, das Startskript von Nagios anzupassen, so dass NDO auch gleich mitgestartet wird und nicht jedes Mal manuell gestartet werden muss:

vi /etc/init.d/nagios
~ Zeile 127
&#91;...&#93;
su - $NagiosUser -c "/usr/local/nagios/bin/ndo2db -c /usr/local/nagios/etc/ndo2db.cfg"
su - $NagiosUser -c "touch $NagiosVarDir/nagios.log $NagiosRetentionFile"
&#91;...&#93;
~ Zeile 147
pid_nagios
killproc_nagios nagios
killall ndo2db-3x
&#91;...&#93;

Um Fehler zu vermeiden, sollte dafür gesorgt werden, dass MySQL vor Nagios/NDO startet.

NSCA

NSCA ist ein Addon, das verteiltes Monitoring ermöglicht.

NSCA

cjt Systemsoftware AG

NSCA

Dafür wird auf jedem Remote Host Nagios installiert, welches die Checks selber ausführt und die Daten an den Mainserver schickt. Um dafür zu sorgen, dass die Daten dort immer aktuell sind, richtet man einen ocsp-command (Obsessive Compulsive Service Processor Command) ein, der nach jedem Check ein Skript ausführt. Dieses schickt die Informationen über send_nsca an NSCA auf dem Hauptserver, welches wiederum die Daten in eine External Command-Datei schreibt, die von Nagios passiv ausgelesen wird. Bei großen Firmen kann es beispielsweise so aussehen:

NSCA

cjt Systemsoftware AG

NSCA

Neben dem normalen Installationspaket auf einem Server benötigt man auch libglib-2.0 und libm­crypt auf beiden Servern. Beide lassen sich über YaST, Aptitude oder manuell installieren. Bei der manuellen Installation empfehlen wir libmcrypt Version 2.5.8, da eine ältere nicht funktionierte.

Über

./configure
make all

baut man das NSCA-Paket. In diesem sind die beiden Binaries nsca und send_nsca sowie die Konfigurationsdateien nsca.cfg und send_nsca.cfg wichtig.

Auf dem Mainserver kopiert man nsca und nsca.cfg in das Verzeichnis /usr/local/nagios/bin bzw. .../etc. Auf dem Remote-Host dasselbe mit send_nsca und send_nsca.cfg.

Kommentare (Insgesamt: 0 || Kommentieren )
Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung