3 MIB файлы

Введение

MIB обозначает Базу Управляющей Информации. MIB файлы позволяют вам использовать текстовое представление OID'а (Идентификатор Объекта). При мониторинге Zabbix'ом устройств SNMP можно использовать сырые OID'ы, но если для Вас более комфортно использовать текстовое представление, то потребуется установить MIB файлы.

Например,

ifHCOutOctets

является текстовым представлением OID'а

1.3.6.1.2.1.31.1.1.1.10

Установка MIB файлов

На системах на основе Debian:

apt install snmp-mibs-downloader
       download-mibs

На системах на основе RedHat:

dnf install net-snmp-libs

Подлючение MIB файлов

На системах на основе RedHat mib файлы должны быть подключены по умолчанию. На системах на основе Debian вам нужно отредактировать файл /etc/snmp/snmp.conf и закомментировать строку, которая содержит mibs:

# As the snmp packages come without MIB files due to license reasons, loading
       # of MIBs is disabled by default. If you added the MIBs you can re-enable
       # loading them by commenting out the following line.
       mibs :

Тестирование MIB файлов

Тестирование snmp MIB'ов можно выполнить с использованием утилиты snmpwalk. Если у вас эта утилита не установлена, воспользуйтесь следующими инструкциями.

На системах на основе Debian:

apt install snmp

На системах на основе RedHat:

dnf install net-snmp-utils

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

$ snmpwalk -v 2c -c public <IP СЕТЕВОГО УСТРОЙСТВА> ifInOctets
       IF-MIB::ifInOctets.1 = Counter32: 176137634
       IF-MIB::ifInOctets.2 = Counter32: 0
       IF-MIB::ifInOctets.3 = Counter32: 240375057
       IF-MIB::ifInOctets.4 = Counter32: 220893420
       [...]

Использование MIB в Zabbix

Самое главное - иметь в виду, что процессы Zabbix не знают об изменениях, выполненных с MIB файлами. Поэтому после каждого изменения вам необходимо перезапустить Zabbix сервер или прокси, например:

service zabbix-server restart

После выполнения этой команды изменения, сделанные в MIB файлах, вступят в силу.

Использование пользовательских MIB файлов

Имеются стандартные MIB файлы, которые поставляются с каждым GNU/Linux дистрибутивом. Но некоторые производители устройств поставляют свои собственные файлы.

Допустим, вы хотите использовать CISCO-SMI MIB файл. Следующие инструкции помогут загрузить и установить этот файл:

wget ftp://ftp.cisco.com/pub/mibs/v2/CISCO-SMI.my -P /tmp
       mkdir -p /usr/local/share/snmp/mibs
       grep -q '^mibdirs +/usr/local/share/snmp/mibs' /etc/snmp/snmp.conf 2>/dev/null || echo "mibdirs +/usr/local/share/snmp/mibs" >> /etc/snmp/snmp.conf
       cp /tmp/CISCO-SMI.my /usr/local/share/snmp/mibs

Теперь вы сможете использовать его. Попытайтесь перевести имя объекта ciscoProducts из MIB файла в OID:

snmptranslate -IR -On CISCO-SMI::ciscoProducts
       .1.3.6.1.4.1.9.1

Если вы видите ошибки вместо OID, удостоверьтесь, что все предыдущие команды не вернули никаких ошибок.

Когда перевод имени объекта заработает, вы будете готовы использовать пользовательский MIB файл. Обратите внимание, что в запросе используется MIB префикс имени (CISCO-SMI::). Вам потребуется его указывать, когда используете инструменты командной строки, а также Zabbix.

Не забудьте перезапустить Zabbix сервер/прокси перед использованием этого MIB файла в Zabbix.

Имейте в виду, что у MIB файлов могут быть зависимости. То есть, одному MIB может требоваться другой. Чтобы удовлетворить эти зависимости, вам нужно установить все необходимые MIB файлы.