Com instal·lar l'eina de supervisió Icinga2 a Ubuntu 20.04/22.04


Icinga2 és una potent eina de supervisió gratuïta i de codi obert que vigila els recursos de la vostra xarxa i envia alertes o notificacions en cas de fallada o interrupció. També recopila mètriques dels recursos de la xarxa que us poden ajudar a generar dades de rendiment i crear informes.

Icinga2 és escalable i pot supervisar xarxes petites a grans i complexes en diverses ubicacions. En aquesta guia, aprendràs a instal·lar l'eina de supervisió Icinga2 a Ubuntu 20.04 i Ubuntu 22.04.

Pas 1: instal·leu Apache, MariaDB i PHP

Comencem instal·lant Apache, MariaDB i PHP amb mòduls PHP addicionals que es requereixen durant la configuració final d'Icinga2 en un navegador web.

$ sudo apt install apache2 mariadb-server mariadb-client mariadb-common php php-gd php-mbstring php-mysqlnd php-curl php-xml php-cli php-soap php-intl php-xmlrpc php-zip  php-common php-opcache php-gmp php-imagick php-pgsql -y

Un cop instal·lat, assegureu-vos que tots els serveis estan en funcionament. Si és així, executeu les ordres següents.

$ sudo systemctl start {apache2,mariadb}
$ sudo systemctl enable {apache2,mariadb}
$ sudo systemctl status {apache2,mariadb}

A continuació, heu d'utilitzar l'script mysql_secure_installation per configurar la contrasenya per al compte d'arrel de la base de dades, eliminar usuaris anònims, no permetre l'inici de sessió d'arrel de forma remota i eliminar la base de dades de prova.

$ sudo mysql_secure_installation

Amb els mòduls PHP al seu lloc, heu de modificar el fitxer php.ini, que és el fitxer de configuració predeterminat per a les aplicacions que s'executen amb PHP.

Amb el vostre editor preferit, obriu el fitxer. Aquí. Estem utilitzant un editor de línia d'ordres nano.

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

Feu els canvis següents als paràmetres següents.

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

Per al paràmetre date.timezone, assegureu-vos de configurar-lo perquè reflecteixi la vostra zona horària actual. Aquí hi ha una llista de zones horàries admeses per PHP.

Per aplicar els canvis realitzats, simplement reinicieu el servidor web Apache.

$ sudo systemctl restart apache2

Pas 2: instal·leu Icinga2 a Ubuntu

Amb la configuració de PHP fora del camí, procedirem i instal·larem Icinga2. Tanmateix, el repositori Icinga2 no el proporcionen els repositoris Ubuntu 20.04. Com a tal, hem d'afegir manualment el repositori al vostre sistema.

Per tant, comenceu afegint la clau GPG mitjançant l'ordre curl.

$ curl https://packages.icinga.com/icinga.key | apt-key add -

A continuació, creeu un fitxer de dipòsit per a Icinga2.

$ sudo vim /etc/apt/sources.list.d/icinga-focal.list

Afegiu les entrades següents.

deb http://packages.icinga.com/ubuntu icinga-focal main
deb-src http://packages.icinga.com/ubuntu icinga-focal main

Desa i surt del fitxer.

Per començar a utilitzar el repositori, actualitzeu les llistes de paquets de la següent manera.

$ sudo apt update

A continuació, instal·leu Icinga2 i els connectors de monitorització.

$ sudo apt install icinga2 monitoring-plugins

Un cop finalitzada la instal·lació, habiliteu i inicieu el servei Icinga2.

$ sudo systemctl enable icinga2
$ sudo systemctl start icinga2

Per confirmar que el servei Icinga2 s'està executant, executeu:

$ sudo systemctl status icinga2

La sortida indica que el dimoni Icinga2 s'està executant i ja estem a punt.

Pas 3: instal·leu el mòdul Icinga2 IDO

La sortida de dades d'Icinga2 (IDO) exporta tota la informació de configuració i estat a una base de dades. Icinga Web 2 utilitza la base de dades IDO com a backend de dades.

Per instal·lar el mòdul, executeu l'ordre

$ sudo apt install icinga2-ido-mysql -y

Durant el camí, es mostrarà una finestra emergent al terminal. Per habilitar la funció ido-mysql d'Icinga2, seleccioneu Sí i premeu ENTER.

El paquet icinga2-ido-mysql requereix una base de dades instal·lada i configurada. Això es pot gestionar amb dbconfig-common, però anem a crear la base de dades nosaltres mateixos. Per tant, seleccioneu No i rebutgeu aquesta opció.

A continuació, inicieu sessió al vostre servidor de base de dades MariaDB.

$ sudo mysql -u root -p

A continuació, creeu una base de dades i un usuari de base de dades per al paquet icinga2-ido-mysql i concediu a l'usuari tots els privilegis de la base de dades.

> CREATE DATABASE icinga_ido_db;
> GRANT ALL ON icinga_ido_db.* TO 'icinga_ido_user'@'localhost' IDENTIFIED BY 'Password321';
> FLUSH PRIVILEGES;
> EXIT;

Amb la base de dades al seu lloc, procediu i importeu l'esquema Icinga2 IDO mitjançant l'ordre. Se us demanarà que proporcioneu la contrasenya root del servidor de bases de dades.

$ sudo mysql -u root -p icinga_ido_db < /usr/share/icinga2-ido-mysql/schema/mysql.sql

Pas 4: habiliteu el mòdul Icinga2 IDO

Per habilitar la comunicació de la base de dades icinga2-ido-mysql amb Icinga Web 2, hem d'anar un pas més enllà i fer canvis al fitxer de configuració predeterminat.

Obriu el fitxer de configuració icinga2-ido-mysql.

$ sudo vim /etc/icinga2/features-available/ido-mysql.conf

Editeu les entrades següents i configureu-les perquè coincideixin amb els detalls de la base de dades icinga2-ido-mysql tal com s'especifica al pas 3.

Deseu els canvis i sortiu.

A continuació, activeu la funció icinga2-ido-mysql.

$ sudo icinga2 feature enable ido-mysql

Perquè els canvis entrin en vigor, reinicieu Icinga2.

$ sudo systemctl restart icinga2 

Pas 5: instal·leu i configureu IcingaWeb2

L'últim component a instal·lar i configurar és IcingaWeb 2, que és un marc PHP ràpid, potent i extensible que actua com a interfície d'Icinga2.

Així que instal·leu IcingaWeb2 i l'Icinga CLI, executeu l'ordre.

$ sudo apt install icingaweb2 icingacli -y

Hem de crear un segon esquema de base de dades que es designarà per a Icinga Web 2.

Una vegada més, inicieu sessió al vostre servidor de bases de dades.

$ sudo mysql -u root -p

A continuació, creeu la base de dades i l'usuari de la base de dades per a Icingaweb2 i concediu tots els permisos a l'usuari de la base de dades a la base de dades.

> CREATE DATABASE icingaweb2;
> GRANT ALL ON icingaweb2.* TO 'icingaweb2user'@'localhost' IDENTIFIED BY '[email ';
> FLUSH PRIVILEGES;
> EXIT;

A continuació, creeu un testimoni de configuració mitjançant l'ordre següent. El testimoni de configuració s'utilitzarà durant l'autenticació en configurar Icinga2 al navegador.

$ sudo icingacli setup token create

En cas que perdeu o oblideu el testimoni, podeu veure'l executant l'ordre:

$ sudo icingacli setup token show

Pas 6: completeu la instal·lació d'IcingaWeb2 a Ubuntu

Amb totes les configuracions al seu lloc, ara completarem la configuració d'Icinga2 en un navegador web. Per tant, inicieu el vostre navegador i aneu a l'URL que es mostra.

http://server-ip/icingaweb2/setup

Això us portarà a la pàgina de benvinguda tal com es mostra. Recordeu el testimoni de configuració que heu creat? Copieu-lo i enganxeu-lo al camp de text i feu clic a Següent.

A la pàgina Mòduls, el mòdul Monitorització està habilitat per defecte. Tanmateix, teniu la llibertat d'habilitar els vostres mòduls preferits.

A continuació, desplaceu-vos cap avall i feu clic a Següent.

En el següent pas, assegureu-vos que tots els mòduls i biblioteques PHP estiguin instal·lats i que els permisos del directori siguin correctes.

A continuació, desplaceu-vos cap avall i feu clic a Següent.

A la pàgina Autenticació, seleccioneu Base de dades com a tipus d'autenticació i feu clic a Següent.

A la secció Recurs de base de dades, empleneu els detalls de la base de dades per a IcingaWeb2 tal com s'especifica al pas 5.

A continuació, desplaceu-vos cap avall i feu clic a Valida la configuració per validar els detalls de la base de dades.

Si tot ha anat bé, la configuració de la base de dades es validarà correctament. Un cop la validació tingui èxit, desplaceu-vos cap avall i feu clic a Següent.

Al pas següent, feu clic a Següent per acceptar els valors predeterminats.

A la secció Configuració de l'aplicació, feu clic a Següent per acceptar els valors predeterminats.

En el següent pas, preneu-vos una estona i reviseu tots els canvis per a Icinga Web 2. Assegureu-vos que totes les configuracions són correctes i no dubteu a tornar enrere i fer les correccions necessàries.

Si tot sembla bé, desplaceu-vos cap avall i feu clic a Següent.

L'última secció de la configuració web d'Icinga2 implica configurar el mòdul de monitorització. Per tant, feu clic a Següent.

A continuació, ompliu els detalls de la base de dades per al mòdul Icinga2 IDO tal com s'especifica al pas 3.

A continuació, desplaceu-vos cap avall i feu clic a Valida la configuració.

Una vegada més, la validació dels detalls de la base de dades hauria de ser un èxit. Si obteniu un error, torneu enrere i assegureu-vos que tots els detalls siguin correctes.

Per anar al següent pas, desplaceu-vos cap avall i feu clic a Següent.

A la secció Transport de comandaments, seleccioneu Fitxer d'ordres local com a tipus de transport i feu clic a Següent.

A la secció Monitorització de la seguretat, feu clic a Següent per anar amb els valors predeterminats.

Reviseu tots els canvis del mòdul de seguiment. Si alguna cosa sembla fora de lloc, torneu enrere i feu les correccions necessàries.

A continuació, desplaceu-vos cap avall i feu clic a Finalitzar.

En aquest moment, Icinga Web 2 s'ha configurat correctament i hauríeu de veure una notificació en aquest sentit, tal com es mostra a continuació. Per iniciar sessió al tauler d'Icinga2, feu clic a Inicieu sessió a Icinga Web 2.

Això us portarà a la pàgina d'inici de sessió tal com es mostra. Proporcioneu les dades del vostre compte d'administrador i premeu ENTER per iniciar sessió.

I apareixerà el tauler d'Icinga2. Qualsevol problema existent es mostrarà amb el seu nivell de gravetat. Per exemple, el tauler ens notifica 28 paquets amb actualitzacions preparades.

Per verificar-ho, tornarem al terminal i executarem l'ordre:

$ sudo apt list --upgradable

Per actualitzar els paquets, simplement executarem:

$ sudo apt upgrade -y

I això resol el problema. Des del tauler, podeu veure que no es mostren més problemes.

En aquesta guia, hem demostrat com instal·lar l'eina de supervisió Icinga2 a Ubuntu. És cert que la instal·lació és bastant llarga i requereix atenció als detalls. No obstant això, si seguiu els passos d'aquest últim, tot hauria de funcionar bé.