
🧩 Introducción
La monitorización proactiva de sistemas es esencial para garantizar la disponibilidad y el rendimiento óptimo de los servicios en entornos de TI. Nagios, junto con su complemento NRPE (Nagios Remote Plugin Executor), ofrece una solución robusta para supervisar recursos locales y remotos en servidores Linux. En este artículo, aprenderemos a configurar alertas de sistema utilizando Nagios y NRPE, asegurando una detección temprana de problemas y una respuesta rápida ante incidencias.
🔍 ¿Qué es Nagios y cómo funciona?
Nagios es una herramienta de código abierto para la monitorización de sistemas, redes y aplicaciones. Permite supervisar servicios críticos, recursos del sistema y dispositivos de red, generando alertas cuando se detectan anomalías. Su arquitectura modular y extensible facilita la integración de complementos personalizados para adaptarse a diversas necesidades de monitorización.
🔗 ¿Qué es NRPE y por qué utilizarlo?
NRPE es un complemento que permite a Nagios ejecutar plugins en servidores remotos. Esto es especialmente útil para monitorizar recursos locales (como uso de CPU, memoria o espacio en disco) en servidores que no pueden ser accedidos directamente por el servidor Nagios. NRPE establece una comunicación segura entre el servidor Nagios y los hosts remotos, permitiendo una monitorización eficiente y centralizada.
🛠️ Requisitos previos
Antes de comenzar, asegúrate de contar con lo siguiente:
- Un servidor con Nagios Core instalado y configurado.
- Acceso a los servidores Linux que deseas monitorizar.
- Conocimientos básicos de administración de sistemas Linux.
- Privilegios de superusuario (root) en los servidores involucrados.
📥 Instalación de NRPE en servidores cliente
1. Actualizar el sistema
bashCopiarEditarsudo apt update && sudo apt upgrade -y
2. Instalar NRPE y los plugins de Nagios
bashCopiarEditarsudo apt install nagios-nrpe-server nagios-plugins -y
3. Configurar el archivo nrpe.cfg
Edita el archivo de configuración de NRPE:
bashCopiarEditarsudo nano /etc/nagios/nrpe.cfg
- Permitir conexiones desde el servidor Nagios: Busca la línea
allowed_hosts
y agrega la IP del servidor Nagios: bashCopiarEditarallowed_hosts=127.0.0.1,IP_DEL_SERVIDOR_NAGIOS
- Definir comandos de verificación: Añade los comandos que deseas que NRPE ejecute. Por ejemplo: bashCopiarEditar
command[check_disk]=/usr/lib/nagios/plugins/check_disk -w 20% -c 10% -p / command[check_load]=/usr/lib/nagios/plugins/check_load -w 5,4,3 -c 10,8,6
4. Reiniciar y habilitar el servicio NRPE
bashCopiarEditarsudo systemctl restart nagios-nrpe-server
sudo systemctl enable nagios-nrpe-server
5. Configurar el firewall
Asegúrate de que el puerto 5666 esté abierto:
bashCopiarEditarsudo ufw allow 5666/tcp
🖥️ Configuración en el servidor Nagios
1. Verificar la comunicación con NRPE
Desde el servidor Nagios, ejecuta:
bashCopiarEditar/usr/lib/nagios/plugins/check_nrpe -H IP_DEL_CLIENTE
Deberías recibir una respuesta indicando la versión de NRPE.
2. Definir el host y los servicios en Nagios
Edita o crea un archivo de configuración para el host:
bashCopiarEditarsudo nano /usr/local/nagios/etc/servers/cliente.cfg
Agrega la configuración del host:
bashCopiarEditardefine host {
use linux-server
host_name nombre_del_cliente
alias Descripción del cliente
address IP_DEL_CLIENTE
}
Define los servicios a monitorizar:
bashCopiarEditardefine service {
use generic-service
host_name nombre_del_cliente
service_description Uso del disco
check_command check_nrpe!check_disk
}
define service {
use generic-service
host_name nombre_del_cliente
service_description Carga del sistema
check_command check_nrpe!check_load
}
3. Reiniciar el servicio Nagios
bashCopiarEditarsudo systemctl restart nagios
✉️ Configuración de alertas por correo electrónico
Para recibir notificaciones por correo electrónico, realiza los siguientes pasos:
- Instalar un agente de correo (por ejemplo,
mailutils
): bashCopiarEditarsudo apt install mailutils -y
- Configurar contactos y comandos de notificación en los archivos de configuración de Nagios:
- Define un contacto: bashCopiarEditar
define contact { contact_name admin alias Administrador del sistema email admin@tudominio.com service_notification_commands notify-service-by-email host_notification_commands notify-host-by-email }
- Define un grupo de contactos: bashCopiarEditar
define contactgroup { contactgroup_name admins alias Administradores members admin }
- Asocia el grupo de contactos a los servicios y hosts que deseas monitorizar.
- Define un contacto: bashCopiarEditar
- Reiniciar Nagios para aplicar los cambios: bashCopiarEditar
sudo systemctl restart nagios
✅ Verificación y pruebas
Para asegurarte de que todo funciona correctamente:
- Simula una condición de alerta: Por ejemplo, llena el espacio en disco para activar la alerta correspondiente.
- Verifica que Nagios detecta el problema y genera la alerta.
- Confirma que se envía una notificación por correo electrónico al contacto configurado.
🧠 Conclusión
La combinación de Nagios y NRPE proporciona una solución eficaz para la monitorización detallada de sistemas Linux. Al configurar adecuadamente las alertas de sistema, puedes detectar y resolver problemas de manera proactiva, garantizando la estabilidad y el rendimiento de tu infraestructura de TI.
🔗 Recursos adicionales
Preguntas Frecuentes:
Nagios es una herramienta de monitorización de sistemas que permite supervisar servidores, redes y servicios en tiempo real, alertando sobre posibles fallos o incidencias.
NRPE (Nagios Remote Plugin Executor) permite a Nagios ejecutar plugins en máquinas remotas, esencial para la monitorización de sistemas distribuidos.
Para configurar alertas, se deben definir comandos, servicios y contactos en los archivos de configuración de Nagios. También se puede usar NRPE para alertas remotas.
Nagios puede enviar alertas por correo electrónico, SMS, Slack u otras plataformas, dependiendo de la configuración del sistema y plugins usados.
Los plugins Nagios se pueden personalizar modificando scripts existentes o creando nuevos en Bash, Perl o Python según las necesidades específicas de monitorización.
Sí, para que Nagios pueda monitorizar servicios en servidores remotos, es necesario instalar y configurar NRPE en cada máquina cliente.
¿Tienes dudas o quieres aportar más?
Deja un comentario o únete a nuestra comunidad registrándote en el sitio.
Registrarse