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 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 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 y debe activar el servicio para el nodo que desea probar.
Para una caja de CentOS con Apache 2.2.x estaríamos usando la siguiente definición de servicio, que busca procesos llamados " httpd
":
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 NMIS en formato /usr/local/nmis8/conf/scripts
. La http
secuencia de comandos predeterminada se 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:
de un extremo a otro 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 un script de ejemplo de ese tipo /usr/local/nmis8/install/scripts/webtest
, que debe moverse a un directorio destinado a binarios (por ejemplo, /usr/local/nmis8/bin
o /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 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":
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ón:
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 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 para deshabilitar los accesos SNMP (o WMI); también debe cambiar la opción de configuración del nodo collect
a falso.
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:
|
Para usar esto, guarde el script en algún lugar donde NMIS pueda acceder (como /usr/local/bin/bindpresent
por ejemplo), luego configure NMIS con este servicio de tipo "programa" 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 otro.
Remoto, estado del proceso del servidor
Además de la accesibilidad del puerto, puede definir un servicio para verificar la existencia del mysqld
proceso " ", si está sondeando el 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 requeriría un pequeño script personalizado que realmente se conecta al servidor y realiza una consulta en dicho servidor. 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 " 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.pl
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).
|
Para nuestros sistemas UPS, primero utilizamos el monitoreo de estado del proceso basado en SNMP incorporado de NMIS, que verifica que haya al menos un proceso activo con un nombre dado (aquí 'upsd'), y luego agregamos las verificaciones de estado por UPS con los nombres de UPS pasaron al script de prueba. Esta configuración de ejemplo requiere que los UPS estén conectados al servidor NMIS mismo, pero, por supuesto, se puede acceder a NUT a través de la red.
Aquí está nuestra definición de servicio: