En este apartado realizaremos un descubrimiento SNMP en un conmutador.
A diferencia del sistema de archivos y el descubrimiento de interfaces de red, la métrica no necesariamente tiene que tener una clave "snmp.discovery" - el tipo de métrica de agente SNMP es suficiente.
Para configurar la regla de descubrimiento, haga lo siguiente:
Todos los campos de entrada obligatorios están marcados con un asterisco rojo.
Los OID a descubrir se definen en el campo OID de SNMP en el siguiente formato: discovery[{#MACRO1}, oid1, {#MACRO2}, oid2, …,]
donde {#MACRO1}, {#MACRO2} … son nombres de macro lld válidos y oid1, oid2... son OID capaces de generar valores significativos para estas macros. Una macro incorporada {#SNMPINDEX} que contiene el índice del OID descubierto se aplica a las entidades descubiertas. Las entidades descubiertas se agrupan por el valor de la macro {#SNMPINDEX} .
Para entender lo que queremos decir, realicemos algunos snmpwalks en nuestro conmutador:
$ snmpwalk -v 2c -c public 192.168.1.1 IF-MIB::ifDescr
IF-MIB::ifDescr.1 = STRING: WAN
IF-MIB::ifDescr.2 = STRING: LAN1
IF-MIB::ifDescr.3 = STRING: LAN2
$ snmpwalk -v 2c -c public 192.168.1.1 IF-MIB::ifPhysAddress
IF-MIB::ifPhysAddress.1 = STRING: 8:0:27:90:7a:75
IF-MIB::ifPhysAddress.2 = STRING: 8:0:27:90:7a:76
IF-MIB::ifPhysAddress.3 = STRING: 8:0:27:2b:af:9e
Y configure SNMP OID en: discovery[{#IFDESCR}, ifDescr, {#IFPHYSADDRESS}, ifPhysAddress]
Ahora esta regla descubrirá entidades con macros {#IFDESCR} configuradas en WAN, LAN1 y LAN2, macros {#IFPHYSADDRESS} configuradas en 8:0:27:90:7a:75, 8:0:27:90:7a:76 y 8:0:27:2b:af:9e, macros {#SNMPINDEX} configuradas para los índices OID descubiertos 1, 2 y 3:
[
{
"{#SNMPINDEX}": "1",
"{#IFDESCR}": "WAN",
"{#IFPHYSADDRESS}": "8:0:27:90:7a:75"
},
{
"{#SNMPINDEX}": "2",
"{#IFDESCR}": "LAN1",
"{#IFPHYSADDRESS}": "8:0:27:90:7a:76"
},
{
"{#SNMPINDEX}": "3",
"{#IFDESCR}": "LAN2",
"{#IFPHYSADDRESS}": "8:0:27:2b:af:9e"
}
]
Si una entidad no tiene el OID especificado, entonces la macro correspondiente se omitirá para esta entidad. Por ejemplo si tenemos los siguientes datos:
ifDescr.1 "Interface #1"
ifDescr.2 "Interface #2"
ifDescr.4 "Interface #4"
ifAlias.1 "eth0"
ifAlias.2 "eth1"
ifAlias.3 "eth2"
ifAlias.5 "eth4"
Entonces, en este caso, el descubrimiento SNMP discovery[{#IFDESCR}, ifDescr, {#IFALIAS}, ifAlias]
devolverá la siguiente estructura:
[
{
"{#SNMPINDEX}": 1,
"{#IFDESCR}": "Interface #1",
"{#IFALIAS}": "eth0"
},
{
"{#SNMPINDEX}": 2,
"{#IFDESCR}": "Interface #2",
"{#IFALIAS}": "eth1"
},
{
"{#SNMPINDEX}": 3,
"{#IFALIAS}": "eth2"
},
{
"{#SNMPINDEX}": 4,
"{#IFDESCR}": "Interface #4"
},
{
"{#SNMPINDEX}": 5,
"{#IFALIAS}": "eth4"
}
]
La siguiente captura de pantalla ilustra cómo podemos usar estas macros en prototipos de métricas:
Puede crear tantos prototipos de métricas como necesite:
La siguiente captura de pantalla ilustra cómo podemos usar estas macros en prototipos de iniciadores:
La siguiente captura de pantalla ilustra cómo podemos usar estas macros en prototipos de gráficos:
Un resumen de nuestra regla de descubrimiento:
Cuando el servidor se ejecuta, creará métricas, iniciadores y gráficos reales basados en los valores que devuelve la regla de descubrimiento SNMP. En la configuración del equipo tienen el prefijo de un enlace naranja a una regla de descubrimiento de la que provienen.