Alternativa a Icinga: Pandora FMS de código abierto

Examina. Busca. Navega. Icinga, en idioma zulú. El origen de los nombres de gran cantidad de software son un tanto extraños (o desconocidos), y eso es material  para un artículo aparte. En esta oportunidad os propongo a Pandora FMS como alternativa a Icinga y, si sois lector(a) consuetudinario de nuestro blog, una reminiscencia vendrá a vuestra mente.

Finalizando el año 2018 acá evaluamos varias herramientas (Icinga incluida, aunque de manera breve), por ello hoy actualizamos la información y a la vez ofrezco a Pandora FMS como alternativa a Icinga. En un principio Nagios, software patriarca de la monitorización, nace en 1999,  justo antes de finalizar el milenio. Se mantuvo fresco y nuevo por diez años y en este ínterin nació Pandora FMS, en el año 2004. La comunidad de Nagios es entusiasta y en ese período estaba cohesionada. Hasta que un grupo de programadores de su comunidad les plantó cara al sr. Ethan Galstad y anunciaron una bifurcación: Icinga. Para ser más precisos esto ocurrió en  el mes mayo de 2009.

Considero que en ese punto Nagios adolecía de conexiones a base de datos robustas como Oracle® y PostgreSQL®; además faltaba una interfaz web escrita en PHP (no os riáis, considerad la época). Estas dos características fueron los primeros puntos que los bifurcadores retribuyeron al proyecto original. Vamos, que «el alumno superó a su maestro». Lamentablemente la separación fue dolorosa, con detalles que no vale la pena comentar.

En la actualidad Icinga no ha perdido ni un ápice su dinamismo pero su herencia de Nagios es innegable. 

Principios de operación de Nagios (https://es.wikipedia.org/wiki/Icinga)
Principios de operación de Nagios (https://es.wikipedia.org/wiki/Icinga)

Icinga e Icinga 2

En octubre de 2012 anunciaron a «Icinga 2», la cual fue escrito casi desde cero en lenguaje C++, tanto para la plataforma Microsoft Windows® como GNU/Linux®. Como bien sabéis tener una solamente una idea clara de lo que se quiere y/o necesita no es ninguna garantía para el éxito: llevar a cabo una versión estable del núcleo tomó varios años y en el mes de junio de 2014 tuvo a bien su renacimiento. Esta «competencia», a veces fuerte, entre Nagios e Icinga los fortalece a ambos; en general el mundo de la tecnología así es que puede evolucionar. Para Icinga le tomó 4 años y medio de duro trabajo el lograr su independencia de Nagios por medio de Icinga 2. Para el caso de Pandora FMS ya desde su planificación se tenía claro que Nagios es más bien de propósito general (aquí estamos muy conscientes de las limitaciones de Nagios), ¡de aquí es que nace una verdadera alternativa a Icinga!

Icinga, empresa como tal, hace un énfasis que cuando utilizan el simple término «Icinga» en vez de «Icinga 1.x» se refieren a la bifurcación de Nagios (su núcleo compartido). «Icinga 2» es tan diferente que necesita una conversión para ir de uno al otro. Pandora FMS como alternativa a Icinga ofrece desde un principio el mismo núcleo, haciendo sumamente fácil la transición a la versión «Enterprise».

Llegado este punto comento que, para incluso mayor complejidad -por no decir que provoca confusión- en este asunto de los tipos, versiones y componentes y sus nombres y denominaciones, también existe «Icinga for Windows®»…  Pero no, no es lo que ustedes están pensando. Si bien Icinga 2 se puede instalar en Windows®, este componente que traigo a colación es un módulo totalmente completo para PowerShell (PS), en realidad un entorno de programación para dicha herramienta. Pandora FMS toma la alternativa de guiones con los comandos estándar de PS para cuando monitorizamos en dicha plataforma. A continuación esto nos lleva a exponer a los agentes de ambas soluciones.

Métodos de recolección de datos

Simplificando al máximo hay dos formas de obtener datos de las máquinas a nuestro cargo: les «preguntamos» directamente a nuestros dispositivos (también llamada verificación activa) o bien usamos un software que instalemos en cada uno de los dispositivos (también llamada verificación pasiva). La primera opción recae sobre los servidores de Icinga y Pandora FMS, acá no hay mayor diferencia (estos datos bien pueden ser HTTP, correo -POP3 y sus comandos- y ping ICMP, por ejemplo). Sin embargo otorgo a Pandora FMS una ligera ventaja en el aspecto más útil de consulta a distancia: SNMP (más información en este artículo).

Métodos de monitorización de Icinga (https://www.digitalocean.com/community)
Métodos de monitorización de Icinga (https://www.digitalocean.com/community)

Veamos entonces los agentes software, o simplemente agentes: Icinga utiliza «Nagios Remote Plugin Executor» (NRPE) el cual agrega además un servidor en el lado del cliente… Ya comenté el aspecto sobre PowerShell pero también es extensible a GNU/Linux: si nos vamos por lo normal y estándar podemos rápidamente el crear nuestros propios diagnósticos personalizados. Informo de esto porque NRPE también espera que el servidor Nagios (o Icinga en este caso) pregunte de manera explícita por los datos a recoger lo cual es similar al primer método de recolección de datos (y en honor a la justicia son datos más complejos como uso de almacenamiento y memoria, servicios en ejecución y muchos más que no podemos hacer por la consulta pública a la interfaz de red).

Por favor, lea también   Comandos para GNU/Linux pocos conocidos

Pandora FMS, acá en examen como alternativa a Icinga, trabaja de manera distinta: envía los datos en XML con su protocolo Tentacle para mayor seguridad, en un intervalo de 5 minutos (valor por defecto) al servidor especializado para ello en Pandora FMS («Data Server»).

Esto facilita nuestro trabajo y minimiza la necesidad de instalar nuevas versiones del agente, porque solo debemos configurar de manera interna pequeños guiones con una sintaxis rápida de aprender (en la versión «Enterprise» incluso va a un paso más allá: los editamos por la consola y se guarda en el servidor Pandora FMS y se reparte de manera automática en cada dispositivo, o grupos de dispositivos, así sean miles de ellos).

Pandora FMS concentra mayores esfuerzos en presentar datos de rendimiento mientras que los estados están en el siguiente nivel de importancia. Un dato de estado generalmente es verdadero/falso, como por ejemplo «¿está en línea?» mientras que  un dato de rendimiento pudiera ser «¿cuánto tiempo ha estado en línea seguido, sin interrupción?».

Notas sobre instalación

Icinga sobre GNU/Linux solo necesita ser instalado por medio de apt ya que se encuentra en la mayoría de los repositorios Debian y sus derivados. Para su configuración de manera gráfica se puede utilizar NConf, herramienta compatible con Nagios también (aunque en 2019 se detuvo su desarrollo y soporte). En estos casos siempre alabo al software libre porque bien podemos hacer nuestros cambios y allanar nuestro propio camino.

Para el caso de Pandora FMS se recomienda CentOS, agregar los «Extra Packages for Enterprise Linux» (EPEL), adiciona Pandora FMS al repositorio local y luego descargar e instalar con yum. También existen otros métodos de instalación como clonar directo desde GitHub o emplear Docker.

Interfaces

Icinga viene con una interfaz clásica denominada apropiadamente «Icinga Classic». Viene con HTML y CSS sin mayor dinamismo, así que necesitaremos recargar la página en cada oportunidad como al cambiar algo o agregar una configuración, etcétera. Fue mejorada en Icinga 2 con «Icinga Web» la cual utiliza tecnología AJAX (que esencialmente es JavaScript con el que se intercambia información en segundo plano con el servidor y modifica/actualiza la página web). Denoto que también existe «Icinga Web 2» para «Icinga 2» el cual requiere incluso componentes adicionales, como por ejemplo flatpickr (calendario más ligero escrito en JavaScript). La consola de Pandora FMS, como alternativa a las interfaces de Icinga, utiliza cualquier navegador web moderno, sin cortapisa alguna.

Inicio de sesión en Icinga Web 2 (fuente: captura de pantalla)
Inicio de sesión en Icinga Web 2 (fuente: captura de pantalla)

Pandora FMS como alternativa a Icinga

Sí queréis probar y ver cómo funciona nuestra versión comunitaria estamos en Github y también contamos con un Dispositivo de Virtualización de Software el cual trae CentOS como sistema operativo, todo listo para usar. Os recomiendo leer nuestras Preguntas Frecuentes, aclaratorias prácticas y directas para la mayoría de nuestras situaciones de trabajo en el área de la monitorización.  

Antes de despedirnos, recuerda que Pandora FMS es un software de monitorización flexible, capaz de monitorizar dispositivos, infraestructuras, aplicaciones, servicios y procesos de negocio.

¿Quieres conocer mejor qué es lo que Pandora FMS puede ofrecerte? Descúbrelo entrando aquí: https://pandorafms.com/es

Si cuentas con más de 100 dispositivos para monitorizar puedes contactar con nosotros a través del siguiente formulario: https://pandorafms.com/es/contactar/

Además, recuerda que si tus necesidades de monitorización son más limitadas tienes a tu disposición la versión OpenSource de Pandora FMS. Encuentra más información aquí: https://pandorafms.org/es/

No dudes en enviar tus consultas. ¡El equipazo de Pandora FMS estará encantado de atenderte!
TítuloEnlace
icinga default admin password https://www.mxwiki.com/password/icinga/icinga-default-admin-password
Icinga L10nhttps://icinga.com/2020/05/28/icinga-l10n/
Icinga Networking Monitoringhttps://books.google.co.ve/books?id=SUciAgAAQBAJ&pg=PT155&lpg=PT155&dq=%2B%22icinga%22+%2B%22basic%22+-%22icinga2%22+-%22icinga+2%22&source=bl&ots=bwXd-kflKD&sig=ACfU3U2CmMIJXZrqNjC70_sU9lKXTfvK-Q&hl=es&sa=X&ved=2ahUKEwjz5abtlvrpAhWK5OAKHZVEAcEQ6AEwBXoECAoQAQ#v=onepage&q=%2B%22icinga%22%20%2B%22basic%22%20-%22icinga2%22%20-%22icinga%202%22&f=false
Configure Icinga On Open Source Linux Server -A Monitoring Tool For RHEL/CentOS 7.0https://ny55.blogspot.com/2017/09/configure-icinga-on-open-source-linux.html
Install Icinga Monitoring Tool on Ubuntuhttps://unixmen.com/install-icinga-monitoring-tool-on-ubuntu/
NAGSTAMON ICINGA instalar y configurarhttps://vivaubuntu.com/nagstamon-icinga-configurar/
Sourceforge nagstamonhttps://sourceforge.net/projects/nagstamon/
NRPE - Agent and Plugin Explainedhttps://support.nagios.com/kb/article/nrpe-agent-and-plugin-explained-612.html
flatpickr - javascript datetime pickerhttps://github.com/flatpickr/flatpickr
Icinga for Windows: Installing the Icinga PowerShell Frameworkhttps://icinga.com/docs/windows/latest/doc/installation/02-Manual-Installation/
TítuloEnlace