martes, 22 de mayo de 2012

Configuración de Nagios para monitorizar un Linux a través del nombre del equipo

Para poder monitorizar un equipo remoto, tendremos que usas el añadido NRPE, que instalaremos en el equipo a monitorizar y en el servidor. Se trata de un demonio que nos permitirá ejecutar en remoto los plugins que instalaremos en la máquina a monitorizar, y le pasará los datos al servidor Nagios.

1º Instalaremos los plugins de Nagios en el cliente.

root@skillredes01-debian:~# useradd nagios
root@skillredes01-debian:~# passwd nagios
La contraseña que utilizaremos será "nagios".
Para poder instalar todas las dependencias tendremos que asegurarnos de tener los siguientes repositorios en la lista:
deb http://ftp.debian.org/debian/ squeeze main contrib non-free
deb-src http://ftp.debian.org/debian/ squeeze main contrib non-free
root@skillredes01-debian:~# nano /etc/apt/sources.list
root@skillredes01-debian:~# apt-get update
root@skillredes01-debian:~# apt-get install libmysqld-dev libmysqlclient-dev php5-sybase php-db libsnmp-perl snmp snmp-mibs-downloader libssl-dev libyaml-perl
root@skillredes01-debian:~# perl -MCPAN -e shell
cpan[1]> install Net::SNMP
cpan[2]> exit
root@skillredes01-debian:~# exit
manuel@skillredes01-debian:~$ mkdir Descargas
manuel@skillredes01-debian:~$ cd Descargas/
manuel@skillredes01-debian:~/Descargas$ tar xzf nagios-plugins-1.4.15.tar.gz 
manuel@skillredes01-debian:~/Descargas$ cd nagios-plugins-1.4.15/
manuel@skillredes01-debian:~/Descargas/nagios-plugins-1.4.15$ ./configure --with-nagios-user=nagios --with-nagios-group=nagios
manuel@skillredes01-debian:~/Descargas/nagios-plugins-1.4.15$ make
manuel@skillredes01-debian:~/Descargas/nagios-plugins-1.4.15$ su -l
root@skillredes01-debian:~# cd /home/manuel/Descargas/nagios-plugins-1.4.15/
root@skillredes01-debian:/home/manuel/Descargas/nagios-plugins-1.4.15# make install
root@skillredes01-debian:/home/manuel/Descargas/nagios-plugins-1.4.15# chown nagios.nagios /usr/local/nagios
root@skillredes01-debian:/home/manuel/Descargas/nagios-plugins-1.4.15# chown -R nagios.nagios /usr/local/nagios/libexec

Descargamos he instalamos NRPE

root@skillredes01-debian:/home/manuel/Descargas/nagios-plugins-1.4.15# apt-get install xinetd
root@skillredes01-debian:/home/manuel/Descargas/nagios-plugins-1.4.15# cd ..
root@skillredes01-debian:/home/manuel/Descargas# wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz
root@skillredes01-debian:/home/manuel/Descargas# tar xzf nrpe-2.13.tar.gz 
root@skillredes01-debian:/home/manuel/Descargas# cd nrpe-2.13/
root@skillredes01-debian:/home/manuel/Descargas/nrpe-2.13# ./configure
root@skillredes01-debian:/home/manuel/Descargas/nrpe-2.13# make all
root@skillredes01-debian:/home/manuel/Descargas/nrpe-2.13# make install-plugin
root@skillredes01-debian:/home/manuel/Descargas/nrpe-2.13# make install-daemon
root@skillredes01-debian:/home/manuel/Descargas/nrpe-2.13# make install-daemon-config
root@skillredes01-debian:/home/manuel/Descargas/nrpe-2.13# make install-xinetd
Una vez instalado, procederemos a configurarlo editando el archivo /etc/xinetd.d/nrpe y añadimos la IP del servidor en la directiva "only_from"
only_from = 127.0.0.1 <nagios_ip_address> 
root@skillredes01-debian:/home/manuel/Descargas/nrpe-2.13# nano /etc/xinetd.d/nrpe 
Añadir la siguiente entrada para el servicio NRPE en el archivo /etc/services 
nrpe 5666/tcp # NRPE
root@skillredes01-debian:/home/manuel/Descargas/nrpe-2.13# nano /etc/services 
root@skillredes01-debian:/home/manuel/Descargas/nrpe-2.13# service xinetd restart

Instalamos NRPE en el servidor.


user@excellondonsrv2:~$ cd Download/
user@excellondonsrv2:~/Download$ wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz
user@excellondonsrv2:~/Download$ tar xzf nrpe-2.13.tar.gz
user@excellondonsrv2:~/Download$ cd nrpe-2.13/
user@excellondonsrv2:~/Download/nrpe-2.13$ ./configure


Nos logeamos como root para poder ejecutar "make"
user@excellondonsrv2:~/Download/nrpe-2.13$ su -l

root@excellondonsrv2:~# cd /home/user/Download/nrpe-2.13/

root@excellondonsrv2:/home/user/Download/nrpe-2.13# make all
root@excellondonsrv2:/home/user/Download/nrpe-2.13# make install-plugin
Para comprobar que la instalación es correcta:
root@excellondonsrv2:/home/user/Download/nrpe-2.13# /usr/local/nagios/libexec/check_nrpe -H 192.168.10.4
Para poder ejercutarlo a través de Nagios, tendremos que añadir la definición del comando en el archivo "commands.cfg"
root@excellondonsrv2:~# nano /usr/local/nagios/etc/objects/commands.cfg 
# 'check_nrpe' command definition
define command{
command_name check_nrpe
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$
}
Y ya podemos crear la configuración para monitorizar el nuevo equipo en linux. Para ello trabajaremos sobre el objeto localhost, que copiaremos para su posterior adaptación a nuestros requisitos.

root@excellondonsrv2:~# cd /usr/local/nagios/etc/objects/
root@excellondonsrv2:/usr/local/nagios/etc/objects# cp localhost.cfg skillredes01-debian.cfg
Editamos el archivo y cambiamos lo necesario: La definición del host y los servicios que queremos monitorizar.
root@excellondonsrv2:/usr/local/nagios/etc/objects# nano skillredes01-debian.cfg 
Importante:
Los servicios que queramos comprobar a través de NRPE tienen que estar creados en el archivo de configuración de la máquina cliente, y se llaman así:
Servidor:
check_command                   check_nrpe!check_disk
Cliente:
command[check_disk]=/usr/local/nagios/libexec/check_disk -w 20% -c 10% -p /
Para personalizar una plantilla para nuestro host, tendríamos que incluirla en le archivo "templates.cfg" pero en este caso usaremos la misma que para el servidor linux.
Ahora tenemos que añadir nuestro archivo de configuración en la configuración de Nagios. También podemos modificar la configuración para que Nagios recoja los nuevos objetos definidos en unas carpetas determinadas gracias a la directiva "cfg_dir"
root@excellondonsrv2:/usr/local/nagios/etc/objects# nano ../nagios.cfg 
root@excellondonsrv2:/usr/local/nagios/etc/objects# /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
root@excellondonsrv2:/usr/local/nagios/etc/objects# service nagios reload

No hay comentarios:

Publicar un comentario