Шаблон Zabbix для мониторинга устройств Mikrotik по SNMP

Поскольку стандартные шаблоны, которые мне попадались на просторах интернета мне не подошли, особенно потому что или собирали не те данные, или вообще были не работоспособны, в итоге я сам разобрался и разработал собственный шаблон. Шаблон получился хорошим и работоспособным. Работа тестировалась на следующих моделях: Mikrotik RouterBOARD 750GL, Mikrotik RouterBOARD 750, Mikrotik RouterBOARD 750UP, Mikrotik CRS125-24G-1S-RM, Mikrotik RouterBoard 912UAG-2HPnD

 

Шаблон для мониторинга устройств Mikrotik работает по SNMP и производит сбор следующих параметров:

  1. Загрузка процессора устройства
  2. Модель устройства
  3. Уровень лицензирования
  4. Software ID
  5. Имя устройства
  6. Температуру устройства (скорее всего снимает данные с датчика на плате)
  7. Полный объем оперативной памяти
  8. Использование оперативной памяти
  9. Время работы устройства (аптайм)
  10. Напряжение питания устройства

Сводная таблица элементов данных, включенных в шаблон:

 

Имя  Ключ Интервал История Динамика изменений Тип Группы элементов данных
CPU loadmikrotik.cpu.load5790SNMPv2 агентHealth
Device modelmikrotik.model36007 SNMPv2 агентGeneral
License Levelmikrotik.license.level3600790SNMPv2 агентLicense
Software IDmikrotik.software.id36007 SNMPv2 агентLicense
System namemikrotik.system.name36007 SNMPv2 агентStatus
Temperaturemikrotik.system.temperature10790SNMPv2 агентHealth
Total memorymikrotik.system.memory3600790SNMPv2 агентMemory
Uptimemikrotik.system.uptime60790SNMPv2 агентStatus
Used memorymikrotik.used.memory30790SNMPv2 агентMemory
Voltagemikrotik.power3600790SNMPv2 агентHealth

 

Элементы данных сгруппированы по следующим группам

  1. General
  2. Health
  3. License
  4. Memory
  5. Status
  6. Traffic

Триггеры созданные в шаблоне настроены на сработку по следующим событиям:

  1. Высокая загрузка процессора
  2. Мало свободной оперативной памяти
  3. Высокая температура устройства
  4. Высокое напряжение питания

Сводная таблица триггеров, включенных в шаблон (кроме прототипов триггеров):

 

Важность Имя  Выражение
ВысокаяHigh CPU Utilization{Template SNMP Mikrotik v. 1.0:mikrotik.cpu.load.avg(120)}>80
ВысокаяLow free memory{Template SNMP Mikrotik v. 1.0:mikrotik.used.memory.avg(70)}>52430000
ВысокаяTemperature Status High{Template SNMP Mikrotik v. 1.0:mikrotik.system.temperature.avg(60)}>65
ВысокаяVoltage Status{Template SNMP Mikrotik v. 1.0:mikrotik.power.avg(60)}>35

 

В данный шаблон включены следующие графики:

  1. Загрузка процессора
  2. Здоровье устройства. Включает в себя сводный график по следующим показателям: температура, загрузка процессора, напряжение питания
  3. Использование памяти
  4. Температура устройства
  5. Напряжение питания устройства

Создано одно правило обнаружения, которое определяет сетевые интерфейсы на оборудовании.

В данном правиле обнаружения созданы следующие прототипы элементов данных:

  1. Ошибки входящего трафика
  2. Ошибки исходящего трафика
  3. Статус порта (включен или выключен порт администратором)
  4. Статус порта (поднят или опущен, т.е. если порт включен но не активен по причине обрыва, отключенного устройства и т.д.)
  5. Счетчик входящих пакетов на порту
  6. Счетчик исходящих пакетов на порту
  7. Входящий трафик на порту
  8. Исходящий трафик на порту

Сводная таблица прототипов данных в правиле обнаружения interfaces:

 

Имя  Ключ Интервал История Динамика изменений Тип Группы элементов данных
Errors on port {#SNMPVALUE} (In)mikrotik.interface.errors.in.[“{#SNMPINDEX}”]60730SNMPv2 агентHealth
Errors on port {#SNMPVALUE} (Out)mikrotik.interface.errors.out.[“{#SNMPINDEX}”]60730SNMPv2 агентHealth
Link Up/Down status for Port {#SNMPVALUE}oper-status.[“{#SNMPINDEX}”]30730SNMPv2 агентStatus
On/Off state for Port {#SNMPVALUE}admin-status.[“{#SNMPINDEX}”]3600730SNMPv2 агентStatus
PORT {#SNMPVALUE} packets INmikrotik.interface.peckets.in.[“{#SNMPINDEX}”]10790SNMPv2 агентTraffic
PORT {#SNMPVALUE} packets OUTmikrotik.interface.peckets.out.[“{#SNMPINDEX}”]10790SNMPv2 агентTraffic
Traffic {#SNMPVALUE} (In)mikrotik.interface.traffic.in.[“{#SNMPINDEX}”]10790SNMPv2 агентTraffic
Traffic {#SNMPVALUE} (Out)mikrotik.interface.traffic.out.[“{#SNMPINDEX}”]10790SNMPv2 агентTraffic

 

В данном правиле обнаружения созданы следующие прототипы триггеров:

  1. Лимит ошибок на порту за 10 минут
  2. Лимит ошибок на порту за час
  3. Ошибка порта, если порт включен но не скомутирован.

Сводная таблица прототипов триггеров в правиле обнаружения interfaces:

 

Важность Имя  Выражение
ВысокаяErrors on port {#SNMPVALUE} (per 10 min){Template SNMP Mikrotik v. 1.0:mikrotik.interface.errors.in.[“{#SNMPINDEX}”].sum(600)}>100 | {Template SNMP Mikrotik v. 1.0:mikrotik.interface.errors.out.[“{#SNMPINDEX}”].sum(600)}>100
ВысокаяErrors on port {#SNMPVALUE} (Per hour){Template SNMP Mikrotik v. 1.0:mikrotik.interface.errors.in.[“{#SNMPINDEX}”].sum(3600)}>1000 | {Template SNMP Mikrotik v. 1.0:mikrotik.interface.errors.out.[“{#SNMPINDEX}”].sum(3600)}>1000
ВысокаяLink status Port {#SNMPVALUE}{Template SNMP Mikrotik v. 1.0:admin-status.[“{#SNMPINDEX}”].last(0)}=1 & {Template SNMP Mikrotik v. 1.0:oper-status.[“{#SNMPINDEX}”].last(0)}=2

 

В данном правиле обнаружения существуют следующие прототипы графиков:

  1. График статистики приема/передачи пакетов на порту
  2. График приема/отправки трафика на порту
  3. Сводный график для порта: прием/отправка пакетов, прием/отправка трафика, входящие/исходящие ошибки

Внимание. Для того чтобы шаблон заработал, необходимо каждому устройству добавить макрос {$COMMUNITY} в котором указать, SNMP community устройства, которое вы собираетесь мониторить. Это выглядит приблизительно так:

community-zabbix

Прописывание макроса для мониторинга узла по SNMP

 

Скачать шаблон для мониторинга Microtik по SNMP с помощью Zabbix можно с моего репозитория на Github

 

Поделись с друзьями!
Мои проекты на GITHUB


Мои проекты на GitHub

Реклама




iOnline в социальных сетях
IOnLine.by в социальной сети Вконтакте (vk.com)


Мы в Facebook


Ionline.by в Instagram


Мы в Twitter