Instal·lació de Nagios

12 abril 2015
Josep Ma Solanes 0

Si ja tenim preparat l’entorn per monitoritzar mitjançant el protocol estàndard SNMP, ja sigui en els dispositius de xarxa com en els servidors Windows (revisar l’entrada sobre la configuració de SNMP per servidors Windows). És el torn de desplegar un sistema central de monitoratge.

El mercat disposa d’un gran catàleg de productes més o menys automatitzats per fer-ho (Microsoft System Center, ManageEngine, SolarWinds, etc). Personalment em trobo en que la majoria d’empreses del nostre entorn, no veuen una necessitat directe sobre l’entorn de producció del negoci que un sistema d’aquestes característiques els pot aportar. Pel que el seu pressupost es veu reduït a 0, sent molt difícil de justificar per part dels Departaments de TI la seva adquisició. Però, cada cop més els entorns de producció depenen dels sistemes informàtics i no per això hem de deixar de monitoritzar el nostre entorn. Una alternativa, que ja fa molt de temps que existeix, és Nagios, que al llarg del temps, s’ha anat consolidant com un estàndard en el monitoratge dels entorns de TI. Basat en una llicència de programari lliure, ens permet fer una aproximació al monitoratge sense una gran despesa. Més endavant, podem fer el salt a la versió comercial del mateix o algun dels productes anomenats anteriorment.

En aquesta entrada s’aborda el procés d’instal·lació de la versió lliure sobre una màquina Linux basada en CentOS 7 (revisar l’entrada sobre el procés de instal·lació de CentOS 7) amb el monitoratge d’un servidor Windows mitjançant el protocol SNMP.

 

Instal·lació de Nagios

Com ja he comentat, a partir d’una instal·lació actualitzada de CentOS 7 amb el servidor web Apache, procedim a fer l’instal·lació de l’entorn de monitoratge pròpiament dit. Tot el procés d’instal·lació es fa des de la consola. Recordem que es tracta d’un servidor, com menys coses tinguem instal·lades millor. Cal iniciar sessió amb un usuari amb els permisos corresponents per fer aquest tipus d’instal·lació, per aquesta entrada s’utilitza l’usuari root. Comencem per instal·lar, si no ho està, el compilador GCC i les seves dependències.

yum -y install gcc

Creació de l’usuari i grup per utilitzar en els serveis de Nagios:

useradd nagios
groupadd nagcmd
usermod -a -G nagcmd nagios

Nagios no és un únic paquet que s’instal·la i ja està. El formen diferents components i a la vegada un munt d’afegits, gairebé per a controlar-ho tot, que s’afegeixen segons les necessitats.

  • Nagios core. És el nucli de l’entorn de monitoratge, el primer que cal instal·lar i que ho fa funcionar tot.
  • Nagios Plugins. Són complements, o també anomenades comandes, per poder monitoritzar diferents dispositius, serveis, maquinari, etc… El paquet Nagios Plugins correspon a comandes bàsiques per començar a funcionar i, que es poden ampliar segons les necessitats. En teniu un grapat al directori d’intercanvi Exchange Nagios.
  • Nagios FrontEnd. L’entorn Nagios no és el què se’n diu, precisament, d’allò més bonic, tampoc és el seu objectiu. Els FrontEnds són temes o interfícies senceres que fan més agradable o adaptable l’entorn a les necessitats de cadascú. És la manera de representar gràficament les dades recollides.

Per l’instal·lació del nostre entorn de monitoratge utilitzarem els següents paquets, en la seva vessant de programari lliure:

Mans a la feina, creem una carpeta temporal per descarregar tots aquests paquets

mkdir /tempnagios
cd /tempnagios

Per descarregar directament sobre el servidor Linux, instal·lar WGET (aquest últim és opcional).

yum -y install wget

Fer la descàrrega dels diferents paquets:

wget http://prdownloads.sourceforge.net/sourceforge/nagios/nagios-4.0.8.tar.gz
wget http://nagios-plugins.org/download/nagios-plugins-2.0.3.tar.gz
wget http://www.be-root.com/downloads/nagios/vautour/vautour_style.zip

Un cop s’hagin descarregat els tres fitxers, és el torn de descomprimir-los. De moment els instal·ladors:

tar zxvf nagios-4*
tar zxvf nagios-plugins-*

Amb el que ens quedarà una cosa semblant a la captura de pantalla:

install-de-nagios-001

Esborrar els fitxers comprimits:

rm -f nagios-4*.tar.gz
rm -f nagios-plugins-2*.tar.gz

Preparar per compilar l’aplicació, assignant el grup de seguretat a utilitzar. Primer, accedir al directori on s’ha descomprimit l’arxiu de Nagios core descarregat (naturalment, s’ha de canviar la ruta dels directoris segons l’instal·lació). Executar la instrucció configure assignant a l’instal·lació el grup de seguretat per a Nagios nagcmd creat anteriorment:

cd /tempnagios/nagios-4.0.8
./configure --with-command-group=nagcmd

Compilar i instal·lar l’aplicació:

make all
make install
make install-init
make install-config
make install-commandmode
make install-webconf

Creació de l’usuari per accedir a l’entorn web, per exemple: nagiosadmin.

htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin

Demana la contrasenya del nou usuari. Amb aquest mètode, es poden afegir tants usuaris com es cregui oportú.

No oblidar-se de reiniciar el servei web de l’Apache perquè apliqui els canvis del nou directori web de Nagios, sinó no es carregarà res:

systemctl restart httpd

Configurar per instal·lar els plugins (recordar que els directoris s’han de canviar pels corresponents en cada cas):

cd /tempnagios/nagios-plugins-2.0.3
./configure --with-nagios-user=nagios --with-nagios-group=nagcmd

Compilar i instal·lar els plugins:

make
make install

Habilitar el servei de Nagios per iniciar-se automàticament cada cop que s’iniciï el servidor i s’engegui:

chkconfig --add nagios
chkconfig --level 35 nagios on
systemctl start nagios

Es pot comprovar que funciona obrint un navegador Web i accedint a l’adreça de Nagios. Correspon al nom del servidor web i el directori virtual /nagios, per exemple: http://servidor/nagios. Al fer-ho, demana nom d’usuari i contrasenya. Són els que s’han establert amb la comanda htpasswd: nagiosadmin. Si tot és correcte s’obre la pàgina principal de Nagios. És un primer pas, però no l’últim.

install-de-nagios-002

Clicant a l’apartat Tactical Overview trobem visualitzem les dades que disposa:

install-de-nagios-003

Per comoditat en la gestió dels fitxers, personalment, m’agrada crear un enllaç simbòlic a l’arrel amb el nom de nagios per arribar-hi més ràpid:

ln -s /usr/local/nagios /nagios

Accedir a la carpeta de nagios, es pot utilitzar l’enllaç simbòlic:

cd /nagios

Per canviar el tema de l’entorn web, es crea una carpeta backups i es realitza una còpia de seguretat de la carpeta share:

mkdir -p /nagios/backups
cp /nagios/share/ /nagios/backups/ -R

Com que el tema està comprimit amb un fitxer ZIP, per descomprimir-lo cal disposar del UNZIP. S’instal·la del repositori:

yum -y install unzip

Es descomprimeix el fitxer del tema dins la carpeta share de Nagios:

unzip /tempnagios/vautour_style.zip -d /nagios/share/

Es demana per sobreescriure els fitxers existents, contestar amb la lletra A perquè els sobreescrigui tots.

Tornant a obrir l’entorn web ha canviat una mica. Per a gustos colors i aquí cadascú que apliqui el què millor li agradi. Serveixi aquest últim apartat per exemple de com canviar l’entorn.

install-de-nagios-004

A l’hora d’accedir al frontal web, per comoditat, a l’arrel del servidor es pot crear un fitxer HTML de redirecció al directori virtual. D’aquesta manera, només indicant el nom del servidor ja s’accedeix directament a l’entorn. El fitxer a crear, potser amb el vi, index.html a guardar a l’arrel de l’Apache

vi /var/www/html/index.html

ha de contenir la següent informació, canviant el nom del servidor pel que correspongui (recordar, la tecla i per insertar text, ESC per sortir d’afegir text i :wq per guardar i tancar el fitxer):

<html>
     <head>
          <META http-equiv="Refresh" Content="0; URL=http://servidornagios/nagios/">
     </head>
     <body>
     </body>
</html>

Fer una còpia de seguretat del fitxer de configuració de NAGIOS abans de començar a tocar paràmetres:

cp /nagios/etc/nagios.cfg /nagios/etc/nagios.original

Modificar el format de data i hora a l’europeu editant el fitxer de configuració /nagios/etc/nagios.cfg i canviant-li el paràmetre (recordar que per buscar en el vi cal escriure :/ seguit de la paraula a buscar):

date_format=euro

Comprovar els fitxers de configuració. És una operació recomanable de fer cada cop que es modifiquen paràmetres per comprovar que tot funcionarà correctament:

/nagios/bin/nagios -v /nagios/etc/nagios.cfg

La meva proposta és preparar un script perquè en faci la comprovació i reinici el servei:

vi /rnagios.sh

Amb el contingut:

#!/bin/bash
#
/nagios/bin/nagios -v /nagios/etc/nagios.cfg
systemctl restart nagios

Canviar els permisos del fitxer perquè es pugui executar pel propietari:

chmod 700 /rnagios.sh

Executar cada cop que convingui:

/./rnagios.sh

Enviar alertes per correu electrònic

Nagios envia les alertes per correu electrònic. Per defecte ho fa al propi servidor POSTFIX del Linux, en que possiblement no arribin els correus electrònics a les bústies habituals. Com que els correus electrònics només són a títol informatiu pel propi Departament de TI, sent igual d’on provinguin i sense necessitat d’enviar cap al públic. Es pot modificar el servidor POSTFIX perquè encamini els correus electrònics a un altre servidor de correu, modificant la seva configuració:

vi /etc/postfix/main.cf

Habilitar la variable relayhost = [nom_del_servidor_de_correu], per exemple:

relayhost = [mail.correu.com]

Reiniciar el servei de POSTFIX per aplicar els canvis:

systemctl restart postfix

També cal disposar d’un client per enviar correus electrònics, què tal el mailx?

yum -y install mailx

Permetre consultes per SNMP

Com que l’objectiu és poder escoltar i fer consultes pel protocol SNMP també cal disposar del servei i utilitats corresponents al servidor. Instal·lar els paquets necessaris pel servei i les eines SNMP:

yum -y install net-snmp net-snmp-utils

Fer una còpia de seguretat del fitxer de configuració original:

cp /etc/snmp/snmpd.conf /etc/snmp/snmpd.original

Modificar el nom de la comunitat SNMP amb les que hi ha configurades a la xarxa. Recordar no utilitzar les comunitats SNMP per defecte!.

vi /etc/snmp/snmpd.conf

Canviar el nom de la comunitat public per la correcta de la línia:

com2sec notConfigUser  default       public

Habilitar i iniciar el servei:

systemctl enable snmpd.service
systemctl start snmpd.service

Comprovar que es pot llegir la informació SNMP d’un servidor o equip de la xarxa:

snmpwalk -v 2c -c compublic -O e nom_del_equip_snmp

El sistema ha de retornar un llistat de paràmetres. En cas que no s’hi pugui comunicar indicarà un error o bé no apareixerà aquest llistat.

Arribats a aquest punt ja disposem del sistema de monitoratge operatiu. Ara, cal afegir els equips i definir què es vol monitoritzar en cada cas. La configuració d’aquests fitxers la tractaré en una altra entrada.

T’ha agradat l’article? El pots compartir a les xarxes socials. També pots deixar la teva opinió, comentari o suggeriment. Gràcies!

Similar Posts by The Author: