Este documento describe la instalación y configuración de Nagios, un sistema de monitorización de red de código abierto, en una máquina virtual Debian. Explica cómo instalar servicios como HTTP, SSH, SMTP y MySQL en una máquina Ubuntu para monitorizar, así como configurar Nagios para monitorizar dichos servicios y recursos como el espacio en disco. Finalmente, muestra algunas pantallas de la interfaz web de Nagios que permiten ver el estado de los equipos, servicios y recursos monitorizados.
2. Monitorización con Nagios
SAD
2º ASIR
INDICE :
Instalación de Nagios........................................................................................................ 3
Configuración del entorno ................................................................................................ 4
Configuración de Nagios .................................................................................................. 5
Monitorización ................................................................................................................. 8
2
Francisco José Cruz Jiménez
3. Monitorización con Nagios
SAD
2º ASIR
Instalación de Nagios
Nagios es un sistema de monitorización de redes de código abierto ampliamente
utilizado, que vigila los equipos y servicios que se configuren, generando avisos, que
pueden ser recibidas por los responsables correspondientes mediante (entre otros
medios) correo electrónico y mensajes SMS, alertando cuando el comportamiento de los
mismos no sea el deseado. Entre sus características principales figuran la
monitorización de servicios de red (SMTP, POP3, HTTP, SSH...), la monitorización de
los recursos de sistemas hardware de los equipos de la red (carga del procesador, uso de
los discos, memoria, estado de los puertos...). Funciona independientemente de
sistemas operativos instalados en los equipos y cuenta con la posibilidad de programar
plugins específicos para nuevas características.
Para instalar Nagios, necesitamos una máquina que cuente con un servidor web
instalado además de soporte para PHP. En mi caso utilizaré una máquina virtual, con
Debian, para instalar Nagios. Utilizamos los siguientes comandos:
# apt-get install apache2 php5 libapache2-mod-php5
# apt-get install nagios3
Durante la instalación de Nagios nos aparecerá una ventana pidiendo que
introduzcamos una contraseña. Esta es importante, ya que será la que usemos para
entrar en la administración vía web.
Una vez acabado el proceso, para verificar la instalación usamos:
$ nagios3 –V
3
Francisco José Cruz Jiménez
4. Monitorización con Nagios
SAD
2º ASIR
Configuración del entorno
Una vez que tenemos instalado Nagios en una máquina vamos a proceder a crear
el entorno que vamos a monitorizar, para ello vamos a montar en una máquina los
siguientes servicios:
•
•
•
•
Servicio http
Servicio ssh
Servicio smtp
Servicio mysql
También monitorizaremos otras cosas como el espacio en disco, usuarios,
procesos, carga del procesador… Para montar todos estos servicios usaré una máquina
virtual con Ubuntu. Esta la configuraremos en la misma red que la máquina con Nagios,
en mi caso he optado por configurar ambas interfaces de red como Adaptador Puente.
Para instalar los servicios requeridos usamos:
# apt-get install apache2 postfix ssh mysql-server
A continuación compramos que los servicios instalados están a la escucha.
4
Francisco José Cruz Jiménez
5. Monitorización con Nagios
SAD
2º ASIR
Para la monitorización de espacio en disco y demás necesitamos otro paquete, lo
instalamos con:
# apt-get install nagios-nrpe-server
Además tendremos que configurar el siguiente archive y establecer la ip del
servidor Nagios.
# nano /etc/nagios/nrpe.cfg
Configuración de Nagios
La configuración de Nagios que debemos establecer para la correcta
monitorización de los servicios y demás se reparte en varios archivos (aunque podemos
organizarlo como nos parezca mejor, no es obligatorio hacerlo como se propone en
aquí.). El directorio donde se encuentra estos archivos es /etc/nagios3/conf.d/. Aquí
tenemos dicho directorio junto con los archivos de configuración establecido por mi, ya
que estos archivos por defecto tienen otra división, por ejemplo, dividí el fichero
localhost_nagios2.cfg en dos ficheros separados, uno para los equipos (equipos.cfg) y
otro para los servicios (servicios.cfg)
$ ls –l /etc/nagios3/conf.d
5
Francisco José Cruz Jiménez
6. Monitorización con Nagios
SAD
2º ASIR
Cada equipo que queramos monitorizar lo debemos de reflejar en equipos.cfg
(los nombres de los archivos son opcionales, podemos poner lo que sea). Añadimos la
máquina de Ubuntu en este.
# nano /etc/nagios3/conf.d/equipos.cfg
El archivo plantillas_equipos.cfg es el template de los equipos, es decir, cada
vez que se le configura a una plantilla a un equipo, es como si se le añadiese todas las
opciones descritas en este. Lo mismo ocurre con el plantillas_servicios.cfg.
En el archivo contact_nagios2.cfg aparecen los contactos a los que queremos
que Nagios contacte en caso de alarma.
Otro archivo que configuraremos será grupos.cfg, en este aparecerán los grupos
en los que queramos meter a los equipos monitorizados, se pueden definir cuantos
grupos queramos (y como queramos), estos son los que yo he definido.
# nano /etc/nagios3/conf.d/grupos.cfg
6
Francisco José Cruz Jiménez
7. Monitorización con Nagios
SAD
2º ASIR
El siguiente archivo es servicios.cfg, en este pondremos los servicios que
queremos monitorizar.
# nano /etc/nagios3/conf.d/servicios.cfg
7
Francisco José Cruz Jiménez
8. Monitorización con Nagios
SAD
2º ASIR
Y añadimos lo siguiente:
También necesitamos crear un usuario que pueda acceder en todo momento a
mysql.
$ mysql –u root -p
Ya solo nos queda reiniciar el servicio para confirmar los cambios.
# service nagios3 restart
Monitorización
Para acceder a Nagios via web ponemos lo siguiente:
http://ip_equipo/nagios3
8
Francisco José Cruz Jiménez
9. Monitorización con Nagios
SAD
2º ASIR
Ahora voy a explicar algunas de las pantallas donde Nagios muestra
información, Esta pantalla nos muestra la topología de red que tenemos.
Aquí podemos ver una pantalla resumen del estado de los equipos de nuestra
red, agrupados por los hostgroups definidos anteriormente.
9
Francisco José Cruz Jiménez
10. Monitorización con Nagios
SAD
2º ASIR
Aquí se muestran los servicios.
NOTA : no consigo hacer funcionar la monitorización de mysql.
Monitorización de espacio de disco en la máquina Ubuntu:
10
Francisco José Cruz Jiménez