Комментарии 34
Я в 2.2.3 такого не замечал (пакет из debian).
Но на 2.2.5+ (сейчас 2.2.7) пулер забит на 75% при 500 процессах. Уже все перекрутил все так и держится на 75%
Сейчас очень редко очередь прыгает выше 100 элементов
Количество узлов сети — 875
Количество элементов данных — 70101
Все это на одном сервера с 6 ядрами 16 Gb RAM и MD RAID10 (4 винта)
Но на 2.2.5+ (сейчас 2.2.7) пулер забит на 75% при 500 процессах. Уже все перекрутил все так и держится на 75%
Сейчас очень редко очередь прыгает выше 100 элементов
Количество узлов сети — 875
Количество элементов данных — 70101
Все это на одном сервера с 6 ядрами 16 Gb RAM и MD RAID10 (4 винта)
0
А какая версия SNMP?.. У меня SNMPv3 и как я понял bulk request это для v2 и v3 only.
Собственно ошибка плавающая. Тот же bulk request поэтому и использует механизм подбора максимального числа итемов в запросе, потому что разное оборудование по разному реагирует на это.
Что касается забитого пулера то интереснее new values per second
В принципе узкие места заббикса прекрасно известны: БД, диск, сеть.
Я в свое время упирался в БД, дефолтные настройки того же MySQL конечно ни о чем.
Собственно ошибка плавающая. Тот же bulk request поэтому и использует механизм подбора максимального числа итемов в запросе, потому что разное оборудование по разному реагирует на это.
Что касается забитого пулера то интереснее new values per second
В принципе узкие места заббикса прекрасно известны: БД, диск, сеть.
Я в свое время упирался в БД, дефолтные настройки того же MySQL конечно ни о чем.
0
SNMPv2 и кое где SNMPv1
Требуемое быстродействие сервера, новые значения в секунду — 710.89
Сеть — отметаем там гигабит, а используется около 1-2 мегабита
Диск — очень радко wa бывает 5-10%
БД — может быть, но я до 1500 значений доводил все было также.
Требуемое быстродействие сервера, новые значения в секунду — 710.89
Сеть — отметаем там гигабит, а используется около 1-2 мегабита
Диск — очень радко wa бывает 5-10%
БД — может быть, но я до 1500 значений доводил все было также.
0
а увеличение числа поллеров не приводит к снижению занятости?.. и я бы еще в сторону таймаута посмотрел бы. У меня была проблема похожая, я сначала решал ее увеличением таймаута (и все было плохо), а потом просто переделал алгоритм получения «медленных» значений.
0
тамаут 2 секунды.
а потом просто переделал алгоритм получения «медленных» значений.— а об этом можно по подробней?
0
ну у меня есть определенные параметры, у которых плавающее время получения значения, зависит от нагрузки на сервер и т.д.
Чтобы не подвисали процессы из-за длинных таймаутов (это же сквозная настройка), я написал отдельный скрипт, который получает эти значения и складывает их в определенные файлики по формату. А заббикс уже из файла выдергивает (это быстро понятное дело). Такой немного «топорный» механизм, но мне очень помог.
Понятно что не везде применимо…
Чтобы не подвисали процессы из-за длинных таймаутов (это же сквозная настройка), я написал отдельный скрипт, который получает эти значения и складывает их в определенные файлики по формату. А заббикс уже из файла выдергивает (это быстро понятное дело). Такой немного «топорный» механизм, но мне очень помог.
Понятно что не везде применимо…
0
В последних релизах всех веток активно чинят SNMP, скорее всего указанная проблема уже решена.
То что прокси при обновлении требуют стирания БД — нормально, совместимость формата баз обещается лишь в пределах ветки.
И да, средняя утилизация пулеров заметно возросла несколько релизов назад.
То что прокси при обновлении требуют стирания БД — нормально, совместимость формата баз обещается лишь в пределах ветки.
И да, средняя утилизация пулеров заметно возросла несколько релизов назад.
0
я проверял 2.2.7 там проблема еще присутствует.
про прокси, я же не против ;) в самом начале Update release про это написано, просто для создания настроения написано, что все пошло не так с самого начала.
про прокси, я же не против ;) в самом начале Update release про это написано, просто для создания настроения написано, что все пошло не так с самого начала.
0
Если есть желание и сможете по пунктам описать как воспроизвести проблему, могу озадачить вопросом разработчиков (у нас коммерческая поддержка). В личку.
+1
www.zabbix.com/rn2.2.7.php
:: Optional SNMP bulk requests
Added configuration file option EnableSNMPBulkRequests to disable SNMP bulk requests.
:: Optional SNMP bulk requests
Added configuration file option EnableSNMPBulkRequests to disable SNMP bulk requests.
0
и?..
зачем отключать? это же очень удобная штука!..
зачем отключать? это же очень удобная штука!..
0
Начиная с 2.4.0 включать и выключать SNMP bulk можно индивидуально для каждого интерфейса узла сети (хоста).
+1
тогда понятнее…
но в моем случае практически все устройства были затронуты этим багом.
Не пострадали только девайсы у которых мало SNMP метрик, типа роутеров с малым количеством туннелей и проч.
а как я уже написал сама идея очень зачетная не хотелось ее терять
но в моем случае практически все устройства были затронуты этим багом.
Не пострадали только девайсы у которых мало SNMP метрик, типа роутеров с малым количеством туннелей и проч.
а как я уже написал сама идея очень зачетная не хотелось ее терять
0
Вручную/через API, крайне неудобно. Сделайте пожалуйста через шаблоны тоже :-)
0
Что то вы поздно засуетились, недавно только обновил до Zabbix 2.4.2, логично было бы обновляться до него.
+1
+1, на всех актуальных 2.4.x мы такого не поймали (16k хостов, 250k итемов, в основном SNMP). Поймали многое другое, но его уже починили :-)
0
2.2 это LTS версия. Кроме того, 2.4 не было у меня в портаже на тот момент.
Я конечно могу и из исходников все собрать, но суппорт этого потом будет очень «дорогой».
Кстати посмотрел исходники 2.4.1 там эта проблема тоже в наличии.
Я конечно могу и из исходников все собрать, но суппорт этого потом будет очень «дорогой».
Кстати посмотрел исходники 2.4.1 там эта проблема тоже в наличии.
+1
Если уж переживать о суппорте то генту там не место ) все таки не продакшен дистирибутив
-1
Ну так идите в support.zabbix.com, заведите тикет, приложите свой патч. Скорее всего ответят что в 2.4.3 для одиночных значений bulk выключен и попросят обновиться :-)
0
а причем тут одиночные значения?
ошибка как раз вылазит на bulk
ошибка как раз вылазит на bulk
0
+
насчет патча… у меня слишком прямолинейное решение. нет оно работает, и работает хорошо, но правильнее делать по другому. Нужно во-первых проверять msgMaxSize, во вторых генерировать согласно этому msgMaxSize запросы, и только потом уже обрабатывать ошибку. У меня патч это такой финт ушами, который ловит ошибку, и пользуется имеющимся механизмом подбора размера bulk.
насчет патча… у меня слишком прямолинейное решение. нет оно работает, и работает хорошо, но правильнее делать по другому. Нужно во-первых проверять msgMaxSize, во вторых генерировать согласно этому msgMaxSize запросы, и только потом уже обрабатывать ошибку. У меня патч это такой финт ушами, который ловит ошибку, и пользуется имеющимся механизмом подбора размера bulk.
0
Если честно, я так и не понял, в чём заключается проблема, кто и где неправ, как это решено (ну не понимаю я код на Цэ) и как надо было решать. Поэтому и предлагаю пообщаться с разработчиками для всеобщей пользы. Но подозреваю что в 2.4.x сия проблема уже решена другим методом (или проявляется лишь в редких условиях).
0
Спасибо за интересную статью. Открыли тикет support.zabbix.com/browse/ZBX-9163. Скорее всего проблема существует как в 2.2.x так и 2.4.x. Будем исправлять.
+1
Не забудьте housekeeper обратно включить, при апгрейте он отключается…
+1
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Как я патчил Zabbix