Icinga 2 è uno strumento di monitoraggio gratuito e open source per il monitoraggio di server e risorse di rete. Con Icinga 2 puoi configurare avvisi in caso di interruzioni e generare i dati sulle prestazioni.
Icinga 2 è molto scalabile e puoi monitorare ambienti più piccoli o più grandi e complessi in più posizioni.
Qui vedremo come installare Icinga 2 su CentOS 8 / RHEL 8.
Abilita repository EPEL
I pacchetti Icinga dipendono da altri pacchetti distribuiti nel repository EPEL. Quindi, configura il repository EPEL su CentOS 8 / RHEL 8.
CentOS 8
dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
dnf config-manager --set-enabled PowerTools
RHEL 8
ARCH=$( /bin/arch )
subscription-manager repos --enable rhel-8-server-optional-rpms
subscription-manager repos --enable "codeready-builder-for-rhel-8-${ARCH}-rpms"
dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
Aggiungi repository Icinga 2
Icinga fornisce i pacchetti Icinga 2 dal suo repository dedicato. Quindi, installa gli rpm di configurazione del repository Icinga per configurare automaticamente il repository Icinga.
rpm --import https://packages.icinga.com/icinga.key
dnf install -y https://packages.icinga.com/epel/icinga-rpm-release-8-latest.noarch.rpm
Installa Icinga 2
Dopo aver configurato il repository Icinga, installa Icinga 2 con il comando dnf.
dnf install -y icinga2
Per avviare il servizio Icinga2, eseguire:
systemctl start icinga2
Per consentire al servizio Icinga 2 di avviarsi automaticamente all'avvio del sistema, eseguire:
systemctl enable icinga2
SELinux
Se il tuo sistema ha SELinux abilitato, installa il pacchetto seguente per avere una politica mirata per Icinga 2.
dnf install -y icinga2-selinux
Installa i plug-in Nagios
Senza plugin, Icinga 2 non sa come monitorare i servizi applicativi. Quindi, installa i plugin Nagios per lavorare con Icinga 2.
dnf install -y nagios-plugins-all
Firewall
Configura il firewall per consentire ai sistemi client di inviare dati al server Icinga 2.
firewall-cmd --permanent --add-port=5665/tcp
firewall-cmd --reload
Configurazione DB IDO MySQL
Il modulo DB IDO per Icinga 2 si occupa di esportare tutte le informazioni di configurazione e di stato nel database.
Attualmente sono supportati MySQL e PostgreSQL. Qui useremo il server MySQL/MariaDB come server di database.
Installa server database
Installa il server MariaDB (v10.3) dal repository del sistema operativo.
LEGGI: Come installare MariaDB v10.4 su CentOS 8 / RHEL 8
LEGGI: Come installare MySQL 8 su CentOS 8 / RHEL 8
dnf install -y mariadb-server mariadb
Avvia e abilita il servizio MariaDB.
systemctl start mariadb
systemctl enable mariadb
Eseguire la configurazione iniziale di MariaDB utilizzando il comando mysql_secure_installation per impostare la password di root del database e altre importanti misure di sicurezza.
Installa i moduli IDO per MySQL
Ora procedi con l'installazione dei moduli IDO per MySQL usando il seguente comando.
dnf install -y icinga2-ido-mysql
Crea database per moduli IDO
Accedi a MariaDB usando il seguente comando.
mysql -u root -p
Crea un database per i moduli IDO. Annotare i dettagli del database poiché ne abbiamo bisogno quando impostiamo l'interfaccia web 2 di Icinga.
CREATE DATABASE icinga2;
grant all privileges on icinga2.* to icinga2@localhost identified by 'icinga123';
FLUSH PRIVILEGES;
quit
Dopo aver creato il database, importare lo schema Icinga 2 IDO utilizzando il comando seguente.
mysql -u root -p icinga2 < /usr/share/icinga2-ido-mysql/schema/mysql.sql
Abilita modulo IDO MySQL
Per impostazione predefinita, il modulo IDO MySQL (ido-mysql) è disabilitato. Elenchiamo i moduli disponibili e abilitati in Icinga 2.
icinga2 feature list
Output: Disabled features: api command compatlog debuglog elasticsearch gelf graphite ido-mysql influxdb livestatus opentsdb perfdata statusdata syslog Enabled features: checker mainlog notification
Abilita il modulo ido-mysql usando il comando seguente.
icinga2 feature enable ido-mysql
Inoltre, abilita la funzione di comando, che aiuta l'interfaccia web 2 di Icinga o altri componenti aggiuntivi di Icinga a inviare comandi a Icinga 2 tramite una pipe di comando esterna.
icinga2 feature enable command
Configura modulo IDO DB MySQL
Una volta abilitato il modulo IDO, Icinga 2 inserisce il nuovo file di configurazione /etc/icinga2/features-enabled/ido-mysql.conf.
Modifica il file per aggiornare manualmente le credenziali del database.
vi /etc/icinga2/features-enabled/ido-mysql.conf
Aggiorna il file sopra, come mostrato di seguito.
user = "icinga2", password = "icinga123", host = "localhost", database = "icinga2"
Riavvia il server Icinga 2 per rendere effettive queste funzionalità abilitate.
systemctl restart icinga2
Conclusione
È tutto. Spero che tu abbia imparato come installare Icinga 2 su CentOS 8 / RHEL 8. Nel prossimo articolo, installeremo l'interfaccia web 2 di Icinga.