Nagios

De Cacauet Wiki
Salta a la navegació Salta a la cerca


Introducció[modifica]

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:


Instal·lació[modifica]

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[modifica]

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[modifica]

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[modifica]

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:

  1. Afegir els hosts (cal definir-los abans) al hostgroup pertinent. Normalment les configuracions per defecte tenen un grup http-servers i ssh-servers.
  2. 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[modifica]

En canvi, per monitoritzar paràmetres "interns" de la màquina cal instal·lar nagios-nrpe-server en el servidor a monitoritzar. Alguns exemples son:

  • Espai en discs
  • Nº d'usuaris logats
  • Nº de processos actius/zombies
  • Càrrega de la CPU del sistema


En aquest tutorial oficial de Ubuntu es mostra fàcilment com configurar la comprovació de disc en un host remot.


Més exercicis[modifica]

Ja teniu la configuració bàsica de Nagios feta. A partir d'aquí proposem una sèrie d'exercicis:

  1. Afegeix diversos hosts (tots els del CPD) a monitoritzar.
  2. 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.
  3. Canvia el temps de monitorització dels hosts a 1 minut.
  4. Canvia el temps de notificació a 3 minuts (inicialment a 5 min.)