Добавление BDCOM OLT в ABillS

В этой статье я приведу пример добавления BDCOM-P3310C и BDCOM-P3310B в биллинговую систему ABillS на операционной системе Ubuntu Server 16.04.

Читать далее «Добавление BDCOM OLT в ABillS»

SNMP OID и MIB для Mimosa устройств

Делал однажды Zabbix шаблон для Mimosa B5c и исследовал несколько полезных SNMP OID/MIB.

Первым делом включим SNMP в устройстве, проверим связь из Linux и увидим доступные OID:
Читать далее «SNMP OID и MIB для Mimosa устройств»

Решение ошибки в Zabbix «snmp_parse_oid(): cannot parse OID «MIB»»

Заметил однажды на новой системе после импорта Zabbix шаблонов что не все элементы данных успешно работают.

И отображается ошибка:

snmp_parse_oid(): cannot parse OID «MIB»

Как оказалось в элементах данных указаны MIB вместо OID, которых нет в системе.
Приведу пример, MIB для входящего трафика на первом интерфейсе будет ifInOctets.1, а OID 1.3.6.1.2.1.2.2.1.10.1
Тут более подробно можно увидеть примеры Список SNMP OID и MIB для интерфейсов
Поэтому вариантом решения данной ошибки будет либо редактирование всех элементов шаблона изменим MIB на OID, либо вариант проще — установить MIB которых нет в системе, если это стандартные MIB то их можно установить как я описывал в этой статье — Установка MIB в Ubuntu и решение ошибки «SNMP Cannot Find Module …»

В конце обязательно перезапустим snmpd и zabbix-server:

sudo service snmpd restart
sudo service zabbix-server restart

Все.

Установка и использование Net-SNMP

Установить Net-SNMP в Centos можно командой:

sudo yum install net-snmp-utils net-snmp

В Ubuntu/Debian так:

sudo apt-get install snmp snmpd

Сделаем копию стандартного файл конфигурации на всякий случай:

sudo mv /etc/snmp/snmpd.conf /etc/snmp/snmpd.conf.default

Далее например в текстовом редакторе nano откроем конфигурацию (Ctrl+X для выхода, y/n для сохранения или отмены изменений):

sudo nano /etc/snmp/snmpd.conf

И откроем доступ к snmp для localhost и указанной подсети (где public — комьюнити (пароль), rocommunity определяет доступ только для чтения, rwcommunity — чтение и запись):

rocommunity public  localhost
rocommunity public 192.168.1.0/24

Перезапустим snmpd чтобы применить изменения в конфигурации:

sudo service snmpd restart

Выполним проверку с локального сервера или указанной выше подсети:

snmpwalk -v 1 -c public 127.0.0.1

Смотрите также:
Linux snmp OIDs

Список SNMP OID и MIB для интерфейсов

Приведу ниже список стандартных OID и MIB с описанием для получения по SNMP различной статистики сетевых интерфейсов коммутаторов, маршрутизаторов, точек доступа, сетевых плат в серверах и т.д.

Проверить OID и MIB можно из Linux например командой (где .1, это OID):

snmpwalk -v2c -c комьюнити 192.168.1.2 .1

Посмотреть описание сетевых интерфейсов можно через OID (в скобках MIB):

.1.3.6.1.2.1.2.2.1.2 (ifDescr)

Список индексов интерфейсов портов:

.1.3.6.1.2.1.17.1.4.1.2 (ifIndex)

Статус порта, есть линк или нет (1-up, 2-down, 3-testing, 4-unknown, 5-dormant, 6-notPresent, 7-lowerLayerDown):

1.3.6.1.2.1.2.2.1.8 (ifOperStatus)

Статус порта, включен или отключен программно (1-up, 2-down, 3-testing):

ifAdminStatus

Время последнего изменения порта:

1.3.6.1.2.1.2.2.1.9 (ifLastChange)

Трафик портов:

1.3.6.1.2.1.2.2.1.10 (ifInOctets)
1.3.6.1.2.1.2.2.1.16 (ifOutOctets)

Для 64-битных счетчиков трафика используется MIB:

ifHCInOctets
ifHCOutOctets

Количество пакетов содержащих ошибки:

1.3.6.1.2.1.2.2.1.20 (ifOutErrors)
1.3.6.1.2.1.2.2.1.20 (ifInErrors)

Количество отброшенных пакетов, которые по сути без ошибок, но были отброшены например для освобождения буферного пространства:

ifInDiscards
ifOutDiscards

Физический адрес:

ifPhysAddress

Размер наибольшего пакета, который может быть отправлен:

ifMtu

Тип интерфейса:

ifType

Unicast пакеты:

ifIntUcastPkts
ifOutUcastPkts

Счетчик Broadcast пакетов:

ifInBroadcastPkts
ifOutBroadcastPkts

Скорость порта:

1.3.6.1.2.1.2.2.1.5 (ifSpeed)

Список VLAN:

.1.3.6.1.2.1.17.7.1.4.3.1.1

Время работы устройства:

1.3.6.1.2.1.1.3 (sysUpTime)

Описание устройства:

1.3.6.1.2.1.1.1.0

Смотрите также мои статьи тут:
SNMP MIBs and OIDs

Почему Zabbix не всегда рисует графики

Бывают случаи когда часть информации на графиках в Zabbix отсутствует, так сказать отображается частично и с перебоями.

Опишу возможные причины перебоев и их решение:

1) Может быть плохая связь с узлом сети, необходимо проверить пинг с Zabbix сервера на узел сети.
Для примера, первая команда PING с большими пакетами из Windows, а вторая из Linux:

ping -t -l 1024 192.168.5.1
ping -i 0.2 -s 1024 192.168.5.1

2) Устройство медленно работает и перестает отвечать при большом количестве запросов, для решения этой проблемы необходимо в настройках узла сети Zabbix снять галочку «Использовать массовые запросы».

3) Для получения данных с узла сети используются 32-битные счетчики, и при загрузке интерфейсов устройства например выше 400 мегабит данные на графике могут не отображаться, для решения этой проблемы в элементах данных необходимо заменить их на 64-битные и очистить историю узла сети чтобы на графиках не было скачков.
Например, если трафик получается с первого сетевого интерфейса через MIB ifInOctets.1 (32-бит), то его нужно заменить на ifHCInOctets.1 (64-бит).

Список SNMP OID для iLO4

Делал сегодня шаблон под Zabbix для мониторинга iLO 4 на сервере HP DL380p G8 и пришлось исследовать несколько OID.

Проверить OID из Linux можно командой:
snmpwalk 192.168.1.5 -c КОМЬЮНИТИ -v 2c OID

Приведу ниже список и описание для OID куллеров, процессоров, датчиков температуры, логических дисков (RAID), жестких дисков, сетевого контроллера iLO, оперативной памяти.

Fans:
.1.3.6.1.4.1.232.6.2.6.7.1.2.0 (Fan Index)
.1.3.6.1.4.1.232.6.2.6.7.1.3.0 (Fan Locale (1=other, 2=unknown, 3=system, 4=systemBoard, 5=ioBoard, 6=cpu, 7=memory, 8=storage, 9=removable media, 10=power supply, 11=ambent, 12=chassis, 13=bridge card, 14=management board, 15=backplane, 16=network slot, 17=blade slot, 18=virtual)
.1.3.6.1.4.1.232.6.2.6.7.1.4.0 (Fan Present (1=other, 2=absent, 3=present)
.1.3.6.1.4.1.232.6.2.6.7.1.5.0 (Fan Present (1=other, 2=tachOutput, 3=spinDetect)
.1.3.6.1.4.1.232.6.2.6.7.1.6.0 (Fan Speed (1=other, 2=normal, 3=high)
.1.3.6.1.4.1.232.6.2.6.7.1.9.0 (Fan Condition (1=other, 2=ok, 3=degraded, 4=failed)

Temperature:
.1.3.6.1.4.1.232.6.2.6.8.1.2.0 (Temperature Sensor Index)
.1.3.6.1.4.1.232.6.2.6.8.1.3.0 (Temperature Sensor Locale (1=other, 2=unknown, 3=system, 4=systemBoard, 5=ioBoard, 6=cpu, 7=memory, 8=storage, 9=removable media, 10=power supply, 11=ambent, 12=chassis, 13=bridge card)
.1.3.6.1.4.1.232.6.2.6.8.1.7.0 (Threshold Type (1=other, 5=blowout, 9=caution, 15=critical, 16=noreaction)
.1.3.6.1.4.1.232.6.2.6.8.1.4.0 (Temperature Celsius)
.1.3.6.1.4.1.232.6.2.6.8.1.5.0 (TemperatureThreshold)
.1.3.6.1.4.1.232.6.2.6.8.1.6.0 (TemperatureCondition)

CPU:
.1.3.6.1.4.1.232.1.2.2.1.1.1 (CPU Index)
.1.3.6.1.4.1.232.1.2.2.1.1.3 (CPU Name)
.1.3.6.1.4.1.232.1.2.2.1.1.4 (CPU Speed in MHz)
.1.3.6.1.4.1.232.1.2.2.1.1.5 (CPU Step)
.1.3.6.1.4.1.232.1.2.2.1.1.6 (CPU status (1=unknown, 2=ok, 3=degraded, 4=failed, 5=disabled)
.1.3.6.1.4.1.232.1.2.2.1.1.15 (Number of enabled CPU cores)
.1.3.6.1.4.1.232.1.2.2.1.1.25 (Number of available CPU threads)
.1.3.6.1.4.1.232.1.2.2.1.1.26 (CPU power status (1=unknown, 2=Low Powered, 3=Normal Powered, 4=High Powered)

Logical Drives:
.1.3.6.1.4.1.232.3.2.3.1.1.2.0 (Logical Drive Index)
.1.3.6.1.4.1.232.3.2.3.1.1.1.0 (Logical Drive Controller)
.1.3.6.1.4.1.232.3.2.3.1.1.3.0 (Logical Drive Fault Tolerance (1=other, 2=none, 3=RAID 1/RAID 1+0 (Mirroring), 4=RAID 4 (Data Guard), 5=RAID 5 (Distributed Data Guard), 7=RAID 6 (Advanced Data Guarding), 8=RAID 50, 9=RAID 60, 10=RAID 1 ADM (Advanced Data Mirroring), 11=RAID 10 ADM (Advanced Data Mirroring with Striping))
.1.3.6.1.4.1.232.3.2.3.1.1.9.0 (Logical Drive Size in Mb)
.1.3.6.1.4.1.232.3.2.3.1.1.4.0 (Logical Drive Status (1=other, 2=ok, 3=Failed, 4=Unconfigured, 5=Recovering, 6=Ready Rebuild, 7=Rebuilding, 8=Wrong Drive, 9=Bad Connect, 10=Overheating, 11=Shutdown, 12=Expanding, 13=Not Available, 14=Queued For Expansion, 15=Multi-path Access Degraded, 16=Erasing, 17=Predictive Spare Rebuild Ready, 18=Rapid Parity Initialization In Progress, 19=Rapid Parity Initialization Pending, 20=No Access — Encrypted with No Controller Key, 21=Unencrypted to Encrypted Transformation in Progress, 22=New Logical Drive Key Rekey in Progress, 23=No Access — Encrypted with Controller Encryption Not Enabled, 24=Unencrypted To Encrypted Transformation Not Started, 25=New Logical Drive Key Rekey Request Received)
.1.3.6.1.4.1.232.3.2.3.1.1.11.0 (Logical Drive Condition (1=other, 2=ok, 3=degraded, 4=failed)

Drives:
.1.3.6.1.4.1.232.3.2.5.1.1.2.0 (Drive Index)
.1.3.6.1.4.1.232.3.2.5.1.1.5.0 (Drive Bay)
.1.3.6.1.4.1.232.3.2.5.1.1.64.0 (Drive Location)
.1.3.6.1.4.1.232.3.2.5.1.1.3.0 (Drive Vendor)
.1.3.6.1.4.1.232.3.2.5.1.1.51.0 (Drive Serial Number)
.1.3.6.1.4.1.232.3.2.5.1.1.45.0 (Drive Size in Mb)
.1.3.6.1.4.1.232.3.2.5.1.1.65.0 (Drive Link Rate (1=other, 2=1.5Gbps, 3=3.0Gbps, 4=6.0Gbps, 5=12.0Gbps))
.1.3.6.1.4.1.232.3.2.5.1.1.70.0 (Drive Current Temperature)
.1.3.6.1.4.1.232.3.2.5.1.1.71.0 (Drive Temperature Threshold)
.1.3.6.1.4.1.232.3.2.5.1.1.72.0 (Drive Maximum Temperature)
.1.3.6.1.4.1.232.3.2.5.1.1.6.0 (Drive Status (1=Other, 2=Ok, 3=Failed, 4=Predictive Failure, 5=Erasing, 6=Erase Done, 7=Erase Queued, 8=SSD Wear Out, 9=Not Authenticated)
.1.3.6.1.4.1.232.3.2.5.1.1.37.0 (Drive Condition (1=other, 2=ok, 3=degraded, 4=failed)
.1.3.6.1.4.1.232.3.2.5.1.1.9.0 (Drive Reference Time in hours)

iLO NIC:
.1.3.6.1.4.1.232.9.2.5.2.1.1 (iLO location)
.1.3.6.1.4.1.232.9.2.5.1.1.2 (iLO NIC model)
.1.3.6.1.4.1.232.9.2.5.1.1.4 (iLO NIC MAC)
.1.3.6.1.4.1.232.9.2.5.1.1.5 (iLO NIC IPv4)
.1.3.6.1.4.1.232.9.2.5.1.1.9 (iLO NIC speed)
.1.3.6.1.4.1.232.9.2.5.1.1.14 (iLO NIC FQDN)
.1.3.6.1.4.1.232.9.2.5.2.1.2 (Tx bytes)
.1.3.6.1.4.1.232.9.2.5.2.1.3 (Tx packets)
.1.3.6.1.4.1.232.9.2.5.2.1.6 (Tx discard packets)
.1.3.6.1.4.1.232.9.2.5.2.1.7 (Tx error packets)
.1.3.6.1.4.1.232.9.2.5.2.1.9 (Rx bytes)
.1.3.6.1.4.1.232.9.2.5.2.1.10 (Rx packets)
.1.3.6.1.4.1.232.9.2.5.2.1.13 (Rx discard packets)
.1.3.6.1.4.1.232.9.2.5.2.1.14 (Rx error packets)
.1.3.6.1.4.1.232.9.2.5.2.1.15 (Rx unknown packets)

Memory:
.1.3.6.1.4.1.232.6.2.14.13.1.1 (Memory Index)
.1.3.6.1.4.1.232.6.2.14.13.1.13 (Location)
.1.3.6.1.4.1.232.6.2.14.13.1.9 (Manufacturer)
.1.3.6.1.4.1.232.6.2.14.13.1.10 (Part Number)
.1.3.6.1.4.1.232.6.2.14.13.1.6 (Size in Kbytes)
.1.3.6.1.4.1.232.6.2.14.13.1.8 (Memory Technology)
.1.3.6.1.4.1.232.6.2.14.13.1.7 (Memory Type)
.1.3.6.1.4.1.232.6.2.14.13.1.19 (Memory status (1=other, 2=notPresent, 3=present, 4=good, 5=add, 6=upgrade, 7=missing, 8=doesNotMatch, 9=notSupported, 10=badConfig, 11=degraded, 12=spare, 13=partial)
.1.3.6.1.4.1.232.6.2.14.13.1.20 (Memory condition (1=other, 2=ok, 3=degraded, 4=degradedModuleIndexUnknown)

Решение ошибки Unknown Object Identifier (Index out of range: XXX (ifIndex))

Однажды делал шаблон Zabbix для рисования графиков трафика с портов GPON плат на Huawei SmartAX MA5683T.

Из Linux посмотрел индексы интерфейсов командой:

snmpwalk -v2c -c public 192.168.0.101 ifDesc

Получил ответ что-то в виде (где 4194336768 индекс нулевого порта GPON платы):

IF-MIB::ifDescr.4194336768 = STRING: Huawei-MA5600-V800R008-GPON_UNI

Соответственно по этому индексу должен считываться и трафик, поэтому выполнил команду:

snmpwalk -v2c -c public 192.168.0.101 ifInOctets.4194336768

Но в итоге получил ответ:

.1.3.6.1.2.1.2.2.1.13.4194336768: Unknown Object Identifier (Index out of range: 4194336768 (ifIndex))

Решить проблему помогло добавления ключа -Ir в команду:

snmpwalk -v2c -Ir -c public 192.168.0.101 ifInOctets.4194336768

В ответ получил то что нужно:

IF-MIB::ifInOctets.4194336768 = Counter32: 2686914701

Ошибку можно решить добавив в файл конфигурации /etc/snmp/snmp.conf:

noRangeCheck yes

Либо, так как в Zabbix негде указать дополнительные опции к SNMP запросам, то можно написать скрипт:

snmpwalk -v2c -Ir -c public 192.168.0.101 ifInOctets.4194336768 | sed -e 's/.*Counter32: //g'

В конце команды редактором SED я отрезал лишний текст чтобы в результате была только цифра.
В Zabbix потом изменим элемент данных, где:

Тип: Внешняя проверка
Ключ: ИмяСкрипта.sh
Тип информации: Числовой (с плавающей точкой)
Хранение значения: Дельта (скорость в секунду)

Смотрите также мою статью:
Список SNMP OID и MIB для интерфейсов

SNMP MIBs and OIDs for MikroTik

Сегодня делал шаблоны Zabbix, начал делать сначала под MikroTik RouterBOARD SXT-Lite2 (2nDr2).

Некоторые OID можно найти выполнив следующие команды на устройстве:

system resource print oid
system resource cpu print oid
system health print oid
interface print oid

SNMP должно быть включено на устройстве, в IPSNMPCommunities добавлено комьюнити и должна стоять галочка в IPSNMP на Enable.

Из Linux можно проверять OID командой:

snmpwalk -v 2c -c public 192.168.1.1 .1

Опишу ниже несколько OID которые я использовал.
SSID:

SNMPv2-SMI::enterprises.14988.1.1.1.3.1.4.2

Signal:

.1.3.6.1.4.1.14988.1.1.1.2.1.3

Uptime:

.1.3.6.1.2.1.1.3.0

Загрузка процессора:

.1.3.6.1.2.1.25.3.3.1.2.1

Определим индекс интерфейсов посмотрев их описание:

.1.3.6.1.2.1.2.2.1.2
ifDescr

LAN трафик (у меня под индексом 1):

ifInOctets.1
ifOutOctets.1
1.3.6.1.2.1.2.2.1.10.1
1.3.6.1.2.1.2.2.1.16.1

WLAN трафик (у меня под индексом 2):

ifInOctets.2
ifOutOctets.2
1.3.6.1.2.1.2.2.1.10.2
1.3.6.1.2.1.2.2.1.16.2

Всего памяти и сколько использовано:

.1.3.6.1.2.1.25.2.3.1.5.65536
.1.3.6.1.2.1.25.2.3.1.6.65536

Частота процессора:

.1.3.6.1.4.1.14988.1.1.3.14.0

mac-адреса LAN и WLAN:

.1.3.6.1.2.1.2.2.1.6.1
.1.3.6.1.2.1.2.2.1.6.2

Пакеты с ошибками in/out на WLAN интерфейсе (у меня WLAN под индексом 2):

.1.3.6.1.2.1.2.2.1.14.2
.1.3.6.1.2.1.2.2.1.20.2

Смотрите также:
Список SNMP OID и MIB для интерфейсов

SNMP MIBs и OIDs для Ubiquiti PowerBeam 5AC

Писал шаблон под Ubiquiti PowerBeam 5AC для Zabbix и исследовал несколько основных SNMP OID по которым нужно рисовать графики.
OID тестировал для устройств которые настроены в режиме Station и с прошивкой v7.1.4 (XC).

Проверить OID можно например из Linux командой:

snmpwalk -v 1 -c public 192.168.1.20 .1

Первым делом посмотрел какие есть интерфейсы (если добавлять VLAN и т.д. на устройстве, то их номер может сдвигаться):

snmpwalk -v 1 -c public 192.168.1.20 ifDescr

Следующими мибами можно считывать входящий и исходящий трафик (у меня LAN eth0 под индексом 4, WLAN ath0 под 10), например для LAN трафика:

ifInOctets.4
ifOutOctets.4

Средняя загрузка CPU за 1мин/5мин/15мин:

1.3.6.1.4.1.10002.1.1.1.4.2.1.3.1
1.3.6.1.4.1.10002.1.1.1.4.2.1.3.2
1.3.6.1.4.1.10002.1.1.1.4.2.1.3.3

TX и RX AP в килобайтах можно найти следующими OID:

1.3.6.1.4.1.41112.1.4.7.1.17.1.4.24.214
1.3.6.1.4.1.41112.1.4.7.1.18.1.4.24.214

Шумов OID можно найти по:

1.3.6.1.4.1.41112.1.4.7.1.4.1.4.24.214

Уровень сигнала: 1.3.6.1.4.1.41112.1.4.5.1.5.1
Частота: 1.3.6.1.4.1.41112.1.4.1.1.4.1
SSID: 1.3.6.1.4.1.41112.1.4.5.1.2.1
Uptime: 1.3.6.1.2.1.1.3.0
Свободно памяти: 1.3.6.1.4.1.10002.1.1.1.1.2.0
Всего памяти: 1.3.6.1.4.1.10002.1.1.1.1.1.0
MAC адрес точки доступа к которой подключено устройство: 1.3.6.1.4.1.41112.1.4.5.1.4.1
IP адрес точки доступа к которой подключено устройство: 1.3.6.1.4.1.41112.1.4.7.1.10.1.4.24.214.232.12.159
Тип антенны: 1.3.6.1.4.1.41112.1.4.1.1.9.1

Смотрите также:
Список SNMP OID и MIB для интерфейсов