Plugins para Nagios: los módulos fundamentales del software de monitorización de redes

En nuestra guía digital puedes obtener información acerca de las múltiples posibilidades de uso de Nagios, una aplicación de alto rendimiento para la monitorización de redes. En ella se aborda cuál es el papel que juegan los plugins oficiales sin los cuales la supervisión de redes con Nagios no sería posible. Ahora bien, ¿qué importancia tienen exactamente este pack de plugins y las diversas extensiones de terceros? ¿Cómo se puede llevar a cabo su instalación?

¿En qué consisten realmente los plugins para Nagios?

A diferencia de otros programas de monitoreo, Nagios no posee ningún mecanismo propio para comprobar el estado de los sistemas y de los servicios de red, sino que son las aplicaciones, es decir, los plugins para Nagios, los que desempeñan esta tarea. Sobre las extensiones, también denominados módulos, se puede decir que se trata de archivos ya compilados escritos en C o C++ o de scripts ejecutables (Perl, PHP, etc.), que contienen argumentos en las líneas de comandos que ponen en marcha el chequeo y transmiten los resultados al software encargado de la monitorización. Sin embargo, Nagios se hace cargo de llevarla a cabo por sí mismo cuando hay que controlar el estado del servicio o host en cuestión.

Como consecuencia, los plugins actúan como una capa de abstracción entre la lógica de la monitorización, que se puede visualizar en la interfaz de Nagios, y los propios servicios y hosts que serán monitorizados. La ventaja de esta arquitectura es que capacita a Nagios para supervisar todo aquello para lo cual se puede programar una revisión automática. No obstante, la herramienta de monitoreo no es capaz de entender cuáles son las características de los componentes de red que inspecciona ni cómo se llevan a cabo cada uno de los controles, lo que explica por qué Nagios no puede funcionar sin plugins.

¿Qué tipos de plugins para Nagios se pueden encontrar?

La libertad que existe a la hora de programar un plugin para Nagios da lugar a que se desarrollen y sigan desarrollándose extensiones para los diversos dispositivos, programas, procesos de sistemas, protocolos y otros servicios. De este modo se puede hablar de plugins para:

  • HTTP, POP3, IMAP, FTP, SSH, DHCP
  • Uso de CPU, discos duros y memorias, usuarios activos
  • Sistemas operativos como Windows, distribuciones Linux o Unix
  • Router, switches
  • Archivos de registro

En principio, es necesario diferenciar los plugins para Nagios anteriormente mencionados de aquellos desarrollados por los miembros de la comunidad de Nagios. El paquete oficial comprende alrededor de 500 plugins estándar, que cubren a un gran número de las revisiones de red más importantes, así como diferentes bibliotecas esenciales para muchos de los módulos procedentes de terceros. El fabricante es quien se ocupa del mantenimiento de la colección, de forma que todas las extensiones están siempre actualizadas. Por el contrario, la comunidad no siempre se dedica al desarrollo de los plugins, por lo que en algunos casos puede que estos no sean compatibles con la versión Nagios Core o con los componentes de red examinados.

Antes de buscar unos plugins determinados en el directorio Nagios Exchange es necesario que descargues el paquete oficial de plugins de la página web del fabricante. Si cuentas con los conocimientos necesarios, también tienes la posibilidad de programar tu propio plugin para Nagios. Para saber cuáles son los factores que tendrás que tener en cuenta para ello, échale un vistazo a las directrices oficiales.

Cómo instalar y configurar los plugins para Nagios

Si ya te has decidido por un plugin y lo has descargado, ahora debes instalarlo y configurarlo. A continuación, te mostramos cuáles son los pasos más importantes para su instalación y configuración en Ubuntu.

1. Accede al directorio de descargas y descomprime el archivo que has descargado. Las interfaces de línea de comandos del paquete del plugin oficial tienen la siguiente apariencia:

cd ~/download
tar xzf nagios-plugins-2.1.2.tar.gz

2. A continuación, ve a la carpeta descomprimida:

cd nagios-plugins-2.1.2

3. Aquí se trata de compilar e instalar los plugins. Esto se puede llevar a cabo con las líneas que aparecen seguidamente:

./configure --with-nagios-user=nagios --with-nagios-group=Nagios
make
make install

4. Ahora ve a la interfaz web Nagios XI y abre el apartado de administración. En la barra de menú que aparece a la izquierda encontrarás la opción “System Extensions” y en ella el apartado “Manage Plugins”, donde podrás enlazar las extensiones instaladas con el software Nagios. Haz clic en el botón “Browse” y selecciona el plugin para Nagios deseado. Si recurres a “Upload Plugin”, podrás implementarlo y este aparecerá incluido en la lista de módulos disponibles.

5. Puede que resulte útil comprobar si los plugins que se han implementado realmente funcionan y llevan a cabo las comprobaciones requeridas. Para ello, no es necesario poner el software de monitorización en funcionamiento, ya que las extensiones se pueden ejecutar a través de la línea de comandos. En este sentido, basta con abrir el directorio de plugins como es habitual, es decir, /usr/local/nagios/libexec, y probar los módulos con los comandos adecuados. Para conocer a cada plugin y a los posibles parámetros, se recomienda, por ejemplo, abrir el menú de ayuda (-h). 

cd /usr/local/nagios/libexec
./name_des_plugins -h 

6. Con ayuda de los conocimientos sobre los posibles argumentos de las líneas de comando, una vez se ha cargado el plugin puedes definir las instrucciones para el software de Nagios. Para ello, dirígete al apartado “Configure” del menú y elige las opciones “Core Config Manager” y “Commands”. A continuación, haz clic en “Add New”, tras lo que se abrirá una pantalla de entrada para una nueva instrucción de Nagios que se especifica así:

  • Command name: en este punto se define el nombre de la instrucción, que deberá ser lo más informativo posible, como por ejemplo el nombre del correspondiente plugin para Nagios.  

  • Command line: en este apartado se indican el plugin y la interfaz de línea de comando correspondiente. La macroinstrucción $USER1$ opera como comodín para el directorio de plugins y $ARG1$ se establece como posible argumento en la línea de comandos.

  • Command type: selecciona la opción “check command” en caso de que el plugin tenga que examinar un host o un servicio o “misc command” cuando se tenga que monitorizar un acontecimiento. Si no tienes la certeza de qué tipo de componente se trata, selecciona la opción “unclassified”.  

  • Active: la instrucción de Nagios se activa si se marca esta opción.

  • Available plugins: este menú desplegable ofrece un resumen de los plugins que están disponibles.

Guarda tu comando de Nagios mediante la opción “Save” y confírmalo posteriormente en el menú general haciendo clic en el botón “Apply Configuration”. Así, la extensión adecuada, junto a una instrucción de Nagios, está disponible y puede utilizarse para las correspondientes tareas de monitorización, de tal forma que puedes crear hosts, servicios o acontecimientos y asignarlos al plugin.