Server donde está instalado el informix:
1) Creamos el script para monitoreo:
# vim /ruta-de-nagios/nagios/libexec/check_informix.sh
#!/bin/bash
sudo /ruta-de-informix/informix/bin/onstat |grep On-Line > /tmp/informix-nagios.log
if test $? -eq 0
then
echo OK - DB On-Line
/usr/bin/rm /tmp/informix-nagios.log
exit 0
else
echo CRITICAL - DB Off-Line
exit 2
fi
2) Agregar al sudo el usuario nagios para que pueda ejecutar el comando onstat, ya que no puede ejecutarlo un user sin privilegios. Editamos el sudoers:
# vim /etc/sudoers
...
# Control de Accesos
User_Alias NAGIOS = nagios
...
# Cmnd alias specification
Cmnd_Alias CMD_ONSTAT = /ruta-del-informix/informix/bin/onstat
...
# User privilege specification
NAGIOS ALL = NOPASSWD: CMD_ONSTAT
3) Configuramos en el archivo del NRPE el comando para ejecucion del script:
# vim /ruta-del-nagios/nagios/etc/nrpe.cfg
...
command[check_stateDB]=/ruta-del-nagios/nagios/libexec/check_informix.sh
Matamos el proceso del NRPE:
# ps -efa |grep nrpe
nagios 2945 701 0 Jul 28 ? 0:36 /ruta-del-nagios/nagios/bin/nrpe -c /ruta-del-nagios/nagios/etc/nrpe.cfg -d
# kill -9 2945
Volvemos a iniciarlo:
# /ruta-del-nagios/nagios/bin/nrpe -c /ruta-del-nagios/nagios/etc/nrpe.cfg -d
Chequeamos con el check_nrpe que este instalado correctamente y luego chequeamos con el comando creado:
# /ruta-del-nagios/nagios/libexec/check_nrpe -H localhost
NRPE "Muestra la versión instalada"
# /ruta-del-nagios/nagios/libexec/check_nrpe -H localhost -c check_stateDB
OK - DB On-Line
En el Servidor donde tenemos instalado el NAGIOS:
4) Lo agregamos al nagios, editando primero el host y luego el servicio:
# vim /ruta-del-nagios/nagios/etc/hosts.cfg
...
define host{
use server ; Name of host template to use
host_name informix_server
alias informix_server
address 172.16.72.100 ; Ip del informix
}
...
# vim /ruta-del-nagios/etc/services.cfg
...
define service{
use generic-service
host_name informix_server
service_description Informix_State
check_command check_nrpe!check_stateDB
}
...
5) Chequeamos que no nos devuelva ningun error, ni ningun warning y reiniciamos el nagios:
# /ruta-del-nagios/nagios/bin/nagios -v /ruta-del-nagios/nagios/etc/nagios.cfg
# /etc/init.d/nagios reload
6) Chequeamos con el check_nrpe desde la CLI del server del nagios, especificando la ip del equipo del nagios y vemos que devuelve que el estado es OK. Si luego paramos el servicio del informix y volvemos a chequearlo nos devolvera CRITICAL.
# /ruta-del-nagios/nagios/libexec/check_nrpe -H 172.16.72.100 -c check_stateDB
OK - DB On-Line