Icinga Web 2 mit Icinga 1.x verwenden

Aus Thomas-Krenn-Wiki
Zur Navigation springen Zur Suche springen
Hinweis: Bitte beachten Sie, dass dieser Artikel / diese Kategorie sich entweder auf ältere Software/Hardware Komponenten bezieht oder aus sonstigen Gründen nicht mehr gewartet wird.
Diese Seite wird nicht mehr aktualisiert und ist rein zu Referenzzwecken noch hier im Archiv abrufbar.

Icinga Web 2 ist ein neu entwickeltes Interface für Icinga Backends. Die Kommunikation mit Icinga erfolgt über die Idoutils-Schnittstelle. Als Backend kann sowohl Icinga 1 als auch Icinga 2 verwendet werden. Dieser Artikel zeigt anhand von Screenshots die Konfiguration von Icinga Web 2 unter Ubuntu 14.04 LTS. Zusätzlich wird erklärt wie man das neue Interface an eine bestehende Icinga 1.x Installation anbindet. Screenshots der Benutzeroberfläche finden Sie im Artikel Icinga Web 2.

Icinga 1, MySQL-Server und PHP Installation

Vorab wird Icinga, MySQL-Server und PHP installiert:

  • Icinga 1: sudo apt-get install icinga
  • MySQL Server: sudo apt-get install mysql-server
  • PHP: sudo apt-get install php5 php5-mysql

Icinga-Idoutils

Nach der Installation liefert die Überwachung des Ido2DB Prozesses noch Critical, bis die Konfiguration vorgenommen wurde.

Die Idoutils dienen Icinga Web 2 als Datenbankschnittstelle.

  • Installation: sudo apt-get install icinga-idoutils

Konfiguration der Idoutils

Ido2DB ist nun funktional und kann Icinga Web 2 als Schnittstelle zur Verfügung gestellt werden.

Führen Sie zur Konfiguration der Idoutils die folgenden Schritte durch:[1]

  1. Kopieren Sie die die Beispielkonfigurationsdatei in den Ordner /etc/icinga/modules/:
    tk@ubuntuserver:~$ sudo cp /usr/share/doc/icinga-idoutils/examples/idoutils.cfg-sample /etc/icinga/modules/idoutils.cfg
  2. Danach muss in der Icinga-Konfiguationsdatei IDO2DB=yes gesetzt werden:
    tk@ubuntuserver:~$ sudo vi /etc/default/icinga
  3. Abschließend Icinga neustarten und und ido2db starten:
    tk@ubuntuserver:~$ sudo service icinga restart
    tk@ubuntuserver:~$ sudo service ido2db start

Icinga Web 2 Installation

Die folgende Anleitung zeigt die Installation via git (da zum Zeitpunkt des Schreibens dieses Artikels noch keine Pakete für die verschiedenen Distributionen vorhanden sind).

Git Repository klonen

Icinga Web 2 wird in einen beliebigen Ordner geklont:

tk@ubuntuserver:~$ git clone git://git.icinga.org/icingaweb2.git
Cloning into 'icingaweb2'...
remote: Counting objects: 59207, done.
remote: Compressing objects: 100% (21667/21667), done.
remote: Total 59207 (delta 35946), reused 55759 (delta 33683)
Receiving objects: 100% (59207/59207), 33.58 MiB | 2.36 MiB/s, done.
Resolving deltas: 100% (35946/35946), done.
Checking connectivity... done.

Verschieben des Ordners

tk@ubuntuserver:~$sudo mv icingaweb2 /usr/share/icingaweb2

Apache Konfiguration erstellen

  1. Ein Alias für die Apache Konfiguration wird erstellt und in den Ordner /etc/apache2/sites-available/ verschoben:
    tk@ubuntuserver:~$/usr/share/icingaweb2/bin/icingacli setup config webserver apache --document-root /usr/share/icingaweb2/public > icingaweb2.conf
    tk@ubuntuserver:~$ sudo mv icingaweb2.conf /etc/apache2/sites-available/icingaweb2.conf
    tk@ubuntuserver:~$ sudo chown root:root /etc/apache2/sites-available/icingaweb2.conf
  2. Der Alias wird aktiviert und Apache2 neugestartet:
    tk@ubuntuserver:~$ sudo a2ensite icingaweb2.conf
    tk@ubuntuserver:~$ sudo a2enmod rewrite
    tk@ubuntuserver:~$ sudo service apache2 restart

User anlegen

  1. tk@ubuntuserver:~$ sudo addgroup --system icingaweb2
  2. tk@ubuntuserver:~$ sudo usermod -a -G icingaweb2 www-data

MySQL-Datenbank konfigurieren

  1. Dem Icingaweb-User die Rechte auf die Icinga-Datenbank geben:
    mysql> GRANT SELECT, INSERT, UPDATE, DELETE, DROP, CREATE VIEW, INDEX, EXECUTE ON icinga.* TO 'icingaweb'@'localhost' IDENTIFIED BY 'PASSWORT';
    Query OK, 0 rows affected (0.00 sec)
  2. icingaweb-Datenbank anlegen:
    mysql> CREATE DATABASE icingaweb;
    Query OK, 1 row affected (0.00 sec)
  3. Dem Icingaweb-User Rechte auf diese Datenbank verleihen:
    mysql> GRANT SELECT, INSERT, UPDATE, DELETE, DROP, CREATE VIEW, INDEX, EXECUTE ON icingaweb.* TO 'icingaweb'@'localhost' IDENTIFIED BY 'PASSWORT';
    Query OK, 0 rows affected (0.00 sec)
    mysql> FLUSH PRIVILEGES;
    Query OK, 0 rows affected (0.00 sec)
    mysql> quit

Icinga Web 2 Konfiguration

Die Konfiguration erfolgt über das Webinterface http://IP-Adresse/icingaweb/setup.

Token erstellen

Mithilfe der folgenden Kommandos erstellen Sie einen Token, um die Icinga Web 2 Konfiguration starten zu können:

tk@ubuntuserver:~$ sudo /usr/share/icingaweb2/bin/icingacli setup config directory --group icingaweb2;

tk@ubuntuserver:~$ sudo /usr/share/icingaweb2/bin/icingacli setup token create;

Zeitzone in der php.ini nicht gesetzt ist

Falls bei der Prüfung der benötigten Komponenten der Fehler auftritt, dass die Zeitzone nicht gesetzt ist editieren Sie PHP Konfigurationsdatei:

tk@ubuntuserver:~$ sudo vi /etc/php5/apache2/php.ini

Führen Sie anschließend folgende Schritte durch:

  • Die Variable date.timezone auskommentieren und eine passende Zeitzone definieren, z.B. date.timezone = "Europe/Berlin".
  • Anschließend Apache neuladen und in der Icinga Web 2 Oberfläche auf Refresh klicken.

Einzelnachweise

  1. Siehe auch /usr/share/doc/icinga-idoutils/README.Debian.
Foto Thomas Niedermeier.jpg

Autor: Thomas Niedermeier

Thomas Niedermeier arbeitet im Product Management Team von Thomas-Krenn. Er absolvierte an der Hochschule Deggendorf sein Studium zum Bachelor Wirtschaftsinformatik. Seit 2013 ist Thomas bei Thomas-Krenn beschäftigt und kümmert sich unter anderem um OPNsense Firewalls, das Thomas-Krenn-Wiki und Firmware Sicherheitsupdates.

Icon-Twitter.png 

Das könnte Sie auch interessieren

Icinga Graphen mit PNP unter Ubuntu 12.04 Precise
MultiTech MTD-H5-2.0 Modem Installation unter Ubuntu 16.04 LTS
Windows Host in Icinga einbinden