nagios
``
- monitoreo
- Docker
- Nagios Core Services Platform
- Imagen Docker oficial (jasonrivers/nagios)
- monitorizar servicios
- Instalación de Nagios Core en Docker (Medium)
Descripción General
Nagios es una de las primeras plataformas de monitoreo open source ampliamente adoptadas. Está orientada al monitoreo de infraestructura, servicios, dispositivos de red y aplicaciones mediante un sistema modular de plugins. Aunque su interfaz es más clásica en comparación con herramientas modernas, su robustez y extensibilidad lo mantienen como un estándar en muchos entornos.
Arquitectura de Nagios
Componentes Principales
- Nagios Core
- Motor central que procesa verificaciones, gestiona alertas y ejecuta los plugins.
- No incluye una interfaz avanzada: su consola web es funcional pero minimalista.
- Plugins
- Programas externos que ejecutan pruebas específicas: ping, HTTP, DNS, bases de datos, SNMP, etc.
- Escritos en Bash, Perl, Python, C/C++, PowerShell o cualquier lenguaje ejecutable en el sistema.
- NRPE (Nagios Remote Plugin Executor)
- Permite ejecutar plugins en máquinas remotas cuando no es posible hacerlo desde el servidor principal.
- Útil para monitoreo profundo (CPU, RAM, disco local, procesos, logs).
- NSClient++
- Agente para sistemas Windows.
- Permite monitorizar servicios, procesos, eventos y métricas del sistema.
- NCPA (Nagios Cross-Platform Agent)
- Agente universal compatible con Windows, Linux y macOS.
- Envío de datos vía API.
Flujo General de Funcionamiento
- Nagios Core ejecuta plugins según los intervalos configurados.
- Los plugins retornan códigos de estado (OK, WARNING, CRITICAL, UNKNOWN).
- El scheduler procesa los resultados.
- Se generan alertas y notificaciones si procede.
- La consola web muestra estados, historiales y alertas activas.
Métodos de Monitoreo
Monitoreo Activo (Active Checks)
- Ejecutados directamente por Nagios Core o por NRPE.
- Permite control total sobre intervalos, timeouts y comandos.
- Ideal para:
- HTTP/HTTPS
- SSH
- SMTP/POP/IMAP
- Procesos específicos
- Servicios internos
Monitoreo Pasivo (Passive Checks)
- Servicios o agentes externos envían resultados a Nagios.
- Útil para:
- Hosts detrás de firewalls.
- Dispositivos que solo notifican estados.
- Integración con scripts externos o sistemas legacy.
SNMP y Dispositivos de Red
- Nagios usa plugins SNMP para:
- Consultar OIDs
- Leer métricas de switches, routers y firewalls
- Detectar estados de interfaces, tráfico y fallos
Agentes
- NRPE para Linux/Unix
- NSClient++ para Windows
- NCPA como alternativa más moderna
Monitoreo de Servicios
Nagios sobresale en la supervisión específica de servicios, incluyendo:
- APIs HTTP
- Motores de base de datos
- Servicios del sistema (systemd, init)
- Daemons en Unix/Linux
- Procesos Windows
- Latencia, disponibilidad y tiempos de respuesta
Los checks se definen en archivos de configuración basados en texto, lo que permite control granular pero requiere disciplina para mantenerlos bien organizados.
Visualización y Alertas
Consola Web
- Estado de hosts y servicios
- Árboles de dependencias
- Eventos recientes
- Historial de alertas
- Mapas básicos
Alertas
- Notificaciones por:
- SMS
- Webhooks
- Scripts personalizados
- Basadas en cambios de estado HARD/SOFT
- Totalmente configurable en
contactsycontact_groups
Integración con Docker
Uso con Contenedores
Ideal para laboratorios, testing o despliegues ligeros.
Ejemplo general:
- Contenedor con Nagios Core
- Volumen para configuraciones
- Plugins añadidos manualmente
- Exposición de puertos para la consola web
La imagen más usada: jasonrivers/nagios
Ventajas de Docker
- No requiere instalar paquetes complejos en la máquina host.
- Permite versionar la configuración y plugins.
- Entorno reproducible en equipos de desarrollo y producción.
Instalación con Docker
Paso Básico (Ejemplo)
Este comando es típico usando la imagen jasonrivers:
docker run --name nagios \
-p 8080:80 \
-v /srv/nagios/etc:/opt/nagios/etc \
-v /srv/nagios/var:/opt/nagios/var \
-v /srv/nagios/plugins:/opt/Custom-Nagios-Plugins \
jasonrivers/nagios
`
Configuración y Plugins
Configuración por Archivos
nagios.cfgobjects/commands.cfgobjects/hosts.cfgobjects/services.cfgobjects/contacts.cfgobjects/timeperiods.cfg
Todo es texto plano → control total.
Plugins
Plugins comunes:
check_pingcheck_httpcheck_tcpcheck_dnscheck_loadcheck_diskcheck_mysql
Extensibilidad:
- Plugins propios en Bash, Python o C/C++
- Integración con sistemas externos vía passive checks
Casos de Uso Comunes
- Infraestructuras pequeñas o medianas
- Equipos con cultura DevOps que valoran configuraciones declarativas
- Redes con alto uso de SNMP
- Monitoreo de bases de datos y servicios web
- Escenarios legacy que requieren agentes como NRPE
Limitaciones Comunes (y Soluciones)
- Interfaz clásica: usarse con complementos como Centreon, Thruk, Icinga Web.
- Escalabilidad limitada: usar distribuido vía NSCA o NCPA.
- Curva de aprendizaje: documentación extensa pero configuración manual.
Aquí tienes una versión ampliada y actualizada:
Alternativas basadas en Nagios
Icinga
- Es un fork moderno de Nagios. (Wikipedia)
- Está reescrito (especialmente Icinga 2) para mejorar la escalabilidad, ofrecer clustering, API REST, interfaz web moderna y mayor rendimiento. (freebsdfoundation.org)
- Compatible con los complementos (“plugins”) de Nagios, lo que facilita la migración. (freebsdfoundation.org)
- Documentación oficial: Icinga Docs (Icinga)
- Repositorio GitHub de Icinga: (GitHub)
- Casos de uso destacados: monitorización distribuida, alta disponibilidad, integración con herramientas modernas como Grafana, Terraform, AWS, Azure, etc.
Ventajas frente a Nagios:
- Mejor gestión de configuración y API moderna.
- Interfaz Web 2.0 más usable y potente.
- Soporte para bases de datos más variadas (PostgreSQL, Oracle…). (Wikipedia)
- Arquitectura modular y escalable.
Centreon
- Plataforma completa para monitoreo de infraestructura, redes, aplicaciones y más. (Centreon)
- Nació como una extensión / GUI para Nagios, pero ha evolucionado hasta ofrecer una solución más sofisticada y empresarial. (Centreon)
- Conserva compatibilidad con los plugins de Nagios (motor de comprobaciones). (Centreon)
- Tiene capacidades avanzadas: descubrimiento automático, dashboards, informes, alertas, notificaciones, escalabilidad, etc. (Centreon)
- Sitio oficial de Centreon: (Centreon)
Ventajas frente a Nagios:
- Interfaz más accesible para usuarios no técnicos.
- “Todo en uno”: consola + monitorización + alertas + reporting.
- Mejor soporte para entornos híbridos (on-prem + cloud).
- Gestión más escalable y profesional para empresas.
Naemon
- Proyecto open source diseñado como un reemplazo moderno de Nagios Core. (naemon.io)
- Basado en el núcleo de Nagios 4, pero con muchas correcciones de errores, mejoras de rendimiento y nuevas funciones. (naemon.io)
- Arquitectura modular: separa el core, los brokers, la integración con la base de datos, etc., de forma más clara. (naemon.io)
- Compatible con los plugins de Nagios (ya que mantiene la interfaz de comprobaciones). (naemon.io)
- Proyecto gestionado por la comunidad, con enfoque en independencia técnica. (naemon.io)
- Descargas y paquetes disponibles: la versión estable 1.4.4 fue lanzada en junio de 2025. (naemon.io)
- Sitio oficial de Naemon: (naemon.io)
- Info técnica adicional: integración con Livestatus, módulos NEB (Naemon Event Broker), API, gestión de resultados, escalabilidad, etc. (naemon.io)
- Según ConSol (empresa que da soporte), Naemon permite definir jerarquías de hosts, manejar notificaciones, handlers y usar una interfaz web (por ejemplo con Thruk). (ConSol Monitoring)
Ventajas frente a Nagios:
- Más estable y optimizado respecto a Nagios Core “puro”.
- Mejor rendimiento en entornos con muchas comprobaciones.
- Modularidad que facilita mantenimiento y escalado.
- Continua compatibilidad con el ecosistema de plugins de Nagios.
¿Te gusta este contenido? Suscríbete vía RSS