Installation & Konfiguration Icingaweb2 + Icinga Director

Installation der Pakete

dnf -y install icingaweb2 icingacli

Anpassung /etc/php.ini

echo date.timezone = "Europe/Berlin" >> /etc/php.ini
echo date.default_latitude = 52.5194 >> /etc/php.ini
echo date.default_longitude = 13.4067 >> /etc/php.ini
echo extension = imagick.so >> /etc/php.ini

Neustart HTTPD

 systemctl restart httpd

Icinga Token erzeugen !!! Token in einen Texteditor kopieren !!!

icingacli setup token create

Sollte der Token in einer vorherigen Installation bereits erzeugt worden sein und icingacli wirft einen Fehler. Dann muss das setup Modul erneut enabled werden.

icingacli module enable setup

Icinga2 API Setup

icinga2 api setup
icinga2 feature enable api
systemctl restart icinga2

Konfiguration MySQL Datenbank

mysql -u root -pPASSWORD -e "create database director character set 'utf8';"
mysql -u root -pPASSWORD -e "GRANT ALL on director.* to director@localhost identified by 'director';"

Konfiguration DB Zugriff Icinga Director

[root@icinga~ ]cat >> /etc/icingaweb2/resources.ini <<EOF
[Director DB] 
type = "db"
db = "mysql"
host = "localhost"
dbname = "director"
username = "director"
password = "director"
charset = "utf8"
EOF

Installation & Konfiguration Icinga Director

MODULE_VERSION="1.10.2"
ICINGAWEB_MODULEPATH="/usr/share/icingaweb2/modules"
REPO_URL="https://github.com/icinga/icingaweb2-module-director"
TARGET_DIR="${ICINGAWEB_MODULEPATH}/director"
URL="${REPO_URL}/archive/v${MODULE_VERSION}.tar.gz"

useradd -r -g icingaweb2 -d /var/lib/icingadirector -s /bin/false icingadirector
install -d -o icingadirector -g icingaweb2 -m 0750 /var/lib/icingadirector
install -d -m 0755 "${TARGET_DIR}"
wget -q -O - "$URL" | tar xfz - -C "${TARGET_DIR}" --strip-components 1
cp "${TARGET_DIR}/contrib/systemd/icinga-director.service" /etc/systemd/system/

cd /usr/share/icingaweb2/modules
cd /usr/share/icingaweb2/modules/director/schema/
mysql -u director -pdirector director < mysql.sql
touch /usr/share/icingaweb2/modules/director/config.ini
echo '[db]' >> /usr/share/icingaweb2/modules/director/config.ini
echo 'resource = "Director DB"' >> /usr/share/icingaweb2/modules/director/config.ini

icingacli module enable director
systemctl daemon-reload
systemctl enable icinga-director.service
systemctl start icinga-director.service

systemctl daemon-reload
systemctl enable php-fpm
systemctl start php-fpm
systemctl status php-fpm

Installation Module für Icingaweb2

MODULE_NAME=incubator
MODULE_VERSION=v0.20.0
MODULES_PATH="/usr/share/icingaweb2/modules"
MODULE_PATH="${MODULES_PATH}/${MODULE_NAME}"
RELEASES="https://github.com/Icinga/icingaweb2-module-${MODULE_NAME}/archive"
mkdir "$MODULE_PATH" && wget -q $RELEASES/${MODULE_VERSION}.tar.gz -O - | tar xfz - -C "$MODULE_PATH" --strip-components 1
icingacli module enable "${MODULE_NAME}"
systemctl enable icinga-director.service
chown apache.icingaweb2 /etc/icingaweb2/resources.ini
chmod 770 /etc/icingaweb2/enabledModules/
reboot

Nach dem Neustart die Weboberfläche aufrufen und den Token aus dem Texteditor einfügen

http://IP_ADRESSE/icingaweb2