Ricerca nel sito web

Come installare il software di monitoraggio Icinga 2 su Debian 11


Questo tutorial esiste per queste versioni del sistema operativo

  • Debian 11 (Bullseye)
  • Debian 9 (Stretch)

Su questa pagina

  1. Prerequisiti
  2. Installa il server LAMP
  3. Installa Icinga2
  4. Installa e configura Icinga Web 2
  5. Accedi all'interfaccia web di Icinga2
  6. Conclusione

Icinga2 è uno strumento di monitoraggio della rete gratuito, open-source e uno dei più popolari. È scritto in PHP e C++ e consente di monitorare le risorse di rete, notificare le interruzioni e generare dati sulle prestazioni per i report. È in grado di monitorare vari protocolli tra cui SMTP, POP3, HTTP, NNTP, ping, carico della CPU, utilizzo del disco, switch, router e altro. È composto da due stack Icinga2 e Icinga Web 2. Icinga2 viene utilizzato come server di monitoraggio mentre Icinga Web 2 è l'interfaccia Web per mantenere il monitoraggio.

In questo articolo, ti mostrerò come installare il server di monitoraggio Icinga2 su Debian 11.

Prerequisiti

  • Un server che esegue Debian 11.
  • Sul server è configurata una password di root.

Installa LAMP Server

Innanzitutto, dovrai installare il server Web Apache, MariaDB, PHP e altre estensioni richieste sul tuo server. Puoi installarli tutti con il seguente comando:

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

Una volta installati tutti i pacchetti, modifica il file php.ini e modifica alcune impostazioni:

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

Modifica le seguenti righe:

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

Salva e chiudi il file, quindi riavvia il servizio Apache per applicare le modifiche:

systemctl restart apache2

Successivamente, dovrai impostare una password di root MariaDB e proteggere l'installazione. Puoi farlo eseguendo il seguente script:

mysql_secure_installation

Rispondi a tutte le domande come mostrato di seguito:

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

Installa Icinga2

Per impostazione predefinita, il pacchetto Icinga2 è incluso nel repository predefinito di Debian 11. Puoi installarlo usando il seguente comando:

apt-get install icinga2 monitoring-plugins -y

Una volta installati tutti i pacchetti, avviare Icinga2 e abilitarlo all'avvio al riavvio del sistema:

systemctl start icinga2
systemctl enable icinga2

Per verificare lo stato di Icinga2, eseguire il seguente comando:

systemctl status icinga2

Esempio di output:

? 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.

Successivamente, dovrai installare il plug-in MySQL per Icinga2. Puoi installarlo usando il seguente comando:

apt-get install icinga2-ido-mysql -y

Durante l'installazione, ti verrà chiesto di abilitare la funzione ido-mysql di Icinga 2:

Seleziona Sì e premi Invio. Ti verrà chiesto di creare un database per Icinga2.

Seleziona Sì e premi Invio. Ti verrà chiesto di impostare la password dell'applicazione Icinga2:

Fornisci la tua password e premi Invio per completare l'installazione.

Questo creerà un database e un utente chiamato icinga2 e imposterà una password.

Nota: ricorda il database, l'utente e la password di icinga2. Ne avrai bisogno durante l'installazione basata sul web. Successivamente, abilita il modulo ido-mysql con il seguente comando:

icinga2 feature enable ido-mysql

Infine, riavvia il servizio Icinga2 per applicare le modifiche:

systemctl restart icinga2

Installa e configura Icinga Web 2

Icinga Web 2 fornisce un'interfaccia web per monitorare Icinga2. Puoi installarlo con il seguente comando:

apt-get install icingaweb2 icingacli -y

Una volta completata l'installazione, sarà necessario creare un database e un utente per Icinga Web 2.

Innanzitutto, accedi a MariaDB con il seguente comando:

mysql -u root -p

Una volta effettuato l'accesso, creare un database e un utente con il seguente comando:

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

Successivamente, scarica i privilegi ed esci da MariaDB con il seguente comando:

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

Successivamente, genera un token segreto con il seguente comando:

icingacli setup token create

Dovresti ottenere il seguente output:

The newly generated setup token is: 73bb878b50a35df8

Accedi all'interfaccia web di Icinga2

Ora, apri il tuo browser web e accedi all'installazione guidata web di Icinga2 utilizzando l'URL http://your-server-ip/icingaweb2/setup. Dovresti vedere la seguente pagina:

Fornisci il tuo token segreto e fai clic sul pulsante Avanti. Dovresti vedere la seguente pagina:

Selezionare il monitoraggio e fare clic sul pulsante Avanti. Dovresti vedere la seguente pagina:

Assicurati che tutte le estensioni PHP siano installate, quindi fai clic sul pulsante Avanti. Dovresti vedere la seguente pagina:

Seleziona il tipo di autenticazione e fai clic sul pulsante Avanti. Dovresti vedere la seguente pagina:

Fornisci le credenziali del tuo database web Icinga2 e fai clic sul pulsante Avanti. Dovresti vedere la seguente pagina:

Seleziona il nome del tuo backend e fai clic sul pulsante Avanti. Dovresti vedere la seguente pagina:

Fornisci il tuo utente amministratore e fai clic sul pulsante Avanti. Dovresti vedere la seguente pagina:

Fare clic sul pulsante Avanti. Dovresti vedere la seguente pagina:

Rivedi tutte le impostazioni e fai clic sul pulsante Avanti. Verrai reindirizzato alla seguente pagina:

Fare clic sul pulsante Avanti. Dovresti vedere la seguente pagina:

Seleziona il nome del tuo backend e fai clic sul pulsante Avanti. Dovresti vedere la seguente pagina:

Fornisci le credenziali del tuo database Icinga IDO e fai clic sul pulsante Avanti. Dovresti vedere la seguente pagina:

Seleziona le opzioni che preferisci e fai clic sul pulsante Avanti. Dovresti vedere la seguente pagina:

Seleziona la tua sicurezza di monitoraggio e fai clic sul pulsante Avanti. Dovresti vedere la seguente pagina:

Rivedi la tua configurazione e fai clic sul pulsante Fine. Dovresti vedere la seguente pagina:

Fai clic su Accedi a Icinga Web 2. Dovresti vedere la seguente pagina:

Fornisci il nome utente e la password dell'amministratore e fai clic sul pulsante Accedi. Dovresti vedere la seguente pagina:

Conclusione

Congratulazioni! hai installato e configurato correttamente il server di monitoraggio Icinga2 su Debian 11. Ora puoi aggiungere host remoti e avviare il monitoraggio dalla dashboard di Icinga Web 2.