Spaces. Smartes Cloud Hosting für anspruchsvolle Webprojekte. Loslegen und Spaces testen. Von Mittwald.
Adrian Bechtold 20. Mai 2013

Toner leer? Typo3 veraltet? Monitoring mit Nagios

Nagios

Webseiten sol­len online sein. Nichts ist schlim­mer als ein Shop oder ein Portal, das gera­de nicht erreich­bar ist. Jede Sekunde ist bares Geld wert. Fast end­los vie­le Tricks und Tipps exis­tie­ren, um die­ses Ziel zu errei­chen. Genaue Überwachung ist jedoch min­des­tens genau­so wich­tig. Cloud-Dienste gibt es im Bereich Monitoring vie­le. Quasi-Standard ist jedoch eine Software, die schon eini­ge Jahre auf dem Buckel hat. Daher lau­tet unser Thema heu­te: Monitoring mit Nagios.

Schönheitspreise wird sie nicht gewin­nen: In Schwarz mit stren­gen Tabellen und schril­len Akzenten kommt Nagios daher. Das ist natür­lich kein Vergleich zu bis ins Detail durch­ge­styl­ten Cloud-Diensten wie Pingdom. Das muss es aber auch nicht sein. Es ist ein mäch­ti­ges Werkzeug für Entwickler. Hier kommt es auf Leistung und Übersicht an – nicht unbe­dingt auf das per­fek­te Erscheinungsbild. Hunderttausendfach wird die Monitoring-Software welt­weit ein­ge­setzt und hat sich zu einem Quasi-Standard ent­wi­ckelt. Das ist nicht ohne Grund so.

nagios2

Die Logik hinter Monitoring mit Nagios

Nagios ist eine klas­si­sche Server/Client-Anwendung. Einmal zen­tral auf dem Server instal­liert, kön­nen belie­bi­ge Clients über­wacht wer­den. Für Standard-Abfragen wie Ping benö­tigt der Client dabei nicht ein­mal eine spe­zi­el­le Software. Will man mehr – etwa einen Datenbankserver auf Last über­prü­fen oder spe­zi­el­le Anwendungen regel­mä­ßig mit inter­nen Daten kon­trol­lie­ren, gibt es die Nagios Plugins. Diese klei­nen Programme sor­gen dafür, ganz spe­zi­fi­sche Anwendungen mit allen zur Verfügung ste­hen­den Daten zu über­wa­chen. Nach einer Installation wird das Plugin vom Server direkt ange­steu­ert und erhält dar­über die sonst nur intern zugäng­li­chen Daten. So lässt sich von Typo3 bis zum hei­mi­schen Drucker alles über­wa­chen. Und falls ein­mal ein Plugin nicht ver­füg­bar ist, lässt es sich kur­zer­hand selbst schrau­ben.

nagios1

Ist der Dienst ein­mal in der Überwachung ein­ge­rich­tet, über­prüft der Server in fest­ge­leg­ten Intervallen, ob der Soll- mit dem Istwert über­ein­stimmt. Ist ein­mal der Ping zu hoch, die Typo3-Version ver­al­tet oder ein Drucker ohne Toner, wer­den Alarmmeldungen aus­ge­ge­ben. Das kann vie­les von der E-Mail bis zur SMS sein – fein abge­stimmt, wann wel­che Benachrichtigungen kom­men.

nagios3

Nagios Core oder Nagios XI

Seit eini­ger Zeit ist Nagios auch als Bezahlversion erhält­lich. Neben der alt­her­ge­brach­ten Core-Version gibt es nun­mehr das kom­mer­zi­el­le Nagios XI. Vor einer Installation soll­te man daher genau dar­auf ach­ten, was instal­liert wird. Vorneweg: Für einen Preis ab 2000 USD plus jähr­li­che Support-Entgelte ist XI wirk­lich nur etwas für pro­fes­sio­nel­le Anwender. Geboten wird dafür eine moder­ne Oberfläche, eine ein­fa­che Installation und natür­lich auch pro­fes­sio­nel­ler Support. Wie man es dreht und wen­det, es ist nicht eben güns­tig. Zumal es pro­fes­sio­nel­len Support auch für Nagios Core direkt vom Entwickler gibt. Eine Entscheidung für XI mag letzt­end­lich auf­grund weni­ger sub­stan­zi­el­ler Änderungen nur für weni­ge Anwender in Frage kom­men. Wir kon­zen­trie­ren uns auf Nagios Core und haben trotz feh­len­der 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 ein­fach wie bei Nagios XI ist, sind die Schritte über­sicht­lich. Ich gehe dies­mal von einem Ubuntu-System mit instal­lier­tem Apache und PHP5 aus. Das soll­te wohl nicht all­zu exo­tisch anmu­ten. Liegt die­se Voraussetzung vor, kann es ganz schnell gehen.

Zuerst brau­chen wir für Nagios einen neu­en Benutzer. Unter Root soll­te schon aus Gründen der Sicherheit nichts lau­fen.

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

Dann kön­nen wir die Installationsdateien vom Monitoring-System und dem dazu­ge­hö­ri­gen Plugin-System direkt von der Webseite in den Downloads-Ordner laden und ent­pa­cken.

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 wech­seln und die übli­chen Installationsbefehle aus­füh­ren. In den abso­lut meis­ten Fällen funk­tio­niert die Installation ohne irgend­wel­che 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 instal­liert – könn­te man mei­nen. Zu die­sem Zeitpunkt soll­ten Sie aber auf jeden Fall noch nicht Nagios star­ten oder öff­nen. Zuvor muss unbe­dingt in der Datei /usr/local/nagios/etc/objects/contacts.cfg die eige­ne E-Mail-Adresse ein­ge­ge­ben wer­den, zu der die Benachrichtungen zuge­stellt wer­den. Die ande­ren Einstellungen soll­ten für die meis­ten Konfigurationen pas­sen und müs­sen nicht geän­dert wer­den.

Jetzt muss nur noch die Konfiguration in den Apache-Webserver geschrie­ben wer­den.

make install-webconf

Das System funk­tio­niert nun schon. Nur kann jeder auf den Dienst zugrei­fen. Das ist natür­lich nicht Sinn der Sache und lei­der muss in der Core-Version die Administration noch klas­sisch über .htac­cess geschützt wer­den. Zuguterletzt initi­ie­ren 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 ähn­li­chen Ablauf das bereits zuvor her­un­ter­ge­la­de­ne System instal­liert wer­den.

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 fer­tig. Mit einem Eintrag im Startvorgang des Server sind wir zudem sicher, auch bei einem Reboot stän­dig das Monitoringsystem bereit zu haben. Zu Beginn müs­sen wir es aber ein­mal manu­ell star­ten.

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

Das waren doch eini­ge Schritte – eini­ge mehr als bei vie­len ande­ren OpenSource-Programmen – aber nun ist das Monitoring unter /nagios/ auf dem Webserver ver­füg­bar.

Fazit

Monitoring mit Nagios braucht Zeit. Die Oberfläche ist erst ein­mal wenig intui­tiv, aber mit ein wenig suchen und dem grund­sätz­li­chen Verständnis der Abläufe ist schnell der Erfolg sicht­bar. Die teu­re XI-Version braucht es mit ein biss­chen mehr Aufwand in der Installation und Abstrichen in der Grafik auch nicht. Und sei­en wir ehr­lich: Wir möch­ten doch nur, dass das Monitoring zuver­läs­sig und schnell läuft. Das schafft alle­mal die Core-Version. Und die ist für die abso­lut meis­ten Anwendungsfälle gerüs­tet.

(dpe)

Adrian Bechtold

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

2 Kommentare

  1. Vielen Dank für die­sen Artikel! Sich mal näher mit Nagios zu beschäf­ti­gen steht schon seit län­ge­rem auf mei­ner Agenda. Was mir am Artikel ein biss­chen fehlt, sind die ers­ten Schritte NACH der Installation. Ein kon­kre­tes Beispiel, wie ich z.Bsp. die Response-Zeiten mei­ner Angebote über­wa­chen kann, wäre per­fekt. Ansonten… wei­ter so…! :)

  2. Nagios Core natür­lich, aber die Nagios Oberfläche gibt es mit Check_Mk auch in funk­tio­nal und hübsch. Beides zusam­men bekommt man schön ver­packt auf http://omdistro.org. Und das Check_Mk Universum bie­tet noch viel, viel mehr. :-)

Schreibe einen Kommentar zu Juhu Antworten abbrechen

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