Zabbix Documentation 4.2

2.23.04.04.2 (current)In development:4.4 (devel)Unsupported:1.82.02.43.23.4

User Tools

Site Tools

This translation is older than the original page and might be outdated. See what has changed.

Sidebar

ru:manual:discovery:low_level_discovery:snmp_oids

3 Обнаружение SNMP OID'ов

Обзор

В этом разделе мы выполним обнаружение SNMP на коммутаторе.

Ключ элемента данных

В отличие от обнаружения файловых систем и сетевых интерфейсов - этот элемент данных не требует наличия ключа “snmp.discovery”, достаточно указать, что типом элемента данных является SNMP агент.

Обнаружение SNMP OID'ов поддерживается начиная с Zabbix сервера/прокси 2.0.

Для настройки правила обнаружения, выполните следующее:

  • Перейдите в: НастройкаШаблоны
  • Нажмите на Обнаружение в строке с соответствующим шаблоном

  • Нажмите на Создать правило обнаружения в верхнем правом углу экрана
  • Заполните диалог правила обнаружение необходимыми деталями как показано на скриншоте ниже

Все обязательные поля ввода отмечены красной звёздочкой.

OID'ы для обнаружения добавляются в поле SNMP OID в следующем формате: discovery[{#МАКРОС1}, oid1, {#МАКРОС2}, oid2, …,]

где {#МАКРОС1}, {#МАКРОС2} … допустимые имена низкоуровневых макросов и oid1, oid2… являются OID'ами способными сгенерировать осмысленные значения для этих макросов. Встроенный макрос {#SNMPINDEX} содержит индекс обнаруженного OID, который применяется к обнаруженным объектам. Обнаруженные объекты группируются по значению макроса {#SNMPINDEX}.

Для понимания того, что мы имеем в виду, давайте выполним несколько раз snmpwalk на нашем коммутаторе:

$ 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

И зададим SNMP OID равным: discovery[{#IFDESCR}, ifDescr, {#IFPHYSADDRESS}, ifPhysAddress]

Теперь это правило будет обнаруживать объекты с макросом {#IFDESCR} равным WAN, LAN1 и LAN2, макросом {#IFPHYSADDRESS} равным 8:0:27:90:7a:75, 8:0:27:90:7a:76, и 8:0:27:2b:af:9e, макросом {#SNMPINDEX} равным индексам обнаруженных OID 1, 2 и 3:

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

Если обнаруженный объект не имеет указанный OID, тогда по этому объекту соответстующий макрос пропускается. Например, если у нас есть следующие данные:

ifDescr.1 "Interface #1"
ifDescr.2 "Interface #2"
ifDescr.4 "Interface #4"

ifAlias.1 "eth0"
ifAlias.2 "eth1"
ifAlias.3 "eth2"
ifAlias.5 "eth4"

Тогда, в случае SNMP обнаружения discovery[{#IFDESCR}, ifDescr, {#IFALIAS}, ifAlias] вернется следующая структура:

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

Прототипы элементов данных

Следующий скриншот иллюстрирует каким образом мы можем использовать эти макросы в прототипах элементов данных:

Опять же, вы можете создать столько прототипов элементов данных, сколько необходимо:

Прототипы триггеров

Следующий скриншот иллюстрирует каким образом мы можем использовать эти макросы в прототипах триггеров:

Прототипы графиков

Следующий скриншот иллюстрирует каким образом мы можем использовать эти макросы в прототипах графиков:

Результат нашего правила обнаружения:

Обнаруженные объекты

Когда сервер выполнит правило обнаружения, будут созданы реальные элементы данных, триггеры и графики на основе значений, которые вернет правило обнаружения SNMP. В настройках узла сети эти объекты будут иметь префикс с оранжевой ссылкой на правило обнаружения, с которого пришли эти объекты.