61

Как я ваяла bgp шаблон для huawei в zabbix

Серия Как это - работать сисадмином/сетевиком

Эта история входит в серию про описание работы админа и рассказывает не о том, что «вот я сделала шаблон для zabbix – скачивайте», но о том, как всё это происходит.

В пятницу у меня была задача ничего не сломать, наконец-то образовалось свободное время и я занялась шаблонами на zabbix для мониторинга BGP. Есть шаблоны на cisco, а вот на huawei я нашла один какой-то шаблон. Он работал, но меня не устраивал своей малой информативностью и я начала его допиливать.

Я вообще в шаблонах заббикса полный нуб, максимум что делала — пару параметров поправить. Именно поэтому я не пошла создавать свой супер-мега шаблон с нуля, а взяла за основу чей-то. Для начала нам нужны mib от Huawei на CloudEngine 8000. Спасибо хуавею за наше счастливое настоящее — по ним есть онлайн справка.

Что такое mib? Это Management Information Base, с ней работает snmp. Там по цифровому ключу, разделённому точками (типа 1.5.2.4.3.1) можно получить значение, которое будет характеризовать какое-то состояние какого-то компонента системы. Ну типа, у вас интерфейс поднят или нет? Или вентилятор включен или нет? Или «трафика зарегистрировано в такой-то момент столько-то килобит на таком-то интерфейсе в такую-то сторону». У каждого значения есть точный ключ, такая длинная цифровая змея. Если взять ключ и отрезать у него хвостик до какого-то знака — и обратиться по обрезанному ключу — можно получить список значений, объединенных по какому-то признаку. Например, статус всех интерфейсов в системе.

Zabbix работает с сетевыми железками через snmp, соответственно, в шаблонах там указаны mib. Чтоб заббикс мог по ним что-то считывать, он должен ещё о них знать и это своя отдельная тема. Например, на непопулярные железки надо подкладывать ему mib-файлы в определенную папочку на сервере. Но с хуавеем всё хорошо, он о них (ладно, о большинстве) сам знает.

Исходный шаблон показывал соседей BGP (и не было понятно что это пир, только теги смотреть) и статус пира в виде строки с текстом от 1 до 6. Я, во-первых, коды наизусть не особо знаю, во-вторых, хотела бы график с изменением статуса пира, а график - он только для чисел, а не для текста. Также я не поняла зачем на фактически одни и те же пиры делать обнаружение и перетащила всё в одно «обнаружение», но сделала дополнительный «прототип данных» на статус пира.

С представлением в виде чиселок вроде понятно — берем и меняем «текст» на «целое положительное» и получаем то же самое, что было, но уже в цифровом виде.

Если посмотреть у узла сети «данные», то там и график сам появится.
Теперь про отображение. У прототипа данных есть «предобработка», но если там менять число на его описание, то и выходные данные снова будут текстовые и графика мы не получим. Но я же вижу, что у других шаблонов и график есть и человеческое описание. Я пошла в базовый сетевой шаблон и посмотрела как там сделано. А там у шаблона есть преобразования значений. Пилим по аналогии:

Берём из описания mib 1.3.6.1.4.1.2011.5.25.177.1.1.2.1.5
The status of the remote BGP peer, including:
1: Idle(1)
2: Connect(2)
3: Active(3)
4: Opensent(4)
5: Openconfirm(5)
6: Established(6)

И вписываем в преобразование у самого шаблона.

Ииии.. ничего не работает. Надо указать, что мы используем это преобразование в прототипе элемента данных (мне пришлось прочитать справку заббикса про преобразование значений, чтоб это найти):

Внимательный читатель заметит (есть ностальгия по старым книжкам при этих словах, да?), что мы смотрели mib 1.3.6.1.4.1.2011.5.25.177.1.1.2.1.5 а в шаблоне у нас 1.3.6.1.4.1.2011.5.25.177.1.1.2.1.5.0.1.1.1.4 — так откуда взялся 0.1.1.1.4? Я не искала ответ, что именно он означает (мне вообще кажется он про ipv4, но не суть). Главное, что прежде чем мы mib из справки пойдём вставлять в шаблоны заббикса - хорошо бы посмотреть, что он в выводе даёт. Для этого у нас есть утилита snmpwalk. Запускаем с заббикс-сервера команду просмотра mib, указывая ip роутера, и смотрим, что выдаётся.

Тут поменян community на public и в конце вырезаны белые ip-адреса соседей

Тут поменян community на public и в конце вырезаны белые ip-адреса соседей

Всё в конце, что не войдет в ваш SNMP OID, поселится в #SNMPINDEX, а нам там нужен только ip, соответственно весь нужный хвостик 0.1.1.1.4 включаем в SNMP OID.

Из того, что в шаблоне не было, мне захотелось добавить номер автономной системы соседа hwBgpPeerRemoteAs, MIB 1.3.6.1.4.1.2011.5.25.177.1.1.2.1.2 — сделала по аналогии.
Ну и триггер на изменение статуса пира удалось сделать встроенным мастером. Выглядит он странно, но работает.

В целом, посмотрю, что ещё надо, чтоб видеть, что оно сломалось. Например, есть количество eBGP и iBGP сессий — хорошо бы его тоже отслеживать.

У меня на гитхабе профиля нет, так что кому надо, шаблон по ссылке тут (это yaml, загружать в чужой заббикс не пробовала, уже после публикации нашла, что одно свойство у меня не bgppeer, а pgppeer, но это ни на что не влияет на данном этапе, только на эстетику).

Немного воды в конце: я вообще не вдупляла в начале куда смотреть. На понимание и дабавление пары фич у меня ушла половина рабочего дня неспешного ковыряния и ещё час вечером. Это много. С другой стороны, вы посмотрели как поступает админ в случае "да я вообще х.з. как эту хрень делать".
А ещё у меня в профиле есть телега, где я пишу более короткие и развлекательные посты пару-тройку раз в неделю, вдруг кому будет интересно.

Лига Сисадминов

2.7K постов19.2K подписчика

Правила сообщества

Мы здесь рады любым постам связанным с рабочими буднями специалистов нашей сферы деятельности.

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества

Недвижимость и ремонт

Теги

Популярные авторы

Сообщества