Forgot your password?

Forgot your username?

All about IT, Web and Development.
By users for users.

Icinga Server Monitoring installieren und einrichten mit Ubuntu



Icinga ist eine Software zum Server Monitoring und hat sich als Fork von Nagios abgespalten, da die Entwicklung von Nagios in den letzten Jahren nur langsam voran gegangen ist.

So werden mit Icinga ein neues Webinterface, eine API und Connectoren für verschiedene Datenbanksysteme mitgeliefert.



Installation


Unter Ubuntu sollten zunächst die aktuellen Paketquellen für Icinga hinterlegt werden.

sudo apt-get install python-software-properties
sudo apt-add-repository ppa:formorer/icinga
sudo apt-add-repository ppa:formorer/icinga-web


Anschließend ein Update durchführen um die Paketquellen neu einzulesen.

sudo apt-get update

Die Installation erfolgt über den nachfolgenden Befehl.

sudo apt-get install apache2 mysql-server
sudo apt-get install icinga icinga-web

Während der Installation bietet Icinga gleich ein komfortables Setup in welchem die Kennwörter festgelegt und z.B. der Apache Webserver gleich mit installiert und konfiguriert werden kann.

Daher den Haken bei apache setzen. Somit erspart man sich die spätere manuelle Konfiguration



Anschließend wird auch nach einem Passwort für den Zugriff auf das Webinterface gefragt.


MySQL


Bei der Installation von Icinga auf Ubuntu wird auch nach der Einrichtung von MySQL gefragt. Diese sollte man auch direkt über das Setup durchführen.

Damit erspart man sich das spätere Anlegen der Benutzer und das Einspielen der Datenbank.


Konfiguration


Bevor man auf das Webinterface zugreifen kann, müssen noch einige Einstellungen getroffen werden. Andernfalls sind im Webinterface keine Hosts und Services zu erkennen.

Zunächst aktivieren wir den ido2db Deamon in der /etc/default/icinga.

IDO2DB=yes

Als nächstes muss das Modul konfiguriert werden. Hierzu die Datei /etc/icinga/modules/idoutils.cfg anlegen und mit folgendem Inhalt füllen.

define module {
    module_name    ido_mod
    path           /usr/lib/icinga/idomod.so
    module_type    neb
    args           config_file=/etc/icinga/idomod.cfg
}


Abschließend Icinga und den ido2db Daemon einmal neustarten.

sudo service ido2db restart
sudo service icinga restart


Autostart


Damit die benötigten Module bei jedem Systemstart automatisch geladen werden binden wir diese in den Autostart ein.



Zugriff


Der Zugriff auf das Webinterface ist anschließend über den Hostname bzw. die IP-Adresse des Servers möglich:

http://192.168.1.172/icinga-web




Zugangsdaten:

  • Benutzername: root

  • Kennwort: Zuvor in der Konfiguration festgelegt



Host und Service anlegen


Nun können wir auf dem Icinga Server einen neuen Host und Service anlegen. Die Konfigurationsdateien befinden sich im Verzeichnis /etc/icinga/objects.

Beispielsweise legen wir eine neue Datei gateway.cfg an.

sudo nano /etc/icinga/objects/gateway.txt

define host {
        use                     generic-host
        host_name               Gateway
        alias                   Gateway
        address                 192.168.1.1
}

define service {
        use                     generic-service
        host_name               Gateway
        service_description     HTTP
        check_command           check_http
}


Hiermit überprüfen wir die Erreichbarkeit des HTTP Dienstes auf dem Webserver mit der IP 192.168.1.1. Bevor die Änderung allerdings aktiv wird, muss Icinga einmal neugestartet werden.

sudo service icinga restart

Weitere Konfigurationsmöglichkeiten können der offiziellen Dokumentation von Icinga entnommen werden.


Fazit


Im Vergleich zum Nagios Server Monitoring ist vor allem das Webinterface von Icinga ein deutlicher Fortschritt. Weiterhin muss man sich bis jetzt keine großen Gedanken um weitere Plugins machen, da Icinga zu Nagios kompatibel ist.

Quellen: Icinga Logo, Ubuntu Logo

Michael Kostka

Fachinformatiker / Systemintegration
Ich schreibe hier regelmäßig zu den Themen Android, Web, Linux und Hardware.

Raspberry Pi Starter Kit
DataCloud

Leave a comment

I have read the privacy policy and agree to electronically store and process my input data to answer the request.