domingo, 26 de noviembre de 2006

Monitorizando Avaya Definity con Nagios

Es posible Monitorizar cetralitas Avaya mediante SNMP con Nagios, si ya habéis instalado Nagios lo unico que tenemos que hacer es insertar las siguientes lineas en el fichero de configuraion de comandos snmp.cfg


# Monitorización de Avaya Definity a través del servicio SNMP v2c

#Asier López Vega 2006

# check_avaya_status; chequea el estado de ejecuacion de la centralita 5 es OK

define command{

command_name check_avaya_status

command_line /usr/lib/nagios/plugins/check_snmp -H $HOSTADDRESS$ -t 60 -C public -o .1.3.6.1.4.1.6889.2.8.1.1.1.0 -c 5 -P 2c -l "Estado" -w 4:1 -c 7:6

}


#check_avaya_hw_health_power; chequea el estado electrico, si la alimentacion es Comerial o Backup

define command{

command_name check_avaya_hw_health_power

command_line /usr/lib/nagios/plugins/check_snmp -H $HOSTADDRESS$ -t 60 -o .1.3.6.1.4.1.6889.2.8.1.6.19.0 -C public -P 2c -r comm -l 'Tipo' -u 'Commercial or Backup'

}


# check_avaya_mayor_alarms; chequea el numero de Alarmas Mayor

define command{

command_name check_avaya_mayor_alarms

command_line /usr/lib/nagios/plugins/check_snmp -H $HOSTADDRESS$ -t 60 -o .1.3.6.1.4.1.6889.2.8.1.6.5.0 -C public -P 2c -c 0 -l 'Mayor' -u 'alarmas'

}


# check_avaya_minor_alarms; chequea el numero de Alarmas Minor

define command{

command_name check_avaya_minor_alarms

command_line /usr/lib/nagios/plugins/check_snmp -H $HOSTADDRESS$ -t 60 -o .1.3.6.1.4.1.6889.2.8.1.6.6.0 -C public -P 2c -c 0 -l 'Minor' -u 'alarmas'

}


#check_avaya_warning_alarms; chequea el numero de Warninigs

define command{

command_name check_avaya_warning_alarms

command_line /usr/lib/nagios/plugins/check_snmp -H $HOSTADDRESS$ -t 60 -o .1.3.6.1.4.1.6889.2.8.1.6.7.0 -C public -P 2c -w 1 -l ' ' -u 'alarmas'

}


#check_avaya_active_ip; muestra la IP del servidor activo

define command{

command_name check_avaya_active_ip

command_line /usr/lib/nagios/plugins/check_snmp -H $HOSTADDRESS$ -t 60 -o .1.3.6.1.4.1.6889.2.8.2.2.10.0 -C public -P 2c -l IP

}


#check_avaya_hw_server_type; muestra el tipo de HW

define command{

command_name check_avaya_hw_server_type

command_line /usr/lib/nagios/plugins/check_snmp -H $HOSTADDRESS$ -t 60 -o .1.3.6.1.4.1.6889.2.8.2.2.20.0 -C public -P 2c -l Tipo

}


#check_avaya_CPU_HP; muestra el consumo de CPU de los procesos de alta prioridad

define command{

command_name check_avaya_CPU_HP

command_line /usr/lib/nagios/plugins/check_snmp -H $HOSTADDRESS$ -t 60 -o .1.3.6.1.4.1.6889.2.8.1.6.11.0 -C public -P 2c -l 'Uso CPU (Hight priority services)' -u '%'

}


#check_avaya_CPU_CP; cosumo de CPU del Call procesing

define command{

command_name check_avaya_CPU_CP

command_line /usr/lib/nagios/plugins/check_snmp -H $HOSTADDRESS$ -t 60 -o .1.3.6.1.4.1.6889.2.8.1.6.12.0 -C public -P 2c -l 'Uso CPU (Call Procesing)' -u '%'

}


# check_avaya_CPU_SM; consumo del CPU de los procesos del sistema

define command{

command_name check_avaya_CPU_SM

command_line /usr/lib/nagios/plugins/check_snmp -H $HOSTADDRESS$ -t 60 -o .1.3.6.1.4.1.6889.2.8.1.6.13.0 -C public -P 2c -l 'Uso CPU (System Magnamet)' -u '%'

}


#check_avaya_CPU_F; % de CPU libre

define command{

command_name check_avaya_CPU_F

command_line /usr/lib/nagios/plugins/check_snmp -H $HOSTADDRESS$ -t 60 -o .1.3.6.1.4.1.6889.2.8.1.6.14.0 -C public -P 2c -l 'Uso CPU (Libre)' -u '%'

}


# check_avaya_status_trunk; chequea el estado del troncal numero $ARG1$ que le pasemos

define command{

command_name check_avaya_status_trunk

command_line /usr/lib/nagios/plugins/check_snmp -H $HOSTADDRESS$ -t 60 -o .1.3.6.1.4.1.6889.2.8.1.32.6.1.3.$ARG1$,.1.3.6.1.4.1.6889.2.8.1.53.6.1.7.$ARG1$,.1.3.6.1.4.1.6889.2.8.1.53.6.1.16.$ARG1$ -C public -P 2c -w ,,0:0 -c ,,0:0 -u '->',' total','fuera de servicio' -l 'Status Trunk'

}


# check_avaya_status_medpro; chequea el estado de la tarjeta $ARG1$ que le pasemios

define command{

command_name check_avaya_status_medpro

command_line /usr/lib/nagios/plugins/check_snmp -H $HOSTADDRESS$ -t 60 -o 1.3.6.1.4.1.6889.2.8.1.132.6.1.3.$ARG1$,1.3.6.1.4.1.6889.2.8.1.132.6.1.4.$ARG1$,1.3.6.1.4.1.6889.2.8.1.132.6.1.8.$ARG1$,1.3.6.1.4.1.6889.2.8.1.132.6.1.33.$ARG1$ -C public -P 2c -w ,,,0:0 -c ,,,0:0 -u 'IP',' Ethernet Enable','Criticals' -l 'IP-MedPro'

}


#check_avaya_all_completed_calls_in_hour; llamadas completadas en la ultima hora

define command{

command_name check_avaya_all_completed_calls_in_hour

command_line /usr/lib/nagios/plugins/check_snmp -H $HOSTADDRESS$ -t 60 -o 1.3.6.1.4.1.6889.2.8.1.111.10.0 -C public -P 2c -w 400000:200001 -c 200000:100000 -u 'Llamadas completadas hora actual' -l 'TOTAL'

}

5 comentarios:

Unknown dijo...

Buenas Asier... Espero que seas capaz de resolver mi duda...

Estoy monitorizando una centralita Avaya S8500... He conseguido monitorizar alarmas como las warning, minor, mayor y ver si los trunk están caidos o no.... Bien cuando intento monitorizar los primarios no consigo acceder al OID de los g3... Aqui me estoy perdiendo y dando golpes contra la pared. No se si se pueden :S!!!!! ya que Nagios me reporta el siguiente error: (Return code of 127 is out of bounds -plugin may be missing).

y en otros casos me reporta: problema estado -No se recibieron datos desde el servidor.... GRRRRR

AYUDA PLEASEEE!!!!!!!!!

Unknown dijo...

Hola, primero si te estas dado golpes contra la pared, espero que no sea demasiado fuerte ;-)

No se como lo estas haciendo, supongo que utilizas los comandos que tengo en post, en caso afirmativo, cuando monitorizas un primario con el comando check_avaya_status_trunk en la definicion del servicio tienes que indicar que troncal quieres monitorizar identificando el numero del troncal (list trunk ...)
..............
define service{
use generic-service ; Name of servi$

host_name AvayaX
service_description Trunk Group 06

................

y en la definición de comando tienes que pasar la variable a la lista de OIDs para identificar las variables que queremos comprobar dentro de la tabla de OIDs que tiene el S8500 con los estados

................
##### status trunks
define command{
command_name check_avaya_status_trunk
command_line /usr/lib/nagios/plugins/check_snmp -H $HOSTADDRESS$ -t 90 -o .1.3.6.1.4.1.6889.2.8.1.32.6.1.3.$ARG1$,.1.3.6.1.4.1.6889.2.8.1.53.6.1.7.$ARG1$,.1.3.6.1.4.1.6889.2.8.1.53.6.1.16.$ARG1$ -C ktasistemas -P 2c -w ,,0:0 -c ,,0:0 -u '->',' total','fuera de servicio' -l 'Status Trunk'
}

Los estados que yo busco son el total de canales en el trunk group, los que estan fuera de servicio...

No se si he contestado a tu duda, ten en cuenta que a diferencia de las alarmas que son un simple OID con un valor numérico, que te dice el número de alarmas que hay, los primarios son una tabla en la que cada fina es un trunk group identificado en la conlumna de la izquierda por el número de troncal y queremos consultar una posición detro de la tabla por lo que la columna la sanbemos, queremos las comunlas del nombre del trunk group, número de canales y estado, pero tenemos que pasarle la referencia de la primera columna que es el número de troncal, el que sale haciendo un list trunk en el ASA... suerte.

Unknown dijo...

Muchas gracias Axier, ha sido de gran ayuda, tambien para configurar el resto de servicios que quiero monitorizar. Todavia que me queda alguno por ahí que no consigo dar con el OID correcto pero va muy bien el proyectillo.

Muchas gracias.

Unknown dijo...

Buenas de nuevo Axier,

Después de conseguir los OID correspondientes hoy hemos hecho un prueba tirando 4 primarios... Y no nos ha reportado nada :S el estado sigue siendo OK!!! Eso si el numero de warnings ha crecido.... Se te ocurre porque el estado de los trunk está OK???? la configuración en el command es "... 1.3.6.1.4.1.6889.2.8.1.53.6.1.16.$ARG1$ -C public -P 2c -w ,,0:0 -c ,,0:0 -u '->',' total','fuera de servicio' -l 'Status Trunk' "

En el momento que cambio -c a otro valor ya me aparece el servicio como critical pero cuando los tiramos nosotros no nos reporta nada :S


Muchas gracias!!!

Anónimo dijo...

El primero en la frente. En el check_avaya_status se me queja de los umbrales -w 4:1 -c 7:6. Si los quito me va bien pero no me va a notificar. Uso la version 1.4.15 del check_snmp
Muchas gracias