En aquesta secci¨®, farem una descoberta SNMP sobre un switch.
A difer¨¨ncia del sistema de fitxers i la descoberta de la interf¨ªcie de xarxa, l'element no necessita necess¨¤riament una clau "snmp.discovery"; amb el tipus d'element de l'agent SNMP n'hi ha prou.
Per configurar la regla de descoberta, feu el seg¨¹ent:
Tots els camps d'entrada obligatoris s¨®n marcats amb un asterisc vermell.
Els OID per descobrir es defineixen al camp OID SNMP amb el format seg¨¹ent: discovery[{#MACRO1}, oid1, {#MACRO2}, oid2, ...,]
on {#MACRO1}, {#MACRO2} ... s¨®n noms de macro lld v¨¤lids i oid1, oid2... s¨®n OID capa?os de generar valors significatius per a aquestes macros. A les entitats descobertes s'hi aplica una macro integrada {#SNMPINDEX} que cont¨¦ l'¨ªndex de l'OID descobert. Les entitats descobertes s'agrupen per valor de macro {#SNMPINDEX}.
Per entendre qu¨¨ volem dir, executem unes quantes ordres snmpwalks al nostre switch:
$ 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
I configureu l'OID SNMP a: discovery[{#IFDESCR}, ifDescr, {#IFPHYSADDRESS}, ifPhysAddress]
Aquesta regla ara detecta entitats amb {#IFDESCR} macros establertes a WAN, LAN1 i LAN2, les macros {#IFPHYSADDRESS} s'estableixen a 8:0:27: 90:7a :75, 8:0:27:90:7a:76 i 8:0:27:2b:af:9e Les macros {#SNMPINDEX} s¨®n configurades per a ¨ªndexs OID descoberts 1, 2 i 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 entitat no t¨¦ l'OID especificat, s'ometr¨¤ la macro corresponent per a aquesta entitat. Per exemple, si tenim les dades seg¨¹ents:
ifDescr.1 "Interface #1"
ifDescr.2 "Interface #2"
ifDescr.4 "Interface #4"
ifAlias.1 "eth0"
ifAlias.2 "eth1"
ifAlias.3 "eth2"
ifAlias.5 "eth4"
En aquest cas, la descoberta SNMP de discovery[{#IFDESCR}, ifDescr, {#IFALIAS}, ifAlias]
retornar¨¤ l'estructura seg¨¹ent:
[
{
"{#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 seg¨¹ent captura de pantalla il¡¤lustra com podem emprar aquestes macros en prototips d'elements:
Podeu crear tants prototips d'article com us calgui:
La seg¨¹ent captura de pantalla ensenya com podem emprar aquestes macros en prototips de triggers:
La seg¨¹ent captura de pantalla ensenya com podem emprar aquestes macros a prototips de gr¨¤fics:
Un resum de la nostra regla de descoberta:
Quan el servidor s'executa, crea elements reals, triggers i gr¨¤fics basats en els valors que retorna la regla de descoberta SNMP. A la configuraci¨® de l'equip, van precedits per un enlla? carbassa a una regla de descoberta d'origen.