installeer je Icinga 2 Monitoring Software op Debian 10

Icinga 2 is een gratis, open-source en meest gebruikte bewakingssysteem dat gebruikt kan worden om de gezondheid van netwerk hosts en diensten te bewaken. Met Icinga 2 kun je CPU belasting, Geheugengebruik, Schijfgebruik, IMAP, POP3, SMTP, HTTP, Routers, Schakelaars en nog veel meer in de gaten houden. Icinga 2 kan op alle belangrijke besturingssystemen geïnstalleerd worden, waaronder, Debian, Ubuntu, CentOS, RHEL, FreeBSD, Fedora, ArchLinux en nog veel meer.

In deze handleiding leren we hoe je Icinga 2 en Icinga Web 2 op Debian 10 installeert en configureert.

Vereisten

  • Een server met Debian 10.
  • Een statisch IP adres is op je server ingesteld.
  • Een root wachtwoord is op je server ingesteld.

Aan de slag

Eerst is het aan te raden je systeem met de nieuwste versie te updaten. Je kunt dat doen door het volgende commando uit te voeren:

apt-get update -y
apt-get upgrade -y

Zodra je systeem bijgewerkt is, herstart je het om de veranderingen toe te passen.

Installeer Apache en PHP

Voor je begint, moet je Apache webserver, PHP en andere PHP modules op je systeem installeren. Je kunt ze allemaal installeren met het volgende commando:

apt-get install apache2 libapache2-mod-php php php-common php-curl php-gd php-curl php-dom php-mysql php-intl php-imagick -y

Als alle pakketten geïnstalleerd zijn, open je het php.ini bestand en pas je enkele instellingen aan met het volgende commando:

nano /etc/php/7.3/apache2/php.ini

Verander de volgende regels:

memory_limit = 256M 
file_uploads = On	
allow_url_fopen = On
allow_url_include = Off
post_max_size 64M
upload_max_filesize = 100M	
max_execution_time = 300
default_charset = "UTF-8"
date.timezone = "Asia/Kolkata"

Bewaar en sluit het bestand, als je klaar bent. Herstart dan de Apache dienst om de veranderingen toe te passen:

systemctl restart apache2

Als je klaar bent, kun je verder gaan met de volgende stap.

Installeer Icinga2

Icinga2 is standaard beschikbaar in de Debian 10 standaard repository. Je kunt het samen met andere benodigde gereedschappen installeren door het volgende commando uit te voeren:

apt-get install icinga2 vim-icinga2 monitoring-plugins-basic monitoring-plugins-common icingacli -y

Als alle pakketten geïnstalleerd zijn, start je de Icinga2 dienst en zet je hem aan om te starten na het herstarten van het systeem met het volgende commando:

systemctl start icinga2
systemctl enable icinga2

Je kunt ook de status van Icinga2 controleren met het volgende commando:

systemctl status icinga2.service

Je zou de volgende uitvoer moeten krijgen:

? icinga2.service - Icinga host/service/network monitoring system
   Loaded: loaded (/lib/systemd/system/icinga2.service; enabled; vendor preset: enabled)
   Active: active (running) since Sat 2019-09-28 06:01:32 EDT; 28s ago
     Docs: https://icinga.com/docs/icinga2/latest/
 Main PID: 1619 (icinga2)
    Tasks: 15 (limit: 1138)
   Memory: 64.6M
   CGroup: /system.slice/icinga2.service
           ??1619 /usr/lib/x86_64-linux-gnu/icinga2/sbin/icinga2 --no-stack-rlimit daemon -e
           ??1651 /usr/lib/x86_64-linux-gnu/icinga2/sbin/icinga2 --no-stack-rlimit daemon -e
           ??3060 /usr/lib/nagios/plugins/check_apt
           ??3061 /usr/bin/apt-get -o Debug::NoLocking=true -s -qq upgrade

Sep 28 06:01:32 debian icinga2[1619]: [2019-09-28 06:01:32 -0400] information/ConfigItem: Instantiated 1 Endpoint.
Sep 28 06:01:32 debian icinga2[1619]: [2019-09-28 06:01:32 -0400] information/ConfigItem: Instantiated 1 FileLogger.
Sep 28 06:01:32 debian icinga2[1619]: [2019-09-28 06:01:32 -0400] information/ConfigItem: Instantiated 215 CheckCommands.
Sep 28 06:01:32 debian icinga2[1619]: [2019-09-28 06:01:32 -0400] information/ScriptGlobal: Dumping variables to file '/var/cache/icinga2/icing
Sep 28 06:01:32 debian icinga2[1619]: [2019-09-28 06:01:32 -0400] information/ConfigItem: Triggering Start signal for config items
Sep 28 06:01:32 debian icinga2[1619]: [2019-09-28 06:01:32 -0400] information/FileLogger: 'main-log' started.
Sep 28 06:01:32 debian icinga2[1619]: [2019-09-28 06:01:32 -0400] information/NotificationComponent: 'notification' started.
Sep 28 06:01:32 debian icinga2[1619]: [2019-09-28 06:01:32 -0400] information/CheckerComponent: 'checker' started.
Sep 28 06:01:32 debian icinga2[1619]: [2019-09-28 06:01:32 -0400] information/ConfigItem: Activated all objects.
Sep 28 06:01:32 debian systemd[1]: Started Icinga host/service/network monitoring system.

Als je klaar bent, kun je verder gaan met de volgende stap.

Installeer en configureer MariaDB en IDO modules

Vervolgens moet je MariaDB server en IDO modules op je systeem installeren. Je kunt ze installeren door het volgende commando uit te voeren:

apt-get install mariadb-common mariadb-server icinga2-ido-mysql

Tijdens het installatieproces wordt je gevraagd om Icinga2’s ido-mysql functie in te schakelen, zoals in het volgende scherm.

Configureer MariaDB voor Icinga

Kies ja en druk op enter. Je wordt gevraagd de database voor icinga2-ido-mysql te configureren met dbconfig-common zoals in het volgende scherm.

icinga2-ido-mysql

Kies yes en druk op enter. Je wordt gevraagd om het wachtwoord van de MySQL toepassing voor icinga2-ido-mysql

zoals in het volgende scherm.

MySQL applicatie wachtwoord

Herhaal wachtwoord

Geef het gewenste wachtwoord en klik op Ok om de installatie te beëindigen.

Vervolgens moet je een database en gebruiker aanmaken voor Icinga web 2. Log eerst in op MariaDB shell met het volgende commando:

mysql -u root -p

Geef je root wachtwoord en maak een database en gebruiker voor Icinga web 2 met het volgende commando:

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

Spoel vervolgens de privileges door en verlaat de MariaDB shell met het volgende commando:

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

Als je klaar bent, kun je verder gaan met de volgende stap.

Installeer Icinga Web 2

Icinga Web 2 is een op PHP gebaseerd toepassingsraamwerk dat gebruikt kan worden om Icinga2 via de web browser te beheren. Je kunt het installeren door gewoon het volgende commando uit te voeren:

apt-get install icingaweb2 -y

Maak, eenmaal geïnstalleerd, een systeemgroep voor Icinga web 2 en voeg de gebruiker www-data aan deze groep toe, zodat Apache toegang heeft tot de bestanden:

addgroup --system icingaweb2
usermod -a -G icingaweb2 www-data

Vervolgens moet je een nieuw setup token genereren voor Icinga Web 2. Je kunt het instellen met het volgende commando:

icingacli setup config directory --group icingaweb2
icingacli setup token create

Je zou de volgende uitvoer moeten zien:

36ab602342cceb9c

Opmerking: Onthoud dit token. Je zult dit token nodig hebben tijdens de Icinga web 2 setups.

Herstart tenslotte de Apache en Icinga2 dienst om alle veranderingen in de configuratie toe te passen:

systemctl restart apache2
systemctl restart icinga2

Toegang tot Icinga Web 2

Icinga2 en Icinga Web 2 zijn nu geïnstalleerd en geconfigureerd. Het is tijd om Icinga web 2 in te stellen.

Open je web browser en typ de URL http://your-ip-address/icingaweb2/setup. Je wordt doorverwezen naar de volgende pagina:

Icinga2 web

Geef het Icinga web 2 setup token dat je eerder gegenereerd hebt en klik op de Next knop. Je zou de volgende pagina moeten zien:

Modules

Kies nu de gewenste module en klik op de Next knop. Je zou de volgende pagina moeten zien:

Module lijst

Modulelijst 2

Controleer of alle vereiste PHP modules geïnstalleerd zijn. Klik dan op de Next knop. Je zou de volgende pagina moeten zien:

Kies authenticatie type

Kies Authentication type als Database en klik op de Next knop. Je zou de volgende pagina moeten zien:

Kies een database bron

Geef je databank gegevens op zoals, databank naam, databank gebruikersnaam, wachtwoord en klik op de knop Volgende. Je zou de volgende pagina moeten zien:

Kies authenticatie backend

Geef je backend naam op en klik op het knopje Next. Je zou de volgende pagina moeten zien:

Administratieve login

Maak je Icingaweb2 admin gebruiker aan en klik op de knop Volgende. Je zou de volgende pagina moeten zien:

Toepassingsconfiguratie

Klik op de Next knop. Je zou de volgende pagina moeten zien:

Wijzigingen herzien

Bekijk alle wijzigingen die je gemaakt hebt en klik op de Next knop. Je zou de volgende pagina moeten zien:

Configureer de bewakingsmodule

Klik op de Next knop om de bewakingsmodule in te stellen. Je zou de volgende pagina moeten zien:

Monitoring backend

Geef je backend naam en backend type op, en klik op de Next knop. Je zou de volgende pagina moeten zien:

Toezicht op de Ido hulpbronnen

Geef de gegevens van je database op die je tijdens de IDO installatie gemaakt hebt en klik op de knop Volgende. Je zou de volgende pagina moeten zien:

Commando transport

Geef je transportnaam op, kies een lokale commandoregel en klik op de knop Volgende. Je zou de volgende pagina moeten zien:

Bewaking van de veiligheid

Klik op het volgende knopje. Je zou de volgende pagina moeten zien:

Wijzigingen herzien

Bekijk nu alle wijzigingen die je gemaakt hebt en klik op de Finish knop. Als de installatie met succes voltooid is, zou je de volgende pagina moeten zien:

Configuratie geslaagd

Klik op Inloggen op Icinga Web 2. Je wordt doorverwezen naar de volgende pagina:

Icinga login

Geef je Icinga2 admin gebruikersnaam en wachtwoord op en klik op de knop Login. Je zou het Icinga2 dashboard op de volgende pagina moeten zien:

Icinga dashboard

Gefeliciteerd! Je hebt met succes Icinga2 en Icinga web 2 op Debian 10 server geïnstalleerd en geconfigureerd. Je kunt nu eenvoudig monitoring hosts aan je server toevoegen en beginnen te monitoren. Stel me gerust als je vragen hebt.