LINUX.ORG.RU
ФорумAdmin

Мониторинг, SNMP, динамические таблицы, вот это все

 ,


0

5

Коллеги, расскажите, чем вы мониторите динамические по своему характеру таблицы?

Пример: OSPF на Multicast. Задача: получать данные о состоянии конкретных нод в OSPF, их соседях и состоянии линков с соседями. По возможности, рисовать карту OSPF-сети.

Если эта информация доступна по snmp, то какие проблемы ?

Берем mib-ы, подпихиваем их net-snmp и mbrowse-ом смотрим, что производитель отдает. Дальше пишем скрипт который отдает эту информацию в формате удобном для дальнейшего использования.

Чтоб само рисовало - не знаю такого. Но при помощи nagios/cacti/... можно нарисовать.

vel ★★★★★
()
Ответ на: комментарий от vel

А кактус/нагиос уже научилось из веб-морды конфигуряться, как заббикс?

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

GateKeeper ★★
() автор топика
Ответ на: комментарий от GateKeeper

заббикс рассматриваю с каждой минутой как все менее и менее подходящий вариант.

Как я тебя понимаю, брат... Но альтернативы не видно.

Если тебе нужен мониторинг исключительно сетевых устройств, посмотри в сторону netxms. Это клон заббикса, заточенный под мониторинг сетевых устройств

Задача: получать данные о состоянии конкретных нод в OSPF, их соседях и состоянии линков с соседями

Вопрос первый, каким способом ( безотносительно системы мониторинга ) ты можешь вытащить эти данные? snmp, логи на удалённом сервере, выполнение команды на циске, запрос информации из quagga, и т.д.?

router ★★★★★
()
Ответ на: комментарий от router

К большому прискорбию netxms далеко еще в жопе по функционалу.

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

MikeDM ★★★★★
()
Ответ на: комментарий от router

P.S.

Я уже твёрдо уверен - единственный вменяемый интерфейс к жаббиксу - программистский, zabbix api. Всё, что они делают для пользователя, у них не получается.

Но через api ты внешним скриптом можешь в т.ч. строить любые схемы и графики.

router ★★★★★
()

посмотрите на реализацию в эрланг. Там много всего и многое непонятно, но оно стоит того. Исходники и Примеры в помощь. Есть решения по динамизму.

swwwfactory ★★
()
Ответ на: комментарий от MikeDM

Но заббикс может забирать данные хоть у черта на куличках

Только все эти данные он будет забирать через жопу и с глюками. Чем дальше ковыряюсь, тем ближе депрессия.

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

Зачастую это и есть единственный способ

router ★★★★★
()
Ответ на: комментарий от MikeDM

Да не в количестве проблема. А в том что тривиальные задачи в zabbix'е делаются мышкой 10 минут. А то и вообще по-человечески не реализуются и приходится тратить время на написание костылей. А самая мякотка в том, что даже после этого может выясниться, что есть очень неприятный глюк и все действия были напрасны.

router ★★★★★
()
Ответ на: комментарий от router

А в том что тривиальные задачи в zabbix'е делаются мышкой 10 минут.

Вебморда она такая.

MikeDM ★★★★★
()
Ответ на: комментарий от router

В SNMP вполне универсальненько так данные дергаются. Беда в том, что заббикс, например, отвалившегося соседа (а, значит, более не показываемого в ospfNbrTable) нормально показать не умеет и, почти не сомневаюсь уже, не сумеет.

GateKeeper ★★
() автор топика
Ответ на: комментарий от MikeDM

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

таким макаром уже проще вообще с нуля написать. Далее: скрипт может выполнять только агент, а воткнуть его в длинк/циску/тому подобное невозможно. Выполнить скрипт на любом другом агенте я не понял как (и тут опять претензия к заббиксу - местами документация невнятна настолько, что прямо напрашивается вывод, что так сделано специально)

GateKeeper ★★
() автор топика
Ответ на: комментарий от router

zabbix api

Вся пользовательская морда у них сейчас чуть менее, чем полностью, переведена на использование этого пресловутого API.

А вот в API...

Ну, посмотри, например, что такое ZBX_FLAG_DISCOVERY_*. Посмотрел? Теперь ищи упоминание этих флагов в api/classes/*. Ничего не настораживает?

GateKeeper ★★
() автор топика
Ответ на: комментарий от GateKeeper

Есть триггер «nodata». Если остальные типы триггеров пересчитываются только в момент прихода данных, то триггеры типа «nodata» zabbix сам периодически проверяет. Т.е. задаёшь триггер «сосед X отвалился», {template_osfp:neighnour.[X].nodata(25)}=1

router ★★★★★
()
Ответ на: комментарий от GateKeeper

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

Протестую, это провокация!. Скрипт можно выполнять на любом хосте, даже если он не заведён в zabbix. Достаточно установить zabbix_send и слать данные через него. Тип данных - «zabbix trapper». Сервер zabbix сам не делат ничего для получения таких данных. Ждёт пока их пришлёт кто-нибудь

router ★★★★★
()
Ответ на: комментарий от Komintern

Чуть выше рассказал.

Вот причина

ИЧСХ: Владышеву и Ко абсолютно пофиг. Забашляй - сделаем, но твои патчи принять (даже идею) - ни-ког-да!

Я, кстати, тут же вспомнил, под какой лицензией он распространяется... Да у них же GPL головного мозга!

GateKeeper ★★
() автор топика
Ответ на: комментарий от router

Достаточно установить zabbix_send и слать данные через него. Тип данных - «zabbix trapper».

Уж совсем через жеппу как-то получается.

GateKeeper ★★
() автор топика
Ответ на: комментарий от router

Есть триггер «nodata».

Теперь вспоминаем волшебное слово LLD и так же вспоминаем, что в заббиксе, оказывается, любые триггеры, включая nodata(), удаляются из базы сразу, как только висящие под ними item'ы уходят в unsupported (в LLD, естественно).

GateKeeper ★★
() автор топика
Ответ на: комментарий от GateKeeper

Черезжопу - это именно вызов внешних скриптов. Т.к. параметр «timeout» из конфига определяет не только максимальное время работы внешнего скрипта, но и таймаут пинга ( ! ) и ещё много чего. Меня это сильно раздражает.

Плюс если данных будет много, то даже оптимизированный скрипт, вызываемый 10 раз в секунду, сильно нагрузит сервер zabbix. А вот zabbix_send + «zabbix trapper» пролетают шустро

router ★★★★★
()
Последнее исправление: router (всего исправлений: 1)

А вообще, если найдёшь приличную систему мониторинга, кастани меня в тему, пожалуйста.

router ★★★★★
()
Ответ на: комментарий от GateKeeper

Ну, посмотри, например, что такое ZBX_FLAG_DISCOVERY_*.

Где именно посмотреть? Я пока читал только код, относящийся к синхронизации нод, плюс немного работу poller

router ★★★★★
()
Ответ на: комментарий от router

Насколько я помню, не сразу, а спустя «Keep lost resources period (in days)»

Именно, что сразу. Подробности: src/libs/zbxdbhigh/lld.c (в текущем trunk - lld-trigger.c, кажется). Функция, ЕМНИП (проект на работе), - lld_update_triggers().

GateKeeper ★★
() автор топика

Раз у тебя snmp, посмотри в сторону xymon ( свободный потомок BigBrother ) + devmon

У devmon тоже есть косяки, но мне даже он пока ближе заббикса.

router ★★★★★
()
Ответ на: комментарий от router

include/common.h и frontend/php/include/defines.inc.php (кажется).

Чтоб ты долго не искал: эти flags задаются как 0x1, 0x2, 0x4, 0x8. Т.е. очевидно - используются в качестве битовой маски. Как они используются в коде:

$trigger['flags'] = ZBX_FLAG_DISCOVERY_NORMAL;
...
if ($trigger['flags'] == ZBX_FLAG_DISCOVERY_NORMAL)

В сишной лапше - аналогично.

GateKeeper ★★
() автор топика
Ответ на: комментарий от GateKeeper

общая информация легко «дюкается» и гуглится:

https://duckduckgo.com/?q=erlang snmp

https://www.google.com/search?q=erlang snmp&pws=0

первые 5-10 ссылок подойдут.

кратко: ерланг сам все умеет мониторить и себя, свои ноды и прочее. Хранит данные в своих встроенных БД: ets, dts наверное, mnesia, может компилить asn-определения для snmp. В общем много чего наворочено. Нода в сети ведет себя как девайс фактически.

swwwfactory ★★
()
Ответ на: комментарий от GateKeeper

Впервые слышу. Я не сетевик - юниксоид, и софт для управления сетью не смотрел.

Предложу нашим цисководам, и обязательно посмотрю что он мониторить умеет.

router ★★★★★
()
Ответ на: комментарий от GateKeeper

А, ты про написать свою с б.д. и ш? Не совсем вариант. Такая уже есть.

ты про таблицы ведь спрашивал? там это есть и как раз то, что можно посмотреть в mips-браузере

swwwfactory ★★
()
Ответ на: комментарий от router

Раз у тебя snmp

беда в том, что хотелось бы туда же затащить микротики и все, что в них пригодится, но не отдается в snmp (т.е. доставать через API), а так же линуксячьи/виндовые/прочие ноды (а иногда, наверное, и отдельные приложения, гоняющие на этих нодах)

GateKeeper ★★
() автор топика
Ответ на: комментарий от GateKeeper

сейчас уже не помню - давно это было, mips-браузер это приложение на java, позволяющее считывать snmp-информацию с устройств. Если подгружаешь мипс, то можно получить развернутые описание свойств. Если эти свойства в виде таблиц, то из erlang-a можно их передавать так-же как обычные данные, но восприниматься они будут как таблички. Я про это толкую.

swwwfactory ★★
()
Последнее исправление: swwwfactory (всего исправлений: 1)
Ответ на: комментарий от router

xymon

глянул, страшный он какой-то. Я так понимаю, его предок BB - не лучше?

А, глянул devmon, который на чистом BB сидит. Ужас-ужас.

GateKeeper ★★
() автор топика
Ответ на: комментарий от GateKeeper

А, глянул devmon, который на чистом BB сидит. Ужас-ужас.

Ничего вменяемее zabbix нету. либо свое писать либо заббикс юзать.

MikeDM ★★★★★
()
Ответ на: комментарий от MikeDM

быдлокод это нормальное состояние кода

Для меня было открытием то, что быдлокодеры, использующие лицензию делись@дополняй, не приемлют патчей вообще, даже под CLA.

GateKeeper ★★
() автор топика
Ответ на: комментарий от MikeDM

пока сижу на транке и периодически дергаю свежие ревизии в подправленное своим патчем дерево. А так да - есть мысля запустить xibbaz на битбакете.

GateKeeper ★★
() автор топика
Ответ на: комментарий от GateKeeper

Естественно, мой билд с фиксами не заработал... теперь знаю почему:

define('ZBX_FLAG_DISCOVERY_NORMAL',		0x0); // a normal item

Это ж какими надо быть ушлепками...

GateKeeper ★★
() автор топика
Ответ на: комментарий от GateKeeper

А, поправлю тебя: MIB browser.

да, вроде так, говорю давно уже это было, забывается. Благодарю.

swwwfactory ★★
()
Последнее исправление: swwwfactory (всего исправлений: 1)
Ответ на: комментарий от router

Тут пробежало в новостях про NetXMS

В общем, документации по нему, считай, нет. Но по описанию и скриншотам что-то похожее на нормальную систему. Пока не разобрался даже, как хотя бы шаблон создать.

GateKeeper ★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.