Das Design von Icinga Director ist als solches darauf ausgelegt, die Handhabung der Konfiguration von Icinga 2 einfach zu machen. Es versucht, zwei Hauptzielgruppen anzusprechen:
- Benutzer mit dem Wunsch, ihr Rechenzentrum vollständig zu automatisieren
- Sysops, die bereit sind, ihren „Point &Click“-Benutzern viel Flexibilität zu gewähren
Was Icinga Director so besonders macht, ist die Tatsache, dass es versucht, beide gleichzeitig anzusprechen.
Icinga Director verwendet die Icinga 2-API, um mit Ihrem Überwachungssystem zu kommunizieren. Es wird Ihnen helfen, Ihre Konfiguration bereitzustellen, unabhängig davon, ob Sie eine Icinga-Installation mit einem einzelnen Knoten oder ein verteiltes Setup mit mehreren Mastern und Satelliten verwenden.
Um Icinga Director zu installieren, installieren Sie bitte Icinga2 und Icinga Web 2 über den folgenden Link:
So installieren und konfigurieren Sie Icinga2 und Icinga2 Web unter CentOS 8 – Unixcop
Erstellen Sie nach Abschluss der Installation von Icniga2 und Icinga Web 2 eine Datenbank und die Berechtigung für Director.
mysql -u root -p
Geben Sie nun das Passwort ein, das bei der Installation von Icinga2 und Icinga Web 2 festgelegt wurde.
Sie werden nun in die DB eintreten, Datenbank erstellen und den Benutzer und seine Berechtigung festlegen.
CREATE DATABASE director CHARACTER SET 'utf8';
GRANT ALL ON director.* TO 'director'@'localhost' IDENTIFIED BY 'director';
FLUSH PRIVILEGES;
QUIT
Erstellen Sie ein Bash-Skript und machen Sie es ausführbar. Wir werden es verwenden, um Icinga Director und seine Abhängigkeiten zu installieren.
nano create_icinga_director.sh
Fügen Sie die folgende Zeile in das Skript ein:
#!/bin/bash
ICINGAWEB_MODULEPATH="/usr/share/icingaweb2/modules"
REPO_URL="https://github.com/icinga/icingaweb2-module-director"
TARGET_DIR="${ICINGAWEB_MODULEPATH}/director"
MODULE_VERSION="1.7.2"
git clone "${REPO_URL}" "${TARGET_DIR}" --branch v${MODULE_VERSION}
MODULE_NAME=incubator
MODULE_VERSION=v0.5.0
REPO="https://github.com/Icinga/icingaweb2-module-${MODULE_NAME}"
MODULES_PATH="/usr/share/icingaweb2/modules"
git clone ${REPO} "${MODULES_PATH}/${MODULE_NAME}" --branch "${MODULE_VERSION}"
icingacli module enable "${MODULE_NAME}"
MODULE_NAME=ipl
MODULE_VERSION=v0.5.0
REPO="https://github.com/Icinga/icingaweb2-module-${MODULE_NAME}"
MODULES_PATH="/usr/share/icingaweb2/modules"
git clone ${REPO} "${MODULES_PATH}/${MODULE_NAME}" --branch "${MODULE_VERSION}"
icingacli module enable "${MODULE_NAME}"
MODULE_NAME=reactbundle
MODULE_VERSION=v0.7.0
REPO="https://github.com/Icinga/icingaweb2-module-${MODULE_NAME}"
MODULES_PATH="/usr/share/icingaweb2/modules"
git clone ${REPO} "${MODULES_PATH}/${MODULE_NAME}" --branch "${MODULE_VERSION}"
icingacli module enable "${MODULE_NAME}"
Speichern und beenden Sie die Skriptdatei.
Geben Sie mit dem folgenden Befehl das Recht zur Ausführung:
chmod +x create_icinga_director.sh
Führen Sie das Bash-Skript mit folgendem Befehl aus:
bash create_icinga_director.sh
Laden Sie das Schema für die Director-Datenbank mit dem unten aufgeführten Befehl:
mysql -u root -p director < /usr/share/icingaweb2/modules/director/schema/mysql.sql
Director-Modul aktivieren.
icingacli module enable director
Neue Ressource erstellen;
Sie müssen sich jetzt in Ihr Icinga-Web einloggen und eine neue Ressource erstellen. Gehen Sie zu Konfiguration -> Anwendung -> Ressourcen. Klicken Sie dann auf Neue Ressource erstellen, Sie müssen Ressourcenname, Datenbankname, Benutzername, Passwort und Zeichensatz festlegen. Klicken Sie danach auf Konfiguration validieren, und wenn alles in Ordnung ist, klicken Sie auf Änderungen speichern. Während des Kickstart-Prozesses von Icinga Director müssen Sie die Anmeldeinformationen für einen ApiUser angeben, Sie können den in api-users.conf definierten Root-Benutzer verwenden.
Erstellen Sie eine Datei namens director-service.sh, geben Sie die Ausführungserlaubnis und führen Sie sie aus.
nano director-permission.sh
Fügen Sie das folgende Skript in die Datei ein:
#!/bin/bash
useradd -r -g icingaweb2 -d /var/lib/icingadirector -s /bin/false icingadirector
install -d -o icingadirector -g icingaweb2 -m 0750 /var/lib/icingadirector
MODULE_PATH=/usr/share/icingaweb2/modules/director
cp "${MODULE_PATH}/contrib/systemd/icinga-director.service" /etc/systemd/system/
systemctl daemon-reload
systemctl enable icinga-director.service
systemctl start icinga-director.service
Erteilen Sie die Ausführungsberechtigung und führen Sie das Skript aus.
chmod +x director-permission.sh
bash director-permission.sh
Jetzt sehen Sie im Aktivitätsprotokoll in der Menüoption Icinga Director, dass es orangefarbene Warnungen geben wird. Wenn Sie darauf klicken, wird in der Mitte des Bildschirms eine Meldung angezeigt. Stellen Sie die ausstehenden Änderungen bereit. Klicken Sie einfach auf den Link, um sie bereitzustellen.
Jetzt können Sie die Vorteile von Director nutzen.