cinga-Web 2

Vorgaben: Wir gehen davon aus, dass Icinga2 und pnp4nagios bereits installiert sind und laufen (auch mit Datenbankanbindung) Ich habe mich entschieden Icinga-Web2 nach /usr/local/icingaweb2 zu installieren. Icinga-Web 2 benötigt zwingend eine Datenbank (entweder MySQL/Mariadb oder Postgres). Die Datenbank muss nicht auf dem gerade instalierten System liegen. (Bei mir ist dem so) Andernfalls muss man sie natürlich installieren

# Falls git noch nicht installiert sein sollte
apt-get install git
apt-get install php5 icinga2-ido-mysql 
 
git clone git://git.icinga.org/icingaweb2.git
mv icingaweb2 /usr/local/icingaweb2
./bin/icingacli setup config webserver apache --document-root /usr/local/icingaweb2/public

dabei wird der folgende Code erzeugt und angezeigt:

<code>
addgroup --system icingaweb2
usermod -a -G icingaweb2 www-dataAlias /icingaweb2 "/usr/local/icingaweb2/public"

<Directory "/usr/local/icingaweb2/public">
    Options SymLinksIfOwnerMatch
    AllowOverride None

    <IfModule mod_authz_core.c>
        # Apache 2.4
        <RequireAll>
            Require all granted
        </RequireAll>
    </IfModule>

    <IfModule !mod_authz_core.c>
        # Apache 2.2
        Order allow,deny
        Allow from all
    </IfModule>

    SetEnv ICINGAWEB_CONFIGDIR "/etc/icingaweb2"

    EnableSendfile Off

    <IfModule mod_rewrite.c>
        RewriteEngine on
        RewriteBase /icingaweb2/
        RewriteCond %{REQUEST_FILENAME} -s [OR]
        RewriteCond %{REQUEST_FILENAME} -l [OR]
        RewriteCond %{REQUEST_FILENAME} -d
        RewriteRule ^.*$ - [NC,L]
        RewriteRule ^.*$ index.php [NC,L]
    </IfModule>

    <IfModule !mod_rewrite.c>
        DirectoryIndex error_norewrite.html
        ErrorDocument 404 /error_norewrite.html
    </IfModule>
</Directory>

Dieser Code muss in /etc/apache2/conf.d/icingaweb2 kopiert werden.

a2enmod rewrite
./bin/icingacli setup config directory
./bin/icingacli setup token create
The newly generated setup token is: 738058896166a8f9

Den „Token“ müssen wir uns merken!

jetzt im Browser aufrufen http://ntech.selfhost.eu:8150/icingaweb2/setup

Den Setup-Token eingeben!

Die folgenden Konfigurations-Fragen sinngemäß richtig beantworten - Fertig!

Es könnte sein, dass man in der Datei /etc/php5/apache2/php.ini die Timezone setzen müssen.

date.timezone = Europe/Berlin

Folgende Pakete musste ich nachinstallieren:

apt-get install php5-gd php5-Imagick php5-intl php5-mysql

Fazit: die Installation geht erstaunlich leicht! :-)

 

Module PNP4Nagios

Wi egehen davon aus, dass Pnp4Nagios bereits fertig installiert ist und zuverlässig läuft. Dann muss nur die Integration von pnp4nagios in Icinga-Web 2 hergestellt werden.

Das Modul wird erst einmal angesaugt und richtig in das Modulverzeichnis von Icinga-Web2 verschoben:

git clone https://github.com/Icinga/icingaweb2-module-pnp4nagios.git
mv icingaweb2-module-pnp4nagios pnp4nagios
mv pnp4nagios /usr/local/icingaweb2/modules/

Anschließend muss man im Menu nach System → Modules navigieren und das Modul einschalten

Fertig! Einfach, oder?

 

Datenbankanbindung

Icingaweb2 erwartet die Daten über eine Datenbankverbindung, nämlich jene, die wir bereits bei der Installation von Icinga2 eingerichtet haben. Wenn nichts geht, sollte man /etc/icingaweb2/resources.ini prüfen:

[icingaweb_db]
type                = "db"
db                  = "mysql"
host                = "localhost"
port                = "3306"
dbname              = "icingaweb2"
username            = "icinga"
password            = "********"
prefix              = "icingaweb_"


[icinga_ido]
type                = "db"
db                  = "mysql"
host                = "localhost"
port                = "3306"
dbname              = "icinga2"
username            = "icinga"
password            = "********"