Im letzten Beitrag haben wir behandelt, wie Icinga 2 auf CentOS 8 / RHEL 8 installiert wird. Wir fahren nun mit der Installation von Icinga Web 2 fort, einem Webinterface für Icinga 2, wo Sie alle Ihre Server überwachen können.
Hier sehen wir, wie Icinga Web 2 CentOS 8 / RHEL 8 installiert wird.
Installieren Sie Icinga Web 2
Installieren Sie PHP und PHP-Erweiterungen
Installieren Sie das PHP (v7.2)-Paket und die Erweiterungen für Icinga Web 2.
LESEN: So installieren Sie PHP 7.4/7.3 auf CentOS 8/RHEL 8
dnf install -y php php-json php-xml php-intl php-common php-pdo php-mysqlnd php-cli php-mbstring php-fpm php-gd php-zip php-ldap
Installieren Sie Icinga Web 2
Verwenden Sie den Befehl yum, um das Icinga Web 2-Paket zusammen mit der Icinga-CLI und dem Apache-Webserver zu installieren.
dnf install -y icingaweb2 icingacli httpd
Starten Sie den Apache-Webserver und PHP FPM.
systemctl start httpd
systemctl start php-fpm
Aktivieren Sie den Apache-Webserver und PHP FPM, um automatisch beim Systemstart zu starten.
systemctl enable httpd
systemctl enable php-fpm
SELinux
Wenn auf Ihrem System SELinux aktiviert ist, installieren Sie das folgende Paket, um die SELinux-Richtlinie für Icinga Web 2 festzulegen.
dnf install -y icingaweb2-selinux
Firewall
Erlauben Sie dem HTTP-Datenverkehr in der Firewall den Zugriff auf die Icinga-Weboberfläche von externen Maschinen.
firewall-cmd --permanent --add-service=http
firewall-cmd --reload
Icinga Web 2 einrichten
Rufen Sie die untenstehende URL auf, um auf den Icinga Web 2-Setup-Assistenten zuzugreifen, der Sie durch alle Schritte für die Installation von Icinga Web 2 führt.
http://ihre.ip.addr.ess/icingaweb2/setupAus Sicherheitsgründen müssten Sie das Token generieren, um mit der Installation von Icinga Web 2 zu beginnen.
icingacli setup token create
Output: The newly generated setup token is: 08423344cc1ce96f
Kopieren Sie das generierte Token, fügen Sie es auf der Einrichtungsseite ein und klicken Sie dann auf Weiter .

Wählen Sie im nächsten Bildschirm die Module aus, um sie zu aktivieren und zu konfigurieren. Diese Module wurden während der Installation von Icinga 2 installiert. Klicken Sie dann auf Weiter .

Die folgende Seite zeigt Informationen über das System, PHP und erforderliche PHP-Erweiterungen.


Die PHP-Erweiterung von Image Magick ist nicht im Betriebssystem-Repository verfügbar. Folgen Sie dem unten stehenden Link, um es zu installieren.
LESEN: So installieren Sie PHP Imagick auf CentOS 8 / RHEL 8
Für RHEL 8 entscheiden Sie sich entweder dafür, es zu installieren (was gegen die Red Hat-Richtlinien verstößt) oder fahren Sie fort, ohne die PHP-Erweiterung von Image Magick zu installieren.Starten Sie nach der Installation des PHP-Moduls für Imagick die Apache- und PHP-FPM-Dienste neu und klicken Sie auf Aktualisieren Schaltfläche und klicken Sie dann auf Weiter oder klicken Sie einfach auf Weiter wenn Sie das PHP-Modul Imagick nicht installieren.
systemctl restart httpd
systemctl restart php-fpm

Auf der nächsten Seite konfigurieren wir die Icinga Web 2-Authentifizierung. Icinga Web 2 unterstützt Active Directory, LDAP und lokale Authentifizierungsmechanismen.
Hier werden wir für diese Demo ein lokales Icinga Web 2-Benutzerkonto erstellen. Wählen Sie also den Authentifizierungstyp als Datenbank aus und klicken Sie auf Weiter .

Melden Sie sich beim MySQL/MariaDB-Server an.
mysql -u root -p
Erstellen Sie eine Datenbank zum Speichern von Authentifizierungsdetails.
CREATE DATABASE icingaweb2db;
grant all privileges on icingaweb2db.* to icingaweb2@localhost identified by 'icinga123';
quit
Geben Sie auf der folgenden Seite die Datenbankdetails ein und klicken Sie dann auf Weiter .

Klicken Sie auf Weiter .

Geben Sie den gewünschten Benutzernamen und das Passwort für das Administratorkonto von Icinga Web 2 ein.

Wählen Sie aus, wo die anwendungs- und protokollierungsbezogenen Konfigurationen gespeichert werden sollen. Klicken Sie auf Weiter .

Überprüfen Sie Ihre Einstellungen auf dem nächsten Bildschirm.


Klicken Sie auf Weiter .
Klicken Sie auf Weiter auf der Konfiguration des Überwachungsmoduls für die Icinga Web 2 Seite.

Das Überwachungs-Backend lässt Icinga Web 2 die Überwachungsinformationen aus der Icinga 2-Datenbank abrufen. Hier verwenden wir IDO.

Geben Sie auf der folgenden Seite die IDO-Datenbankdetails ein und klicken Sie dann auf Weiter .
Die IDO-Datenbank wurde während der Installation von Icinga 2 erstellt, klicken Sie HIER, um die Datenbankdetails zu erhalten.
Befehlstransport einrichten
Auf dieser Seite erfahren Sie, wie Sie Befehle zur Überwachung an Ihren Remote-Server senden möchten.
Icinga Web 2 unterstützt Local Command File, Remote Command File und Icinga 2 API als Befehlstransport.
Hier werden wir für diese Demo Icinga Web 2 mit Einzelbefehlstransport konfigurieren. Wählen Sie einen der folgenden Befehle transport
- Lokale Befehlsdatei
- Icinga-2-API (empfohlen)
- Remote-Befehlsdatei
Sie können in Icinga Web 2 mehrere Befehlstransportmodi definieren.
Lokale Befehlsdatei

Icinga-2-API
Führen Sie den folgenden Befehl aus, um die Icinga 2-API einzurichten.
icinga2 api setup
Output: information/cli: Generating new CA. information/base: Writing private key to '/var/lib/icinga2/ca//ca.key'. information/base: Writing X509 certificate to '/var/lib/icinga2/ca//ca.crt'. information/cli: Generating new CSR in '/var/lib/icinga2/certs//centos8.itzgeek.local.csr'. information/base: Writing private key to '/var/lib/icinga2/certs//centos8.itzgeek.local.key'. information/base: Writing certificate signing request to '/var/lib/icinga2/certs//centos8.itzgeek.local.csr'. information/cli: Signing CSR with CA and writing certificate to '/var/lib/icinga2/certs//centos8.itzgeek.local.crt'. information/pki: Writing certificate to file '/var/lib/icinga2/certs//centos8.itzgeek.local.crt'. information/cli: Copying CA certificate to '/var/lib/icinga2/certs//ca.crt'. information/cli: Adding new ApiUser 'root' in '/etc/icinga2/conf.d/api-users.conf'. information/cli: Reading '/etc/icinga2/icinga2.conf'. information/cli: Enabling the 'api' feature. Enabling feature api. Make sure to restart Icinga 2 for these changes to take effect. information/cli: Updating 'NodeName' constant in '/etc/icinga2/constants.conf'. information/cli: Created backup file '/etc/icinga2/constants.conf.orig'. information/cli: Updating 'ZoneName' constant in '/etc/icinga2/constants.conf'. information/cli: Backup file '/etc/icinga2/constants.conf.orig' already exists. Skipping backup. Done. Now restart your Icinga 2 daemon to finish the installation!
Holen Sie sich die API-Benutzerdetails aus der Datei /etc/icinga2/conf.d/api-users.conf.
cat /etc/icinga2/conf.d/api-users.conf
Output: /** * The ApiUser objects are used for authentication against the API. */ object ApiUser "root" { password = "c6bbfdd8afceceb1" // client_cn = "" permissions = [ "*" ] }
Starten Sie den Icinga 2-Dienst neu.
systemctl restart icinga2
Verwenden Sie den obigen Benutzernamen und das Passwort auf der folgenden Befehlstransportseite.

Geben Sie die Details der Variablen ein, die vor schädlichen geschützt werden sollen.

Überprüfen Sie Ihre Überwachungskonfigurationen.

Icinga Web 2 wurde erfolgreich eingerichtet. Klicken Sie auf Bei Icinga Web 2 anmelden .

Zugriff auf Icinga Web 2
Melden Sie sich mit dem zuvor erstellten Administratorkonto bei Icinga Web 2 an.

Sie sollten jetzt das Icinga Web 2-Dashboard erhalten.

Schlussfolgerung
Das ist alles. In unserem nächsten Artikel werden wir entfernte Linux-Clients zu Icinga 2 hinzufügen.