Nagios installieren und konfigurieren
Vorwort
Vertrauen ist gut, Kontrolle ist besser ... ein Spruch, der sich gerade was Server betrifft sich immer wieder bewahrheitet. Deswegen ist ein ordentliches Servermonitoring das A und O wenn es darum geht, die darauf laufenden Dienste auch immer im Auge zu behalten und schnell einzuschreiten, wenn es einmal wo kracht. Oder noch besser: Wenn es sogar automatisch wieder ans Laufen gebracht wird und unser Eingreifen nur noch dann gefordert ist, wenn es nicht mehr anders geht.
Um Server zu Überwachen gibt es sicherlich teure Lösungen. Aber wir wollen uns einmal daran halten, was uns die Opensource Welt an Softwaregeschenken macht. Das führt mich zu Nagios, eine freie Servermonitoring Software, die weit verbreitet ist und es eine Vielzahl an Erweiterungen mittlerweile, die einem das Leben noch leichter machen.
Mich hat es zudem interessiert, ob wir auf unserer NSLU2 auch die Chance haben, derartige Software zum Laufen zu bringen.
Dazu habe ich erstmal ein aktuelles Debian (Debian 6 Squeeze) für die ARML Plattform installiert (eine Anleitung dazu findet Ihr hier, doch macht hier nur die Basisinstallation und keine weiteren Dienste! http://myslug.de/index.php?title=Debian_6_auf_der_NSLU2
Wenn Ihr ein Basissystem installiert habt, kann es schonmal los gehen. Wir installieren zuerst ein Standard Nagios über den apt:
Nagios installieren
Um das System auf einem Debian Lenny zu installieren kann der Apt Paketmanager relativ einfach verwendet werden. Auf einem einfachen Basissystem setzt hierzu ein
apt-get install nagios3 nagios-plugins
ab. Die folgenden beiden Abfragen beantwortet einfach mit den jeweiligen Standardvorgaben:
Ansonsten dürfte das Standardsystem damit installiert sein. Der vorgegebene User innerhalb der Standardkonfiguration lautet nagiosadmin.
Ihr werdet dann noch nach einem Admin Passwort gefragt, das via htaccess den Zugriff steuert.
Ihr könnt nun Nagios mit einem Browser unter
http://IP_ODER_DEINE_DOMAINE/nagios3
aufrufen.
Solltet Ihr irgendwelche Konfigurationsdateien von Nagios ändern, dann vergesst nicht, nagios mittels
/etc/init.d/nagios3 reload
neu zu starten.
Erste Änderung nach der Installation von Nagios
Ändern des Homeverzeichnis in der /etc/passwd:
nano /etc/passwd
Suchen nach folgender Zeile:
nagios:x:104:106::/var/run/nagios3:/bin/false
Danach diese in
nagios:x:104:106::/home/nagios:/bin/bash
ändern, bzw. besser alte Zeile auskommentieren und diese neu anlegen. Dadurch wird auch für das Erste ein su auf den User nagios ermöglicht, was wir später für die Erzeugung eines privaten und öffentlichen Schlüssels benötigen.
Nun legen wir das neue Homeverzeichnis an:
mkdir /home/nagios
Die korrekten Nutzerrechte:
chown -R nagios:nagios /home/nagios
Erstes Monitoring
Im Netzwerk befindet sich der Server 192.168.0.2 der Server1 heißen soll. Diesen müssen wir erstmal Nagios bekannt machen. Dazu legen wir im /etc/nagios3/conf.d/ eine neue Konfiguration fest:
touch /etc/nagios3/conf.d/server1_nagios2.cfg
Diese editieren wir und füllen die Datei wie folgt:
define host{
use generic-host
host_name Server1
alias Server1
address 192.168.0.2
}
Diese Datei wird Dreh- und Angelpunkt für unser Monitoring werden. Aber wir bekommen so erstmal noch nichts zu sehen. Also machen wir einfach mal die Datei /etc/nagios3/conf.d/hostgroups_nagios2.cfg auf. Dort schauen wir uns einmal den folgenden Abschnitt an:
# A list of your web servers
define hostgroup {
hostgroup_name http-servers
alias HTTP servers
members localhost
}
Hier ist bereits schon der Monitoringdienst für Webserver vordefiniert. Wenn wir immer wieder die gleichen Dienste für verschiedene Server haben, können wir diese Dienst als eine Gruppe auch hier hinterlegen. Das macht Sinn, wenn es besonders viele Server sind. In unserem Fall wollen wir, dass unser Server auch ein Mitglied der http-server wird und damit ein Monitoring auf den http gemacht wird. Ändert dafür den Abschnitt wie folgt ab:
# A list of your web servers
define hostgroup {
hostgroup_name http-servers
alias HTTP servers
members localhost,Server1
}
Gleiches kann dann auch für die ssh Gruppe usw. gemacht werden. Hierzu müsst Ihr Euch einfach zunächst die fordefinierten Gruppen in dieser Konfigurationsdatei ansehen. Wenn Ihr Eure Änderungen vorgenommen und alles gespeichert habt, müsst Ihr den Nagios wieder neu starten:
/etc/init.d/nagios3 reload
Jetzt sollte Euer Server mit den ersten Diensten im Monitoring sein.