Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of Contents

Web

Remoto, solo puerto

NMIS puede monitorear la accesibilidad de los puertos TCP (usando la herramienta NMAP) y un servicio web que le dirá si el servidor es accesible (pero no si está funcionando completamente). Sin embargo, este tipo de supervisión monitoreo no requiere que se ejecute ningún software en el servidor de destino.

Aquí hay un fragmento de configuración para este nivel de monitoreo, para los puertos web estándar 443 y 80, que activaría para el servidor que desea probar:

Proceso del servidor

Si SNMP está habilitado para el sistema en cuestión, si NMIS está sondeando colectando información de ese sistema y, si el sistema y su modelo admiten la MIB de recursos de host, entonces NMIS puede verificar los estados del proceso y verificar la existencia de un proceso específico. El tipo de servicio debe ser " service", el nombre del proceso se debe proporcionar como Nombre de servicio Service name y debe activar el servicio para el nodo que desea probar.

Para una caja de CentOS con un nodo con CentOS y Apache 2.2.x, estaríamos usando la siguiente definición de servicio, que busca procesos llamados " httpd":

...

Monitoreo basado en script SAPI

NMIS también puede realizar una cantidad limitada de interacción con un servicio basado en TCP utilizando scripts SAPI. Los scripts de ejemplo para POP3 y HTTP básico se envían con encuentran en NMIS en formato la carpeta /usr/local/nmis8/conf/scripts. La httpsecuencia de comandos predeterminada se   El script http default, conecta al servidor web en cuestión e intenta descargar la URL del índice raíz "/"; si esta solicitud tiene éxito o devuelve una redirección HTTP, se considera que el servicio está bien.

Para habilitar este tipo de supervisión, debe definir el servicio con el nombre que coincida con el nombre del archivo de secuencia de comandos. El nombre del servicio puede ser un texto de su elección, pero el tipo de servicio debe ser " script", y debe activar ese servicio para el nodo con el que desea comunicarse:

...

Monitoreo end-to-end usando un programa personalizado

Si necesita una interacción más precisa con su servicio web que la que pueden proporcionar los scripts SAPI (por ejemplo, SSL / TLS o cookies o similares), necesitará utilizar un script personalizado. NMIS 8.5.4g se envía con 4G contiene un script de ejemplo de ese tipo tipo:  /usr/local/nmis8/install/scripts/webtest, que debe moverse a un directorio destinado a binarios (por ejemplo,  /usr/local/nmis8/binobino /usr/local/bin/) si desea utilizarlo.

El script de ejemplo, descarga una página web (opcionalmente siguiendo una serie de redirecciones) usando http o https y, opcionalmente, verifica que el contenido del documento coincida con una expresión regular determinada. Debe definir este servicio con el Tipo de servicio " program", proporcionar la configuración del programa adecuada para el programa y activar el servicio para el servidor que desea probar (pero tenga en cuenta : ¡el que el programa personalizado siempre se ejecutará localmente en su servidor NMIS!).

Así es como verificamos que el sitio web de Opmantek esté funcionando: esto descarga la página usando https, luego busca la frase "Productos de Opmantek Products":

DNS

...

Remoto, solo puerto

NMIS puede monitorear la accesibilidad de los puertos TCP y UDP (usando la herramienta NMAP), que en el caso de DNS daría solo una indicación aproximada de si el servidor DNS es accesible.

A continuación, se muestra un fragmento de configuración para este nivel de supervisiónmonitoreo:

Remoto, solo protocolo

Para verificar el funcionamiento general de un servidor DNS remoto, puede utilizar el servicio 'dns' integrado en NMIS. Este servicio realizará una solicitud de DNS al servidor en cuestión y luego activará alertas de interrupción en función de recuperar o no un registro de DNS (y también captura el tiempo de respuesta).

Así es como se configura nuestro propio monitoreo interno para verificar nuestro propio dominio, que involucra servidores fuera de nuestro control: Hemos hemos definido nodos con el modelo establecido estáticamente en "PingOnly" para los servidores DNS externos en cuestión, y el servicio activado "opmantek-dns" para ellos, que se ve así:

...

Tenga en cuenta que el modelo "PingOnly" por sí solo no es suficiente solo no es suficiente para deshabilitar los accesos SNMP (o WMI); también  también debe cambiar la opción de configuración del nodo  collecta falsonodo collect a false.

Secuencia de comandos local y personalizado

En un sistema que está bajo su control y que ejecuta NMIS, puede ejecutar scripts arbitrarios para recopilar estados de servicio. La secuencia de comandos de ejemplo a continuación verifica que el servidor NMIS local en sí tenga un proceso de servidor DNS BIND en ejecución:

#!/bin/sh
# small # small script that tests that a local bind is up and communicating
if /sbin/pidof named >/dev/null 2>&1 && /usr/sbin/rndc status | grep -q 'up and running'; then
        exit 100
else
        exit 0
fi

Para usar esto, guarde el script en algún lugar donde NMIS pueda acceder (como /usr/local/bin/bindpresentpor  por ejemplo), luego configure NMIS con este servicio de tipo "programaprogram" y active el servicio para el propio servidor NMIS:


Base de datos MySQL

Remoto, solo puerto

Para verificar que su servidor de base de datos MySQL sea accesible, puede definir un servicio para verificar el puerto TCP 3306, similar a los ejemplos anteriores. Naturalmente, esa no es una prueba de un extremo a otroend-to-end.

Remoto, estado del proceso del servidor

Además de la accesibilidad del puerto, puede definir un servicio para verificar la existencia del  proceso mysqldproceso " ", si está sondeando el colectando información del servidor en cuestión con SNMP:

Secuencia de comandos remota y personalizada

La tercera y más completa configuración de monitoreo de un extremo a otro end-to-end requeriría un pequeño script personalizado que realmente se conecta al servidor y realiza una consulta en dicho servidor. Aquí  Aquí hay un ejemplo de dicho script, que debería ajustarse para su entorno (o cambiarse para aceptar más argumentos de línea de comando) y guardarse como  /usr/local/bin/mysqltest:

...

Para utilizar esta prueba de servicio, definiría un servicio de Tipo de servicio servicio " program", con una ruta de programa adecuada y con los argumentos de programa configurados en " node.host", que se reemplazaría por la dirección o el nombre de host del nodo en cuestión:

Estado del UPS

...

Scripts personalizados

Los sistemas UPS más baratos que no tienen redes integradas o capacidades SNMP también pueden ser monitoreados por NMIS, siempre que haya algún tipo de infraestructura de administración que admita la consulta del estado del UPS. En este ejemplo, estamos verificando dos sistemas UPS que están conectados a nuestro servidor NMIS a través de cables USB, donde la suite NUT (Network UPS Tools ) se encarga de la interconexión.

El upstest.plsiguiente  siguiente script usa las herramientas NUT para consultar el UPS nombrado e informa si está funcionando y a qué nivel de carga se encuentra. (NMIS aún no grafica variables adicionales como el nivel de carga aquí a partir de la versión 8.5.4G, pero esta función se agregará pronto).

...

Aquí está nuestra definición de del servicio: