Icinga 2 è un sistema di monitoraggio gratuito, open source e ampiamente utilizzato che può essere utilizzato per monitorare lo stato di salute di host e servizi in rete. Con Icinga 2 puoi monitorare il carico della CPU, l'utilizzo della memoria, l'utilizzo del disco, IMAP, POP3, SMTP, HTTP, router, switch e molti altri. Icinga 2 può essere installato su tutti i principali sistemi operativi inclusi Debian, Ubuntu, CentOS, RHEL, FreeBSD, Fedora, ArchLinux e molti altri.
In questo tutorial impareremo come installare e configurare Icinga 2 e Icinga Web 2 su Debian 10.
Requisiti
- Un server che esegue Debian 10.
- Un indirizzo IP statico è configurato sul tuo server.
- Sul tuo server è configurata una password di root.
Per iniziare
Innanzitutto, si consiglia di aggiornare il sistema con l'ultima versione. Puoi farlo eseguendo il seguente comando:
apt-get update -y
apt-get upgrade -y
Una volta aggiornato il sistema, riavvialo per applicare le modifiche.
Installa Apache e PHP
Prima di iniziare, dovrai installare il server web Apache, PHP e altri moduli PHP sul tuo sistema. Puoi installarli tutti con il seguente comando:
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
Una volta installati tutti i pacchetti, apri il file php.ini e modifica alcune impostazioni con il seguente comando:
nano /etc/php/7.3/apache2/php.ini
Modifica le seguenti righe:
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"
Salva e chiudi il file, quando hai finito. Quindi, riavvia il servizio Apache per applicare le modifiche:
systemctl restart apache2
Una volta terminato, puoi procedere al passaggio successivo.
Installa Icinga2
Per impostazione predefinita, Icinga2 è disponibile nel repository predefinito di Debian 10. Puoi installarlo con altri strumenti richiesti eseguendo il comando seguente:
apt-get install icinga2 vim-icinga2 monitoring-plugins-basic monitoring-plugins-common icingacli -y
Una volta installati tutti i pacchetti, avvia il servizio Icinga2 e abilitalo all'avvio dopo il riavvio del sistema con il seguente comando:
systemctl start icinga2
systemctl enable icinga2
Puoi anche controllare lo stato di Icinga2 con il seguente comando:
systemctl status icinga2.service
Dovresti ottenere il seguente output:
? 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.
Una volta terminato, puoi procedere al passaggio successivo.
Installa e configura i moduli MariaDB e IDO
Successivamente, dovrai installare il server MariaDB e i moduli IDO sul tuo sistema. Puoi installarli eseguendo il seguente comando:
apt-get install mariadb-common mariadb-server icinga2-ido-mysql
Durante il processo di installazione, ti verrà chiesto di abilitare la funzione ido-mysql di Icinga2 come mostrato nella schermata seguente.
Seleziona sì e premi invio . Ti verrà richiesto di configurare il database per icinga2-ido-mysql con dbconfig-common come mostrato nella schermata seguente.
Seleziona sì e premi invio . Ti verrà chiesto di fornire la password dell'applicazione MySQL per inga2-ido-mysql
come mostrato nella schermata seguente.
Fornisci la password desiderata e fai clic su Ok pulsante per terminare l'installazione.
Successivamente, dovrai creare un database e un utente per Icinga web 2. Innanzitutto, accedi alla shell di MariaDB con il seguente comando:
mysql -u root -p
Fornisci la tua password di root e crea un database e un utente per Icinga web 2 con il seguente comando:
MariaDB [(none)]> CREATE DATABASE icingaweb2;
MariaDB [(none)]> GRANT ALL PRIVILEGES ON icingaweb2.* TO 'icingaweb2'@'localhost' IDENTIFIED BY 'password';
Quindi, svuota i privilegi ed esci dalla shell MariaDB con il seguente comando:
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;
Una volta terminato, puoi procedere al passaggio successivo.
Installa Icinga Web 2
Icinga Web 2 è un framework applicativo basato su PHP che può essere utilizzato per gestire Icinga2 tramite browser web. Puoi installarlo semplicemente eseguendo il seguente comando:
apt-get install icingaweb2 -y
Una volta installato, crea un gruppo di sistema per Icinga web 2 e aggiungi l'utente www-data a questo gruppo in modo che Apache possa avere accesso ai file:
addgroup --system icingaweb2
usermod -a -G icingaweb2 www-data
Successivamente, dovrai generare un nuovo token di installazione per Icinga Web 2. Puoi configurarlo con il seguente comando:
icingacli setup config directory --group icingaweb2
icingacli setup token create
Dovresti vedere il seguente output:
36ab602342cceb9c
Nota:ricorda questo token. Dovrai richiedere questo token durante le impostazioni di Icinga web 2.
Infine, riavvia il servizio Apache e Icinga2 per applicare tutte le modifiche alla configurazione:
systemctl restart apache2
systemctl restart icinga2
Accedi a Icinga Web 2
Icinga2 e Icinga Web 2 sono ora installati e configurati. È ora di configurare Icinga web 2.
Apri il tuo browser web e digita l'URL http://your-ip-address/icingaweb2/setup . Verrai reindirizzato alla seguente pagina:
Fornisci il token di installazione di Icinga web 2 che hai generato in precedenza e fai clic su Avanti pulsante. Dovresti vedere la seguente pagina:
Ora seleziona il modulo desiderato e fai clic su Avanti pulsante. Dovresti vedere la seguente pagina:
Assicurati che tutti i moduli PHP richiesti siano installati. Quindi, fai clic su Avanti pulsante. Dovresti vedere la seguente pagina:
Seleziona Tipo di autenticazione come Database e fai clic su Avanti pulsante. Dovresti vedere la seguente pagina:
Fornisci i dettagli del tuo database come nome del database, nome utente del database, password e fai clic su Avanti pulsante. Dovresti vedere la seguente pagina:
Fornisci il tuo nome di back-end e fai clic su Avanti pulsante. Dovresti vedere la seguente pagina:
Crea il tuo utente amministratore Icingaweb2 e clicca su Avanti pulsante. Dovresti vedere la seguente pagina:
Fare clic su Avanti pulsante. Dovresti vedere la seguente pagina:
Rivedi tutte le modifiche apportate e fai clic su Avanti pulsante. Dovresti vedere la seguente pagina:
Fare clic su Avanti pulsante per configurare il modulo di monitoraggio. Dovresti vedere la seguente pagina:
Fornisci il nome e il tipo di backend e fai clic su Avanti pulsante. Dovresti vedere la seguente pagina:
Fornisci i dettagli del database che hai creato durante l'installazione di IDO e fai clic su Avanti pulsante. Dovresti vedere la seguente pagina:
Fornisci il nome del tuo trasporto, seleziona una riga di comando locale e fai clic su Avanti pulsante. Dovresti vedere la seguente pagina:
Fare clic su Avanti pulsante. Dovresti vedere la seguente pagina:
Ora, rivedi tutte le modifiche che hai apportato e fai clic su Fine pulsante. Una volta che l'installazione è stata completata con successo, dovresti vedere la seguente pagina:
Fare clic su Accedi a Icinga Web 2 . Verrai reindirizzato alla seguente pagina:
Fornisci il nome utente e la password dell'amministratore di Icinga2 e fai clic su Accedi pulsante. Dovresti vedere la dashboard di Icinga2 nella pagina seguente:
Congratulazioni! hai installato e configurato con successo Icinga2 e Icinga web 2 sul server Debian 10. Ora puoi facilmente aggiungere host di monitoraggio al tuo server e avviare il monitoraggio. Sentiti libero di chiedermi se hai domande.