Sidebar

Zabbix Summit 2022
Register for Zabbix Summit 2022

4 Descoberta de OIDs SNMP

Visão geral

Nesta seção vamos realizar um SNMP discovery em um switch.

Chave do item

Ao contrário da descoberta de sistema de arquivos e interface de rede, o item não não necessariamente tem que ter uma chave "snmp.discovery" - tipo de item de SNMP agente é suficiente.

A descoberta de OIDs SNMP é suportada desde o servidor/proxy Zabbix 2.0.

Para configurar a regra de descoberta, faça o seguinte:

  • Vá para: ConfiguraçãoModelos
  • Clique em Discovery na linha de um modelo apropriado

  • Clique em Criar regra de descoberta no canto superior direito da tela
  • Preencha o formulário de regra de descoberta com os detalhes necessários como no captura de tela abaixo

Todos os campos de entrada obrigatórios estão marcados com um asterisco vermelho.

Os OIDs a serem descobertos são definidos no campo SNMP OID nas seguintes formato: discovery[{#MACRO1}, oid1, {#MACRO2}, oid2, …,]

onde {#MACRO1}, {#MACRO2} … são nomes válidos de macro lld e oid1, oid2... são OIDs capazes de gerar valores significativos para esses macros. Uma macro interna {#SNMPINDEX} contendo o índice do OID descoberto é aplicado a entidades descobertas. O descoberto as entidades são agrupadas pelo valor da macro {#SNMPINDEX}.

Para entender o que queremos dizer, vamos realizar alguns snmpwalks em nosso 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 defina SNMP OID para: discovery[{#IFDESCR}, ifDescr, {#IFPHYSADDRESS}, ifPhysAddress]

Agora esta regra descobrirá entidades com macros {#IFDESCR} definidas como WAN, LAN1 e LAN2, macros {#IFPHYSADDRESS} definidas como 8:0:27:90:7a:75, 8:0:27:90:7a:76 e 8:0:27:2b:af:9e, macros {#SNMPINDEX} definidas para os índices de OIDs descobertos 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 uma entidade não tiver o OID especificado, então o macro será omitida para esta entidade. Por exemplo, se tivermos o seguintes dados:

ifDescr.1 "Interface #1"
       ifDescr.2 "Interface #2"
       ifDescr.4 "Interface #4"
       
       ifAlias.1 "eth0"
       ifAlias.2 "eth1"
       ifAlias.3 "eth2"
       ifAlias.5 "eth4"

Então, neste caso, a descoberta de SNMP discovery[{#IFDESCR}, ifDescr, {#IFALIAS}, ifAlias] retornará o seguinte estrutura:

[
           {
               "{#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"
           }
       ]

Protótipos de itens

A captura de tela a seguir ilustra como podemos usar essas macros no item protótipos:

Novamente, criando quantos protótipos de itens forem necessários:

Protótipos de gatilho

A captura de tela a seguir ilustra como podemos usar essas macros em protótipos de gatilho:

Protótipos de gráficos

A captura de tela a seguir ilustra como podemos usar essas macros em protótipos de gráficos:

Um resumo da nossa regra de descoberta:

Entidades descobertas

Quando o servidor for executado, ele criará itens reais, gatilhos e gráficos baseados nos valores que a regra de descoberta SNMP retorna. Na configuração do host eles são prefixados com um link laranja para uma regra de descoberta eles vêm a partir de.