Anzeige
Smartes Cloud Hosting für anspruchsvolle Projekte.
↬ Loslegen und Spaces testen ↬ Jetzt testen!
Adrian Bechtold 20. Mai 2013

Toner leer? Typo3 veraltet? Monitoring mit Nagios

Nagios

Webseiten sollen online sein. Nichts ist schlimmer als ein Shop oder ein Portal, das gerade nicht erreichbar ist. Jede Sekunde ist bares Geld wert. Fast endlos viele Tricks und Tipps existieren, um dieses Ziel zu erreichen. Genaue Überwachung ist jedoch mindestens genauso wichtig. Cloud-Dienste gibt es im Bereich Monitoring viele. Quasi-Standard ist jedoch eine Software, die schon einige Jahre auf dem Buckel hat. Daher lautet unser Thema heute: Monitoring mit Nagios.

Anzeige

Schönheitspreise wird sie nicht gewinnen: In Schwarz mit strengen Tabellen und schrillen Akzenten kommt Nagios daher. Das ist natürlich kein Vergleich zu bis ins Detail durchgestylten Cloud-Diensten wie Pingdom. Das muss es aber auch nicht sein. Es ist ein mächtiges Werkzeug für Entwickler. Hier kommt es auf Leistung und Übersicht an – nicht unbedingt auf das perfekte Erscheinungsbild. Hunderttausendfach wird die Monitoring-Software weltweit eingesetzt und hat sich zu einem Quasi-Standard entwickelt. Das ist nicht ohne Grund so.

nagios2

Anzeige

Die Logik hinter Monitoring mit Nagios

Nagios ist eine klassische Server/Client-Anwendung. Einmal zentral auf dem Server installiert, können beliebige Clients überwacht werden. Für Standard-Abfragen wie Ping benötigt der Client dabei nicht einmal eine spezielle Software. Will man mehr – etwa einen Datenbankserver auf Last überprüfen oder spezielle Anwendungen regelmäßig mit internen Daten kontrollieren, gibt es die Nagios Plugins. Diese kleinen Programme sorgen dafür, ganz spezifische Anwendungen mit allen zur Verfügung stehenden Daten zu überwachen. Nach einer Installation wird das Plugin vom Server direkt angesteuert und erhält darüber die sonst nur intern zugänglichen Daten. So lässt sich von Typo3 bis zum heimischen Drucker alles überwachen. Und falls einmal ein Plugin nicht verfügbar ist, lässt es sich kurzerhand selbst schrauben.

nagios1

Ist der Dienst einmal in der Überwachung eingerichtet, überprüft der Server in festgelegten Intervallen, ob der Soll- mit dem Istwert übereinstimmt. Ist einmal der Ping zu hoch, die Typo3-Version veraltet oder ein Drucker ohne Toner, werden Alarmmeldungen ausgegeben. Das kann vieles von der E-Mail bis zur SMS sein – fein abgestimmt, wann welche Benachrichtigungen kommen.

nagios3

Nagios Core oder Nagios XI

Seit einiger Zeit ist Nagios auch als Bezahlversion erhältlich. Neben der althergebrachten Core-Version gibt es nunmehr das kommerzielle Nagios XI. Vor einer Installation sollte man daher genau darauf achten, was installiert wird. Vorneweg: Für einen Preis ab 2000 USD plus jährliche Support-Entgelte ist XI wirklich nur etwas für professionelle Anwender. Geboten wird dafür eine moderne Oberfläche, eine einfache Installation und natürlich auch professioneller Support. Wie man es dreht und wendet, es ist nicht eben günstig. Zumal es professionellen Support auch für Nagios Core direkt vom Entwickler gibt. Eine Entscheidung für XI mag letztendlich aufgrund weniger substanzieller Änderungen nur für wenige Anwender in Frage kommen. Wir konzentrieren uns auf Nagios Core und haben trotz fehlender schöner Grafik eine Menge Funktionalität im Gepäck.

nagios4

Monitoring mit Nagios: die Installation des Systems

Keine Sorge: Auch wenn der Einstieg bei der Core-Version nicht ganz so einfach wie bei Nagios XI ist, sind die Schritte übersichtlich. Ich gehe diesmal von einem Ubuntu-System mit installiertem Apache und PHP5 aus. Das sollte wohl nicht allzu exotisch anmuten. Liegt diese Voraussetzung vor, kann es ganz schnell gehen.

Zuerst brauchen wir für Nagios einen neuen Benutzer. Unter Root sollte schon aus Gründen der Sicherheit nichts laufen.

/usr/sbin/useradd -m -s /bin/bash nagios
passwd GEHEIMESNAGIOSPASSWORT #Bitte ändern

Dann können wir die Installationsdateien vom Monitoring-System und dem dazugehörigen Plugin-System direkt von der Webseite in den Downloads-Ordner laden und entpacken.

mkdir ~/download
cd ~/download
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nagios-3.5.0.tar.gz
wget http://prdownloads.sourceforge.net/sourceforge/nagiosplug/nagios-plugins-1.4.16.tar.gz
tar xzf nagios-3.5.0.tar.gz

Nun heißt es nur noch in das Verzeichnis von Nagios wechseln und die üblichen Installationsbefehle ausführen. In den absolut meisten Fällen funktioniert die Installation ohne irgendwelche Komplikationen.

cd nagios-3.5.0
./configure --with-command-group=nagcmd
make all
make install
make install-init
make install-config
make install-commandmode

Und schon ist Nagios installiert – könnte man meinen. Zu diesem Zeitpunkt sollten Sie aber auf jeden Fall noch nicht Nagios starten oder öffnen. Zuvor muss unbedingt in der Datei /usr/local/nagios/etc/objects/contacts.cfg die eigene E-Mail-Adresse eingegeben werden, zu der die Benachrichtungen zugestellt werden. Die anderen Einstellungen sollten für die meisten Konfigurationen passen und müssen nicht geändert werden.

Jetzt muss nur noch die Konfiguration in den Apache-Webserver geschrieben werden.

make install-webconf

Das System funktioniert nun schon. Nur kann jeder auf den Dienst zugreifen. Das ist natürlich nicht Sinn der Sache und leider muss in der Core-Version die Administration noch klassisch über .htaccess geschützt werden. Zuguterletzt initiieren wir einen Restart des Apache und sind soweit bereit.

htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
/etc/init.d/apache2 reload

Für die Funktion der Plugins muss nur noch im ähnlichen Ablauf das bereits zuvor heruntergeladene System installiert werden.

cd ~/download
tar xzf nagios-plugins-1.4.16.tar.gz
cd nagios-plugins-1.4.16
./configure --with-nagios-user=nagios --with-nagios-group=nagios
make
make install

Jetzt sind wir fertig. Mit einem Eintrag im Startvorgang des Server sind wir zudem sicher, auch bei einem Reboot ständig das Monitoringsystem bereit zu haben. Zu Beginn müssen wir es aber einmal manuell starten.

ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios
/etc/init.d/nagios start

Das waren doch einige Schritte – einige mehr als bei vielen anderen OpenSource-Programmen – aber nun ist das Monitoring unter /nagios/ auf dem Webserver verfügbar.

Fazit

Monitoring mit Nagios braucht Zeit. Die Oberfläche ist erst einmal wenig intuitiv, aber mit ein wenig suchen und dem grundsätzlichen Verständnis der Abläufe ist schnell der Erfolg sichtbar. Die teure XI-Version braucht es mit ein bisschen mehr Aufwand in der Installation und Abstrichen in der Grafik auch nicht. Und seien wir ehrlich: Wir möchten doch nur, dass das Monitoring zuverlässig und schnell läuft. Das schafft allemal die Core-Version. Und die ist für die absolut meisten Anwendungsfälle gerüstet.

(dpe)

Adrian Bechtold

arbeitet als Kommunikationsberater für IT-Unternehmen und bloggt gerne über Webtechnologien.

2 Kommentare

  1. Vielen Dank für diesen Artikel! Sich mal näher mit Nagios zu beschäftigen steht schon seit längerem auf meiner Agenda. Was mir am Artikel ein bisschen fehlt, sind die ersten Schritte NACH der Installation. Ein konkretes Beispiel, wie ich z.Bsp. die Response-Zeiten meiner Angebote überwachen kann, wäre perfekt. Ansonten… weiter so…! :)

  2. Nagios Core natürlich, aber die Nagios Oberfläche gibt es mit Check_Mk auch in funktional und hübsch. Beides zusammen bekommt man schön verpackt auf http://omdistro.org. Und das Check_Mk Universum bietet noch viel, viel mehr. :-)

Schreibe einen Kommentar zu Juhu Antworten abbrechen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.