Instalación de Nagios

Si ya tenemos preparado el entorno para monitorizar mediante el protocolo estándar SNMP, ya sea en los dispositivos de red como en los servidores Windows (revisar la entrada sobre la configuración de SNMP para servidores Windows). Es el turno de desplegar un sistema central de monitorización.
El mercado dispone de un gran catálogo de productos más o menos automatizados para hacerlo (Microsoft System Center, ManageEngine, SolarWinds, etc). Personalmente me encuentro en que la mayoría de empresas de nuestro entorno, no ven una necesidad directa sobre el entorno de producción del negocio que un sistema de estas características les puede aportar. Por lo que su presupuesto se ve reducido a 0, siendo muy difícil de justificar por parte de los Departamentos de TI su adquisición. Pero, cada vez más los entornos de producción dependen de los sistemas informáticos y no por eso debemos dejar de monitorizar nuestro entorno. Una alternativa, que hace ya mucho tiempo que existe, es Nagios, que a lo largo del tiempo, se ha ido consolidando como un estándar en la monitorización de los entornos de TI. Basado en una licencia de software libre, nos permite hacer una aproximación a la monitorización sin un gran gasto. Más adelante, podemos hacer el salto a la versión comercial del mismo o alguno de los productos nombrados anteriormente.
En esta entrada se aborda el proceso de instalación de la versión libre sobre una máquina Linux basada en CentOS 7 (revisar la entrada sobre el proceso de instalación de CentOS 7) con la monitorización de un servidor Windows mediante el protocolo SNMP.
Instalación de Nagios
Como ya he comentado, a partir de una instalación actualizada de CentOS 7 con el servidor web Apache, procedemos a hacer la instalación del entorno de monitorización propiamente dicho. Todo el proceso de instalación se hace desde la consola. Recordemos que se trata de un servidor, como menos cosas tengamos instaladas mejor. Hay que iniciar sesión con un usario con los permisos correspondientes para hacer este tipo de instalación, para esta entrada se utiliza el usuario root. Empezamos por instalar, si no lo está, el compilador GCC y sus dependencias.
yum -y install gcc
Creación del usuario y grupo para utilizar en los servicios de Nagios:
useradd nagios groupadd nagcmd usermod -a -G nagcmd nagios
Nagios no es un único paquete que se instala y ya está. Lo forman diferentes componentes y a la vez un montón de añadidos, casi para controlarlo todo, que se añaden según las necesidades.
- Nagios core. Es el núcleo del entorno de monitorización, lo primero que hay que instalar y que lo hace funcionar todo.
- Nagios Plugins. Son complementos, o también llamados comandos, para poder monitorizar diferentes dispositivos, servicios, hardware, etc… El paquete Nagios Plugins corresponde a comandos básicos para empezar a funcionar y, que se pueden ampliar según las necesidades. Tenéis un puñado en el directorio de intercambio Exchange Nagios.
- Nagios FrontEnd. El entorno Nagios no es lo que se llama, precisamente, de lo más bonito, tampoco es su objetivo. Los FrontEnds son temas o interfaces enteras que hacen más agradable o adaptable el entorno a las necesidades de cada uno. Es la manera de representar gráficamente los datos recogidos.
Para la instalación de nuestro entorno de monitorización Nagios utilizaremos los siguientes paquetes, en su vertiente de software libre:
- Nagios core v. 4.0.8 – http://prdownloads.sourceforge.net/sourceforge/nagios/nagios-4.0.8.tar.gz
- Nagios plugins v. 2.0.3 – http://nagios-plugins.org/download/nagios-plugins-2.0.3.tar.gz
- Vantour Style – http://www.be-root.com/downloads/nagios/vautour/vautour_style.zip
Manos a la obra, creamos una carpeta temporal para descargar todos estos paquetes
mkdir /tempnagios cd /tempnagios
Para descargar directamente sobre el servidor Linux, instalar WGET (este último es opcional).
yum -y install wget
Hacer la descarga de los diferentes paquetes:
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
Una vez se hayan descargado los tres archivos, es el turno de descomprimirlos. De momento los instaladores:
tar zxvf nagios-4* tar zxvf nagios-plugins-*
Con lo que nos quedará una cosa similar a la captura de pantalla:
Borrar los archivos comprimidos:
rm -f nagios-4*.tar.gz rm -f nagios-plugins-2*.tar.gz
Preparar para compilar la aplicación, asignando el grupo de seguridad a utilizar. Primero, acceder al directorio donde se ha descomprimido el archivo de Nagios core descargado (naturalmente, se debe cambiar la ruta de los directorios según la instalación). Ejecutar la instrucción configure asignando a la instalación el grupo de seguridad para Nagios nagcmd creado anteriormente:
cd /tempnagios/nagios-4.0.8 ./configure --with-command-group=nagcmd
Compilar y instalar la aplicación:
make all make install make install-init make install-config make install-commandmode make install-webconf
Creación del usuario para acceder al entorno web, por ejemplo: nagiosadmin.
htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
Pide la contraseña del nuevo usuario. Con este método, se pueden añadir tantos usuarios como se crea oportuno.
No olvidarse de reiniciar el servicio web del Apache para que aplique los cambios del nuevo directorio web de Nagios, sino no se cargará nada:
systemctl restart httpd
Configurar para instalar los plugins (recordar que los directorios se deben cambiar por los correspondientes en cada caso):
cd /tempnagios/nagios-plugins-2.0.3 ./configure --with-nagios-user=nagios --with-nagios-group=nagcmd
Compilar y instalar los plugins:
make make install
Habilitar el servicio de Nagios para iniciarse automáticamente cada vez que se inicie el servidor y se ponga en marcha:
chkconfig --add nagios chkconfig --level 35 nagios on systemctl start nagios
Se puede comprobar que funciona abriendo un navegador Web y accediendo a la dirección de Nagios. Corresponde al nombre del servidor web y el directorio virtual /nagios, por ejemplo: http://servidor/nagios. Al hacerlo, pide nombre de usuario y contraseña. Son los que se han establecido con el comando htpasswd: nagiosadmin. Si todo está correcto se abre la página principal de Nagios. Es un primer paso, pero no el último.
Haciendo click en el apartado Tactical Overview, visualizamos los datos que dispone Nagios:
Por comodidad en la gestión de los archivos, personalmente, me gusta crear un enlace simbólico en la raíz con el nombre de nagios para llegar más rápido:
ln -s /usr/local/nagios /nagios
Acceder a la carpeta de nagios, se puede utilizar el enlace simbólico:
cd /nagios
Para cambiar el tema del entorno web, se crea una carpeta backups y se realiza una copia de seguridad de la carpeta share:
mkdir -p /nagios/backups cp /nagios/share/ /nagios/backups/ -R
Como que el tema está comprimido con un archivo ZIP, para descomprimirlo hay que disponer del UNZIP. Se instala del repositorio:
yum -y install unzip
Se descomprime el archivo del tema dentro de la carpeta share de Nagios:
unzip /tempnagios/vautour_style.zip -d /nagios/share/
Se pide para sobreescribir los archivos existentes, contestar con la letra A para que los sobreescriba todos.
Volviendo a abrir el entorno web ha cambiado un poco. Para gustos colores y aquí cada uno que aplique lo que mejor le guste. Sirva este último apartado como ejemplo de como cambiar el entorno.
A la hora de acceder al frontal web, por comodidad, en la raíz del servidor se puede crear un archivo HTML de redirección al directorio virtual. De esta manera, sólo indicando el nombre del servidor ya se accede directamente al entorno de Nagios. El archivo a crear, puede ser con el vi, index.html a guardar en la raíz del Apache
vi /var/www/html/index.html
debe contener la siguiente información, cambiando el nombre del servidor por el que corresponda (recordar, la tecla i para insertar texto, ESC para salir de añadir texto y :wq para guardar y cerrar el archivo):
<html>
<head>
<META http-equiv="Refresh" Content="0; URL=http://servidornagios/nagios/">
</head>
<body>
</body>
</html>
Hacer una copia de seguridad del archivo de configuración de NAGIOS antes de empezar a tocar parámetros.
cp /nagios/etc/nagios.cfg /nagios/etc/nagios.original
Modificar el formato de fecha y hora al europeo editando el archivo de configuración /nagios/etc/nagios.cfg y cambiándole el parámetro (recordar que para buscar en el vi hay que escribir :/ seguido de la palabra a buscar):
date_format=euro
Comprobar los archivos de configuración. Es una operación recomendable de hacer cada vez que se modifican parámetros para comprobar que todo funcionará correctamente:
/nagios/bin/nagios -v /nagios/etc/nagios.cfg
Mi propuesta es preparar un script para que haga la comprobación y reinicie el servicio:
vi /rnagios.sh
Con el contenido:
#!/bin/bash
#
/nagios/bin/nagios -v /nagios/etc/nagios.cfg
systemctl restart nagios
Cambiar los permisos del archivo para que se pueda ejecutar por el propietario:
chmod 700 /rnagios.sh
Ejecutar cada vez que convenga:
/./rnagios.sh
Enviar alertas por correo electrónico
Nagios envía las alertas por correo electrónico. Por defecto lo hace en el propio servidor POSTFIX del Linux, en que posiblemente no lleguen los correos electrónicos a los buzones habituales. Como que los correos electrónicos sólo son a título informativo para el propio Departamento de TI, siendo igual de donde provengan y sin necesidad de enviar hacia el público. Se puede modificar el servidor POSTFIX para que encamine los correos electrónicos a otro servidor de correo, modificando su configuración:
vi /etc/postfix/main.cf
Habilitar la variable relayhost = [nombre_del_servidor_de_correo], por ejemplo:
relayhost = [mail.correo.com]
Reiniciar el servicio de POSTFIX para aplicar los cambios:
systemctl restart postfix
También hay que disponer de un cliente para enviar correos electrónicos, que tal el mailx?
yum -y install mailx
Permitir consultas por SNMP
Como que el objetivo es poder escuchar y hacer consultas por el protocolo SNMP también hay que disponer del servicio y utilidades correspondientes al servidor. Instalar los paquetes necesarios para el servicio y las herramientas SNMP:
yum -y install net-snmp net-snmp-utils
Hacer una copia de seguridad del archivo de configuración original:
cp /etc/snmp/snmpd.conf /etc/snmp/snmpd.original
Modificar el nombre de la comunidad SNMP con las que hay configuradas en la red. Recordar no utilizar las comunidades SNMP por defecto!.
vi /etc/snmp/snmpd.conf
Cambiar el nombre de la comunidad public por la correcta de la línea:
com2sec notConfigUser default public
Habilitar y iniciar el servicio:
systemctl enable snmpd.service systemctl start snmpd.service
Comprobar que se pueda leer la información SNMP de un servidor o equipo de la red:
snmpwalk -v 2c -c compublic -O e nombre_del_equipo_snmp
El sistema debe devolver un listado de parámetros. En caso de que no se pueda comunicar indicará un error o bien no aparecerá este listado.
Llegados a este punto ya disponemos del sistema de monitorización operativo. Ahora, hay que añadir los equipos y definir que se quiere monitorizar en cada caso. La configuración de estos archivos la trataré en otra entrada.
¿Te ha gustado el artículo? Lo puedes compartir en las redes sociales. También puedes dejar tu opinión, comentario o sugerencia. ¡Gracias!
Similar Posts by The Author:
- Microsoft SQL Server con SMB3
- Microsoft SQL Server amb SMB3
- Containers en Linux
- Containers amb Linux
- Migrar el servidor de archivos a Windows Server 2019
- Migrar el servidor de fitxers a Windows Server 2019
- Puerta enlace a Azure en el Windows Admin Center
- Porta enllaç a Azure en el Windows Admin Center
- Hola mundo! WordPress 5 y Gutenberg
- Hola món! WordPress 5 i Gutenberg