Skip to main content
Zabbix and snmp

Zabbix и snmp на примере коммутатора D’link

SNMP — специальный протокол 7го уровня OSI, специально разработанный для проверки функционирования сетевых устройств, таких как маршрутизаторы, коммутаторы, принтеры, серверы и другое. Является очень удобным средством для получения информации с устройств, особенно если ваша система поддерживает данный тип мониторинга.Углубляться в тему SNMP мы не будем, более подробно можно почитать тут и тут. И так, нам понадобится немного знаний из предыдущих статей, немного snmp MIB’s и терпение, ведь будет довольно большое количество рутинной работы, но оно того стоит.

У меня имеется в наличии коммутатор D-Link DGS-3420-28SC и сегодня мы научимся получать данные с этой железки.

Первым делом я всегда создаю группу хостов, если это чистая система. Заходим в «Configuration->Host Groups->Create Host Group». Просто вводим название группы и нажимаем «Add«.

Следующий шаг — добавление Шаблона(Template). Переходим «Configuration->Templates->Create Template». Сложностей в добавлении шаблона нет, задаем имя и к каким группам он относится, все.

Шаблон мы добавили, начинается самое интересное, добавление элементов данных(items). Для получения данных о трафике нам нужно создать по 2 элемента на 1 порт. Один для входящей скорости, второй для исходящей. Делается это очень просто. Открываем наш созданный шаблон, переходим на вкладку Items и нажимаем кнопку Create Item.

Заполняем поля:

Name - Имя элемента, для первого порта создал название Port 1 In;
Type - SNMPv2 agent;
Key - ifInOctets.1;
Host interface - выбираем наш коммутатор;
SNMP OID - 1.3.6.1.2.1.31.1.1.1.6.1;
SNMP community - public;
Type of information - Numeric (unsigned);
Data type - Decimal;
Units - bps;
Use custom multiplier - 8;
Update interval (in sec) - 60;
Store value - Delta (speed per second);
Show value - As is;

Zabbix - add new item

Несколько пояснений:
SNMP OID — идентификатор объекта в дереве MIB. MIB в свою очередь — это база данных идентификаторов.
Use custom multiplier — множитель данных.
Key — ключ элемента данных. Для snmp ifInOctets — количество полученных байт.

Сейчас мы создали элемент данных для мониторинга входящей скорости на порту 1, теперь создадим подобный элемент, но только для исходящей скорости.

Открываем наш созданный элемент данных, опускаемся в самый низ и нажимаем на кнопку Clone. Меняем название, Key — ifOutOctets.1, SNMP OID — 1.3.6.1.2.1.31.1.1.1.10.1. Сохраняем элемент. Теперь по такому же принципу создаем для всех остальных портов, меняя последнее значение в параметрах ifInOctets.1, ifOutOctets.1, 1.3.6.1.2.1.31.1.1.1.6.1, 1.3.6.1.2.1.31.1.1.1.10.1.

ifInOctets.1-28
ifOutOctets.1-28
1.3.6.1.2.1.31.1.1.1.6.1-28
1.3.6.1.2.1.31.1.1.1.10.1-28

Элементы данных для мониторинга скорости добавлены, теперь нужно добавить графики. Открываем вкладку «Graphs» нажимаем на кнопку «Add Graph». Даем название графику, в самом низу добавляем к графику данные. Я всегда добавляю на один график данные для входящего и исходящего трафика с одного порта. В результате получаю график вида:

Zabbix - Graph example

Аналогично создаем графики для всех остальных портов.

Подготовительные этапы завершены, теперь нужно добавить наш коммутатор с которого мы будем снимать данные. Открываем раздел «Configuration->Hosts->Create host«. Заполняем форму, удаляем Agent interfaces и добавляем SNMP interfaces с IP адресом устройства. Переходим на вкладку Templates и добавляем наш шаблон.

Zabbix - add new host

Сохраняем настройки и занимаемся пару минут своими делами, а потом в разделе графиков наблюдаем как наша система собрала данные и нарисовала график

Вот таким образом возможно мониторить практически все данные которые предоставляет сетевое устройство по snmp. Если у вас возникли вопросы или проблемы при настройке, пишите комментарии, выясним причину, найдем решение.

Простой шаблон для импорта из этой статьи.

4 Комментарии “Zabbix и snmp на примере коммутатора D’link

  1. А MIB-ы и OID-ы для коммутаторов D-Link одинаковые или существует база данных для отдельно взятых коммутаторов?

    1. Если охота капитально заморочиться с этим делом, то по мибам сюда:

      http://ftp.dlink.ru/pub/Switch

      От себя вопрос — никто не раздумывал, что нужно мониторить, чтобы отследить момент снижения пропускной способности портов? На 1510-28LP/ME был эпизод, когда порты на коммутаторе (используемого в качестве центра звезды) снизили свою пропускную полосу, со стороны народа посыпались жалобы «тырнет устал, ютуб долго открывается» (тип жалоб описан исключительно образно). По шаблонам с share.zabbix.com отследить и предупредить этот момент не удалось.

      Возможно, нужно строить триггер с сопоставлением данных элементов по состоянию аппаратной части коммутатора (типа частоты CPU и т.д.) и текущей ширины канала портов. Это пока идея )

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *