5 Scoperta degli OID SNMP (legacy)
Panoramica
In questa sezione eseguiremo una discovery SNMP su uno switch.
Chiave item
A differenza del rilevamento del file system e dell'interfaccia di rete, l'item non deve necessariamente avere una chiave "snmp.discovery": è sufficiente il tipo di item SNMP agent.
Per configurare la regola di rilevamento, procedere come segue:
- Andare in: Data collection → Templates
- Fare clic su Discovery nella riga del template appropriato

- Fare clic su Create discovery rule nell'angolo superiore destro della schermata
- Compilare il modulo della regola di rilevamento con i dettagli richiesti come mostrato nello screenshot seguente

Tutti i campi di input obbligatori sono contrassegnati con un asterisco rosso.
Gli OID da rilevare sono definiti nel campo SNMP OID nel seguente formato: discovery[{#MACRO1}, oid1, {#MACRO2}, oid2, …,]
dove {#MACRO1}, {#MACRO2} … sono nomi validi di macro lld e oid1, oid2... sono OID in grado di generare valori significativi per queste macro. Una macro integrata {#SNMPINDEX} contenente l'indice dell'OID rilevato viene applicata alle entità rilevate. Le entità rilevate sono raggruppate in base al valore della macro {#SNMPINDEX}.
Ecco un esempio in cui vengono eseguiti alcuni snmpwalk sullo 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
E lo SNMP OID è impostato su:
discovery[{#IFDESCR}, ifDescr, {#IFPHYSADDRESS}, ifPhysAddress]
Ora questa regola rileverà entità con macro {#IFDESCR} impostate su WAN, LAN1 e LAN2, macro {#IFPHYSADDRESS} impostate su 8:0:27:90:7a:75, 8:0:27:90:7a:76 e 8:0:27:2b:af:9e, macro {#SNMPINDEX} impostate sugli indici degli OID rilevati 1, 2 e 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"
}
]
Se un'entità non ha l'OID specificato, la macro corrispondente verrà omessa per tale entità. Ad esempio, se abbiamo i seguenti dati:
ifDescr.1 "Interface #1"
ifDescr.2 "Interface #2"
ifDescr.4 "Interface #4"
ifAlias.1 "eth0"
ifAlias.2 "eth1"
ifAlias.3 "eth2"
ifAlias.5 "eth4"
In questo caso, il rilevamento SNMP
discovery[{#IFDESCR}, ifDescr, {#IFALIAS}, ifAlias] restituirà la seguente struttura:
[
{
"{#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"
}
]
Prototipi di item
La seguente schermata illustra come possiamo utilizzare queste macro nei prototipi di item:

È possibile creare tutti i prototipi di item necessari:

Prototipi di trigger
La seguente schermata illustra come possiamo utilizzare queste macro nei prototipi di trigger:


Prototipi di grafico
La seguente schermata illustra come possiamo utilizzare queste macro nei prototipi di grafico:


Un riepilogo della nostra regola di discovery:

Entità rilevate
Quando il server è in esecuzione, creerà item, trigger e grafici reali in base ai valori restituiti dalla regola di individuazione SNMP. Nella configurazione del host sono preceduti da un collegamento arancione alla regola di individuazione da cui provengono.


