So installierst du die Icinga 2 Überwachungssoftware unter Debian 11

Icinga2 ist ein kostenloses, quelloffenes und eines der beliebtesten Netzwerküberwachungstools. Es ist in PHP und C++ geschrieben und ermöglicht es dir, Netzwerkressourcen zu überwachen, Ausfälle zu melden und Leistungsdaten für Berichte zu generieren. Es ist in der Lage, verschiedene Protokolle wie SMTP, POP3, HTTP, NNTP, Ping, CPU-Last, Festplattennutzung, Switches, Router und mehr zu überwachen. Es besteht aus zwei Stacks: Icinga2 und Icinga Web 2. Icinga2 wird als Überwachungsserver verwendet, während Icinga Web 2 die Weboberfläche für die weitere Überwachung ist.

In diesem Artikel zeige ich dir, wie du den Icinga2 Monitoring Server unter Debian 11 installierst.

Voraussetzungen

  • Ein Server, auf dem Debian 11 läuft.
  • Ein Root-Passwort ist auf dem Server konfiguriert.

LAMP-Server installieren

Zuerst musst du den Apache Webserver, MariaDB, PHP und andere benötigte Erweiterungen auf deinem Server installieren. Du kannst sie alle mit dem folgenden Befehl installieren:

apt-get install apache2 mariadb-server php libapache2-mod-php php-curl php-gd php-mbstring php-xml php-xmlrpc php-soap php-intl php-zip php-cli php-mysql php-common php-opcache php-pgsql php-gmp php-imagick -y

Sobald alle Pakete installiert sind, bearbeite die Datei php.ini und ändere einige Einstellungen:

nano /etc/php/7.4/apache2/php.ini

Ändere die folgenden Zeilen:

memory_limit = 256M 
post_max_size = 64M
upload_max_filesize = 100M	
max_execution_time = 300
default_charset = "UTF-8"
date.timezone = "Asia/Kolkata"
cgi.fix_pathinfo=0

Speichere und schließe die Datei und starte den Apache-Dienst neu, um die Änderungen zu übernehmen:

systemctl restart apache2

Als Nächstes musst du ein MariaDB Root-Passwort festlegen und die Installation absichern. Das kannst du tun, indem du das folgende Skript ausführst:

mysql_secure_installation

Beantworte alle Fragen wie unten gezeigt:

Enter current password for root (enter for none):
OK, successfully used password, moving on...
Set root password? [Y/n] Y
Remove anonymous users? [Y/n] Y
Disallow root login remotely? [Y/n] Y
Remove test database and access to it? [Y/n] Y
Reload privilege tables now? [Y/n] Y

Icinga2 installieren

Standardmäßig ist das Icinga2-Paket im Standard-Repository von Debian 11 enthalten. Du kannst es mit dem folgenden Befehl installieren:

apt-get install icinga2 monitoring-plugins -y

Sobald alle Pakete installiert sind, starte Icinga2 und aktiviere es, damit es beim Neustart des Systems gestartet wird:

systemctl start icinga2
systemctl enable icinga2

Um den Status von Icinga2 zu überprüfen, führe den folgenden Befehl aus:

systemctl status icinga2

Beispielhafte Ausgabe:

? icinga2.service - Icinga host/service/network monitoring system
     Loaded: loaded (/lib/systemd/system/icinga2.service; enabled; vendor preset: enabled)
     Active: active (running) since Sun 2021-10-03 13:40:11 UTC; 27s ago
       Docs: https://icinga.com/docs/icinga2/latest/
    Process: 20727 ExecStartPre=/usr/lib/icinga2/prepare-dirs /usr/lib/icinga2/icinga2 (code=exited, status=0/SUCCESS)
   Main PID: 20734 (icinga2)
      Tasks: 15 (limit: 2341)
     Memory: 12.7M
        CPU: 1.769s
     CGroup: /system.slice/icinga2.service
             ??20734 /usr/lib/x86_64-linux-gnu/icinga2/sbin/icinga2 --no-stack-rlimit daemon -e
             ??20748 /usr/lib/x86_64-linux-gnu/icinga2/sbin/icinga2 --no-stack-rlimit daemon -e
             ??20751 /usr/lib/x86_64-linux-gnu/icinga2/sbin/icinga2 --no-stack-rlimit daemon -e
             ??21621 /usr/lib/nagios/plugins/check_ping -6 -H ::1 -c 200,15% -w 100,5%
             ??21622 /bin/ping -6 -n -U -w 10 -c 5 ::1

Oct 03 13:40:11 debian11 icinga2[20748]: [2021-10-03 13:40:11 +0000] information/ConfigItem: Instantiated 1 Endpoint.
Oct 03 13:40:11 debian11 icinga2[20748]: [2021-10-03 13:40:11 +0000] information/ConfigItem: Instantiated 1 FileLogger.
Oct 03 13:40:11 debian11 icinga2[20748]: [2021-10-03 13:40:11 +0000] information/ConfigItem: Instantiated 235 CheckCommands.
Oct 03 13:40:11 debian11 icinga2[20748]: [2021-10-03 13:40:11 +0000] information/ScriptGlobal: Dumping variables to file '/var/cache/icinga2/i>
Oct 03 13:40:11 debian11 systemd[1]: Started Icinga host/service/network monitoring system.
Oct 03 13:40:11 debian11 icinga2[20748]: [2021-10-03 13:40:11 +0000] information/ConfigItem: Triggering Start signal for config items
Oct 03 13:40:11 debian11 icinga2[20748]: [2021-10-03 13:40:11 +0000] information/FileLogger: 'main-log' started.
Oct 03 13:40:11 debian11 icinga2[20748]: [2021-10-03 13:40:11 +0000] information/NotificationComponent: 'notification' started.
Oct 03 13:40:11 debian11 icinga2[20748]: [2021-10-03 13:40:11 +0000] information/CheckerComponent: 'checker' started.
Oct 03 13:40:11 debian11 icinga2[20748]: [2021-10-03 13:40:11 +0000] information/ConfigItem: Activated all objects.

Als nächstes musst du das MySQL-Plugin für Icinga2 installieren. Du kannst es mit dem folgenden Befehl installieren:

apt-get install icinga2-ido-mysql -y

Während der Installation wirst du gefragt, ob du die ido-mysql-Funktion von Icinga 2 aktivieren möchtest:

MySQL-Server verwenden

Wähle Ja und drücke Enter. Du wirst gefragt, ob du eine Datenbank für Icinga2 erstellen möchtest.

ido mysql konfigurieren

Wähle Ja und drücke die Eingabetaste. Du wirst aufgefordert, das Passwort für die Icinga2-Anwendung festzulegen:

MySQL-Passwort festlegen

Gib dein Passwort ein und drücke Enter, um die Installation zu beenden.

Dadurch werden eine Datenbank und ein Benutzer namens icinga2 erstellt und ein Passwort festgelegt.

Hinweis: Bitte merke dir die icinga2-Datenbank, den Benutzer und das Passwort. Du wirst sie während der webbasierten Installation benötigen. Als Nächstes aktivierst du das Modul ido-mysql mit dem folgenden Befehl:

icinga2 feature enable ido-mysql

Starte abschließend den Icinga2-Dienst neu, um die Änderungen zu übernehmen:

systemctl restart icinga2

Icinga Web 2 installieren und konfigurieren

Icinga Web 2 bietet eine Weboberfläche, um Icinga2 zu überwachen. Du kannst es mit dem folgenden Befehl installieren:

apt-get install icingaweb2 icingacli -y

Sobald die Installation abgeschlossen ist, musst du eine Datenbank und einen Benutzer für Icinga Web 2 erstellen.

Melde dich zunächst mit dem folgenden Befehl bei MariaDB an:

mysql -u root -p

Sobald du eingeloggt bist, erstelle eine Datenbank und einen Benutzer mit dem folgenden Befehl:

MariaDB [(none)]> CREATE DATABASE icingaweb2;
MariaDB [(none)]> GRANT ALL PRIVILEGES ON icingaweb2.* TO 'icingaweb2'@'localhost' IDENTIFIED BY 'password';

Als Nächstes löschst du die Berechtigungen und verlässt MariaDB mit dem folgenden Befehl:

MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;

Als Nächstes generierst du ein geheimes Token mit dem folgenden Befehl:

icingacli setup token create

Du solltest die folgende Ausgabe erhalten:

The newly generated setup token is: 73bb878b50a35df8

Zugriff auf das Icinga2 Web Interface

Öffne nun deinen Webbrowser und rufe den Icinga2 Web-Installationsassistenten unter der URL http://your-server-ip/icingaweb2/setup auf. Du solltest die folgende Seite sehen:

Icinga Web-Installer

Gib dein geheimes Token ein und klicke auf die Schaltfläche Weiter. Du solltest die folgende Seite sehen:

Icinga Module

Wähle die Überwachung aus und klicke auf die Schaltfläche Weiter. Du solltest die folgende Seite sehen:

Anforderungen prüfen

Vergewissere dich, dass alle PHP-Erweiterungen installiert sind, und klicke dann auf die Schaltfläche Weiter. Du solltest die folgende Seite sehen:

Authentifizierung

Wähle deine Authentifizierungsart und klicke auf die Schaltfläche Weiter. Du solltest die folgende Seite sehen:

Datenbank-Einstellungen

Gib deine Anmeldedaten für die Icinga2-Webdatenbank ein und klicke auf die Schaltfläche Weiter. Du solltest die folgende Seite sehen:

Auth Backend

Wähle deinen Backend-Namen und klicke auf die Schaltfläche Weiter. Du solltest die folgende Seite sehen:

Verwaltung

Gib deinen Admin-Benutzer an und klicke auf die Schaltfläche “ Weiter“. Du solltest die folgende Seite sehen:

App-Konfiguration

Klicke auf die Schaltfläche Weiter. Du solltest die folgende Seite sehen:

Nächster Schritt

Überprüfe alle Einstellungen und klicke auf die Schaltfläche Weiter. Du wirst zur folgenden Seite weitergeleitet:

Überwachungsmodul konfigurieren

Klicke auf die Schaltfläche Weiter. Du solltest die folgende Seite sehen:

Backend für die Überwachung konfigurieren

Wähle deinen Backend-Namen und klicke auf die Schaltfläche Weiter. Du solltest die folgende Seite sehen:

Überwachung der IDO-Ressource

Gib deine Anmeldedaten für die Icinga IDO-Datenbank ein und klicke auf die Schaltfläche Weiter. Du solltest die folgende Seite sehen:

Kommando Transport

Wähle deine bevorzugten Optionen aus und klicke auf die Schaltfläche Weiter. Du solltest die folgende Seite sehen:

Sicherheitseinstellungen

Wähle deine Überwachungssicherheit und klicke auf die Schaltfläche Weiter. Du solltest die folgende Seite sehen:

Installation beenden

Überprüfe deine Konfiguration und klicke auf die Schaltfläche Fertig stellen. Du solltest die folgende Seite sehen:

Icinga 2 Installation erfolgreich

Klicke auf die Schaltfläche Login to Icinga Web 2. Du solltest die folgende Seite sehen:

Icinga 2 Anmeldung

Gib deinen Admin-Benutzernamen und dein Passwort ein und klicke auf die Schaltfläche Anmelden. Du solltest die folgende Seite sehen:

Icinga 2 Armaturenbrett

Fazit

Herzlichen Glückwunsch! Du hast den Icinga2 Monitoring Server unter Debian 11 erfolgreich installiert und konfiguriert. Du kannst nun Remote-Hosts hinzufügen und die Überwachung über das Icinga Web 2 Dashboard starten.

Das könnte dich auch interessieren …