Мониторинг MikroTik с помощью Zabbix

В этой статье будет описан процесс настройки мониторинга роутеров MikroTik по SNMP с помощью сервера Zabbix.

Настройка MikroTik

Настройка SNMP

Открываем IP / SNMP и включаем его. Записываем контактную информацию в поля: Сontact info и Location (это просто текст, здесь вы может написать произвольную информацию). Затем изменяем Trap Version на 2. Удаляем Trap Generator (поле должно быть пустым, для этого нужно нажать на стрелочку вверх).

В этом же окне нажимаем кнопку Communities. И в открывшемся окне настраиваем Public SNMP Communites. А в поле addresses впишем ip-адрес сервера Zabbix.

Теперь к нашему MikroTik сможет подключиться только Zabbix сервер. И он сможет только получать данные, так как галочку Write Access мы не ставили.

Настройка фаервола

Дальше нужно разрешить подключение к MikroTik в фаерволе. Для этого открываем IP/Firewall и создаём новое правило: разрешаем входящий UDP порт 161 с сервера Zabbix.

Ну и на вкладке Action выбираем действие — accept, чтобы разрешить такое подключение.

Получение oid для мониторинга

Мониторить будем интерфейсы, а именно активны они или нет.

В терминале Mikrotik выполняем:

/interface/print

Flags: R - RUNNING
Columns: NAME, TYPE, ACTUAL-MTU, MAC-ADDRESS
#   NAME      TYPE   ACTUAL-MTU  MAC-ADDRESS      
0 R ether1    ether       1500   12:19:21:40:A4:1D
1 R ether2    ether       1500   52:9C:FE:7A:4A:DC
/interface/print oid

Flags: D - dynamic; X - disabled, R - running; S - slave; P - passthrough 
 0  R   name=.1.3.6.1.2.1.2.2.1.2.8 actual-mtu=.1.3.6.1.2.1.2.2.1.4.8 
        mac-address=.1.3.6.1.2.1.2.2.1.6.8 admin-status=.1.3.6.1.2.1.2.2.1.7.8 
        oper-status=.1.3.6.1.2.1.2.2.1.8.8 bytes-in=.1.3.6.1.2.1.31.1.1.1.6.8 
        packets-in=.1.3.6.1.2.1.31.1.1.1.7.8 
        discards-in=.1.3.6.1.2.1.2.2.1.13.8 errors-in=.1.3.6.1.2.1.2.2.1.14.8 
        bytes-out=.1.3.6.1.2.1.31.1.1.1.10.8 
        packets-out=.1.3.6.1.2.1.31.1.1.1.11.8 
        discards-out=.1.3.6.1.2.1.2.2.1.19.8 errors-out=.1.3.6.1.2.1.2.2.1.20.8 

 1  R   name=.1.3.6.1.2.1.2.2.1.2.7 actual-mtu=.1.3.6.1.2.1.2.2.1.4.7 
        mac-address=.1.3.6.1.2.1.2.2.1.6.7 admin-status=.1.3.6.1.2.1.2.2.1.7.7 
        oper-status=.1.3.6.1.2.1.2.2.1.8.7 bytes-in=.1.3.6.1.2.1.31.1.1.1.6.7 
        packets-in=.1.3.6.1.2.1.31.1.1.1.7.7 
        discards-in=.1.3.6.1.2.1.2.2.1.13.7 errors-in=.1.3.6.1.2.1.2.2.1.14.7 
        bytes-out=.1.3.6.1.2.1.31.1.1.1.10.7 
        packets-out=.1.3.6.1.2.1.31.1.1.1.11.7 
        discards-out=.1.3.6.1.2.1.2.2.1.19.7 errors-out=.1.3.6.1.2.1.2.2.1.20.7

С помощью команд выше мы определили oid статусов интерфейсов:

  • 0 - ether1 - oper-status=.1.3.6.1.2.1.2.2.1.8.8
  • 1 - ether2 - oper-status=.1.3.6.1.2.1.2.2.1.8.7

Настройка Zabbix

Дальше идём в Zabbix и добавляем Mikrotik в качестве узла.

Ниже нужно добавить SNMP интерфейс (тот же самый ip адрес, что и адрес узла):

А затем добавляем элементы данных snmp:

  • SNMPv2 агент;
  • Ключ и SNMP OID одинаковые. Здесь указывается oid (например, .1.3.6.1.2.1.2.2.1.8.8);
  • SNMP интерфейс, созданный при добавлении узла.

После добавления элемента данных вы начнёте получать статус интерфейса в цифровом виде:

  • 1 — Интерфейс включен
  • 2 — Интерфейс выключен

Другие метрики

Таким же способом вы можете добавить и другие метрики. Ниже я описываю стандартный способ получения OID различных метрик.

Температура и скорость работы вентиляторов:

/system/health/print

Columns: NAME, VALUE, TYPE
#  NAME             VALUE  TYPE
0  cpu-temperature  48     C   
1  phy-temperature  58     C   
2  fan1-speed       0      RPM 
3  fan2-speed       0      RPM 
4  fan3-speed       0      RPM 
5  fan4-speed       0      RPM 
6  psu1-state       ok         
7  psu2-state       ok 
/system/health/print oid

 0 name=.1.3.6.1.4.1.14988.1.1.3.100.1.2.17 value=.1.3.6.1.4.1.14988.1.1.3.100.1.3.17 type=.1.3.6.1.4.1.14988.1.1.3.100.1.4.17 
 1 name=.1.3.6.1.4.1.14988.1.1.3.100.1.2.52 value=.1.3.6.1.4.1.14988.1.1.3.100.1.3.52 type=.1.3.6.1.4.1.14988.1.1.3.100.1.4.52 
 2 name=.1.3.6.1.4.1.14988.1.1.3.100.1.2.7001 value=.1.3.6.1.4.1.14988.1.1.3.100.1.3.7001 type=.1.3.6.1.4.1.14988.1.1.3.100.1.4.7001 
 3 name=.1.3.6.1.4.1.14988.1.1.3.100.1.2.7002 value=.1.3.6.1.4.1.14988.1.1.3.100.1.3.7002 type=.1.3.6.1.4.1.14988.1.1.3.100.1.4.7002 
 4 name=.1.3.6.1.4.1.14988.1.1.3.100.1.2.7003 value=.1.3.6.1.4.1.14988.1.1.3.100.1.3.7003 type=.1.3.6.1.4.1.14988.1.1.3.100.1.4.7003 
 5 name=.1.3.6.1.4.1.14988.1.1.3.100.1.2.7004 value=.1.3.6.1.4.1.14988.1.1.3.100.1.3.7004 type=.1.3.6.1.4.1.14988.1.1.3.100.1.4.7004 
 6 name=.1.3.6.1.4.1.14988.1.1.3.100.1.2.7401 value=.1.3.6.1.4.1.14988.1.1.3.100.1.3.7401 type=.1.3.6.1.4.1.14988.1.1.3.100.1.4.7401 
 7 name=.1.3.6.1.4.1.14988.1.1.3.100.1.2.7402 value=.1.3.6.1.4.1.14988.1.1.3.100.1.3.7402 type=.1.3.6.1.4.1.14988.1.1.3.100.1.4.7402

Ресурсы:

/system/resource/print oid

    used-memory: .1.3.6.1.2.1.25.2.3.1.6.65536
         uptime: .1.3.6.1.2.1.1.3.0
     build-time: .1.3.6.1.4.1.14988.1.1.7.6.0
   total-memory: .1.3.6.1.2.1.25.2.3.1.5.65536
  cpu-frequency: .1.3.6.1.4.1.14988.1.1.3.14.0

Если понравилась статья, подпишись на мой канал в  VK  или  Telegram .