Cómo montar un completo sistema de monitorización remota con avisos por móvil

Octubre 28, 05 by admin

Laura Celdran nos envía otro artículo sobre la monitorización remota de servidores, usando Gnokii + Modem GSM (en el ejemplo, un Siemens mc35i) + Nagios. En muchas organizaciones se usa el proyecto Nagios como sistema de gestión de alarmas / envío de alertasde código abierto para Linux. Pues bien Nagios ademas de su propia monitorización web también admite ser configurado para enviar mensajes a correos electrónicos cuando se cae (o cualquier otro nivel de criticidad definido) un equipo o cualquier otro tipo de tarea que se nos ocurra siempre que sea definido en su archivo de configuración de comandos: misccommands.cfg. En nuestro caso cuando un equipo se cae nos llama al móvil (para que lo oigamos bien) y nos envía un sms con el equipo caído… para esto hemos conectado por serial al equipo un modem GSM.

En este caso se hubo de añadir las siguientes definiciones en el archivo:
define command{
command_name notificar-por-wavecon
command_line /opt/nagios-com/notificar.sh “Host ‘$HOSTALIAS$’ is $HOSTSTATE$
Info: $OUTPUT$
Time: $DATETIME$” XXXX
}

, donde XXXX es el número de teléfono de guardias y el script notificar.sh es solo una llamada a gnokii para que ejecute las tareas definidas:

#!/usr/bin/ksh
TEXTO=$1
if [ $# -lt 2 ] ; then
TELEFONO=”XXXX”
else
TELEFONO=$2
fi
echo notificar por SMS el texto $TEXTO al telefono $TELEFONO
/usr/bin/gnokii –sendsms $TELEFONO <$TEXTO
END
/usr/bin/gnokii –dialvoice $TELEFONO

Además, para que se ejecute este comando definido, hay que indicar en el contacto guardias que este contacto será notificado además por este método

define contact{
contact_name guardias
alias Nagios Admin
service_notification_period 24×7
host_notification_period 24×7
service_notification_options w,u,c,r
host_notification_options d,u,r
service_notification_commands notify-by-epager,notificar-por-wavecon
host_notification_commands host-notify-by-epager,notificar-por-wavecon
email yy@listas.yyy.es,yy@movistar.com
pager pagenagios-admin@localhost.localdomain
}

Y al grupo de contactos guardias le asignamos el contacto guardias.

define contactgroup{
contactgroup_name guardias
alias administradores de la RCC
members guardias
}

Finalmente, se indica en los grupos de hosts que van a utilizar esta vía de notificación que van a utilizar el grupo de contactos guardias para su notificación, por ejemplo:

define hostgroup{
hostgroup_name ASA
alias ASA
contact_groups gecom,guardias
members “los que sean”
}

Nota: para que Gnokii se entendiera con el model hubo de especificar en el archivo de configuración (/etc/gnokiirc): model=AT, puesto que es un modelo que soporta comandos AT.

This entry no have comments... but you can be first.

Leave a Reply