Monitorizar los elementos físicos de un dispositivo

Vamos a ver cómo monitorizar los elementos físicos de un dispositivo (chasis, módulos hardware, placas auxiliares etc.) mediante SNMP.

Para ello vamos a utilizar la ENTITY-MIB definida en la  RFC2737  e implementada por diferentes fabricantes como puede ser el caso de Cisco Networks.

El objetivo es identificar y registrar los diferentes componentes instalados a efectos de inventario y monitorizar los posibles cambios que  tengan a lo largo del tiempo para poder actuar en consecuencia.

Para ello hemos incluido en el sistema los siguientes elementos:

  • Una aplicación que obtenga los datos relevantes de la tabla entPhysicalTable definida en la MIB.
  • Una métrica que represente de forma gráfica el número de elementos de los diferentes tipos definidos así  como el total. De este modo, es sencillo incluir una alerta mediante un monitor cuando haya alguna modificación en los mismos.

TABLA DE COMPONENTES FISICOS (APLICACIÓN)

La aplicación creada se denomina "TABLA DE COMPONENTES FISICOS" y es de tipo NET.MIB2. Como todas las aplicaciones SNMP incluidas, al crear el dispositivo se asociará automáticamente y se podrá ejecutar desde la solapa de Aplicaciones de dicho dispositivo.

Al ejecutarla sobre un switch de Cisco obtendremos un resultado similar al de la siguiente figura:

app componentes fisicos 

Notar que si estuvieramos interesados en obtener la lista de componentes de todos nuestros equipos Cisco (por poner un ejemplo) bastaría crear una tarea periódica sobre el rango de equipos seleccionado.

COMPONENTES FÍSICOS (MÉTRICA)

La métrica incluida representa de forma gráfica el número de elementos de cada uno de los tipos especificados en la MIB y disponibles en el dispositivo monitorizado.

Dichos tipos son los especificados en el objeto entPhysicalClass de MIB:

 

SYNTAX      INTEGER  {
       other(1),
       unknown(2),
       chassis(3),
       backplane(4),
       container(5),     -- e.g., chassis slot or daughter-card holder  
       powerSupply(6),
       fan(7),
       sensor(8),
       module(9),        -- e.g., plug-in card or daughter-card
       port(10),
       stack(11)         -- e.g., stack of multiple chassis entities
    }

 

La métrica también representa la suma de todos ("all") por claridad.

met componentes fisicos

Como se puede apreciar, lo normal es que tenga un valor constante salvo que haya cambios físicos. Si queremos generar una alerta cuando haya algún cambio, se puede crear un monitor que detecte un cambio en el valor "all" con la siguiente expresión:

  v11 <> LASTV(v11)