Nagios
Contingut
Introducció
Nagios és un software de monitorització preventiva per Linux. El nom original del projecte inicial era NetSaint. Però després es va transformar en NAGIOS que significa:
Nagios Ain't Gonna Insist On Sainthood
...que ja veieu que és una més d'aquestes simpàtiques "definicions recursives". Frikades vàries ;)
Nagios es pot instal·lar a qualsevol màquina, però en principi interessa posar-la en una que no estigui sotmesa a molt estress i que no tingui perill de fallada. Obviament, si el sistema cau, i amb ell la monitorització, no se'ns podrà notificar la fallada.
Referències:
- Site oficial Nagios: http://www.nagios.org
- Tutorial oficial d'Ubuntu.
Instal·lació
Instal·lar el paquet no té més problema que utilitzar apt com de costum:
$ sudo apt-get install nagios3
- Ens demanarà contrasenya per entrar a la interfície web.
- Ens demanarà que configurem el correu electrònic amb Postfix. Seguiu aquestes directrius segons convingui.
Juntament amb aquest s'instal·larà apache (si no ho està ja) i podrem visualitzar Nagios a
http://<ip_de la màquina>/nagios3
Assegureu-vos que els emails del servidor amb Nagios arriben chequejant-ho amb la comanda mail del paquet mailutils.
Afegir hosts
Afegirem hosts d'acord amb els paràmetres de configuració de Nagios.
Aquesta configuració es pot posar a qualsevol arxiu dins de /etc/nagios3/conf.d/ (per exemple, elsmeushosts.cfg)
Una configuració bàsica podria ser aquesta:
define host { host_name pinyo.fruitsex.local alias pinyo address 10.27.3.11 use generic-host contacts enric check_interval 1 retry_interval 1 }
La variable check_interval és la que determina cada quant temps comprovem el host monitoritzat. Inicialment es dona en minuts (aquí ho hem posat a 1 minut) però en realitat son múltiples del valor interval_length que surt a l'arxiu nagios.cfg (modificable).
La variable retry_interval és la que determina el temps en què tornem a comprovar el host per comprovar si torna a estar online.
Configurar contactes
Cal configurar al menys un contacte per les notificacions de fallades, etc.
A l'anterior host hem posat "enric" com a "contacts". Caldrà, però, que donem d'alta aquest contacte perquè es pugui enviar l'email a algun destinatari.
Entreu a /etc/nagios3/conf.d/contacts_nagios2.cfg i utilitzeu la plantilla que hi ha de contacte per crear el vostre contacte (en el meu cas "enric").
Monitorització de serveis
Monitoritzar serveis que es poden comprovar "externament" és senzill i no cal cap plugin. Alguns podrien ser:
- HTTP
- SSH
- FTP
- ...
Per realitzar-ho tenim 2 opcions:
- Afegir els hosts (cal definir-los abans) al hostgroup pertinent. Normalment les configuracions per defecte tenen un grup http-servers i ssh-servers.
- Afegir el servei particular en qualsevol arxiu dins de /etc/nagios3/conf.d/. Un exemple seria:
define service{ use generic-service ; Name of service template to use host_name funkyserver service_description HTTP check_command check_http }
Monitoritzar en hosts remots amb NRPE
En canvi, per monitoritzar paràmetres "interns" de la màquina (típicament espai de disc, processos, etc.) cal instal·lar nagios-nrpe-server en el servidor a monitoritzar.
- En aquest tutorial de Ubuntu es mostra fàcilment com configurar la comprovació de disc en un host remot.
Més exercicis
Ja teniu la configuració bàsica de Nagios feta. A partir d'aquí proposem una sèrie d'exercicis:
- Afegeix diversos hosts (tots els del CPD) a monitoritzar.
- Apaga algun d'aquests hosts.
- Comprova quant de temps triga Nagios a detectar que ha caigut.
- Comprova quant de temps triga a enviar-se la notificació per e-mail.
- Canvia el temps de monitorització dels hosts a 1 minut.
- Canvia el temps de notificació a 5 minuts (inicialment a 30 min.)