En el Server que corre el Python (192.168.0.100):
Creamos el script para chequear el python:
server# vim /usr/local/apps/nagios/libexec/check_miPythonNOTA: el 0 devuelve OK, el 1 WARNING y el 2 CRITICAL
#!/bin/bash
/usr/bin/ps -efa |grep mi_python.py|grep -v grep > /tmp/mi_python.py.log
if test $? -eq 0
then
echo OK - Python mi_python.py is RUNNING
/usr/bin/rm /tmp/mi_python.py.log
exit 0
else
echo CRITICAL - Python mi_python.py is NOT RUNNING !!!
/usr/bin/rm /tmp/mi_python.py.log
exit 2
fi
Damos permisos de ejecución:
server# chmod a+x /usr/local/apps/nagios/libexec/check_miPython.sh
Editamos la configuración del NRPE y lo agregamos en la sección de comandos customizados:
server# vim /usr/local/apps/nagios/etc/nrpe.cfg
command[check_miPython]=/usr/local/apps/nagios/libexec/check_miPython
Matamos y volvemos a correr el nrpe:
server# ps -efa |grep nrpe
nagios 24497 1 0 12:47:49 ? 0:00 /usr/local/nagios/bin/nrpe -d -c /usr/local/nagios/etc/nrpe.cfg
root 24920 24763 0 12:57:59 pts/22 0:00 grep nrpe
server# kill -9 24497
server# /usr/local/nagios/bin/nrpe -d -c /usr/local/nagios/etc/nrpe.cfg
Lo testeamos:
server# /usr/local/nagios/libexec/check_miPython
OK - Python miPython is RUNNING
Cambiamos en el script el nombre del proceso para ver que realmente funciona y nos devuelve critical:
server# vim /usr/local/nagios/libexec/check_miPython
#Cambiamos mi_python.py por mi_piton.py
#en la línea: /usr/bin/ps -efa |grep mi_python.py|grep -v grep > /tmp/mi_python.py.log
Volvemos testear y ahora nos devuelve CRITICAL:
server# /usr/local/nagios/libexec/check_miPython
CRITICAL - Python miPython is NOT RUNNING !!!
Volvemos a cambiarlo para que funcione correctamente como estaba anteriormente.
Ahora vamos al server del nagios para agregar al monitoreo:
Testeamos el servicio mediante el check_nrpe:
nagios# /usr/local/nagios/libexec/check_nrpe -H 192.168.0.100 -c check_miPython
OK - Python miPython is RUNNING
Editamos el archivo services.conf:
nagios# vim /usr/local/nagios/etc/services.cfg
..... define service{
use generic-service
host_name pythonServer
service_description mi_Python
check_command check_nrpe!check_miPython
}
.....
Checkeamos la config del nagios:
nagios# /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
Reiniciamos el servicio de nagios:
nagios# /etc/init.d/nagios reload
No hay comentarios:
Publicar un comentario