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 collectionTemplates
  • 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.