Обложка канала

ServerAdmin.ru

12437 @srv_admin

Авторская информация о системном администрировании.

ServerAdmin.ru

3 года назад
Открыть в
​​Настраивал на днях мониторинг Zabbix с помощью HTTP агента. Мне нужно было довольно часто делать проверки, чем чаще, тем лучше. Взял для начала интервал в 20 секунд. И тут же получил затык. Реально проверки выполнялись гораздо дольше с разбросом между 1-2 минутами. Начал разбираться. Первым делом заподозрил нехватку HTTP Pollers. Прибавил сразу с запасом: StartHTTPPollers=20 Это вообще никак не помогло. Оно и понятно. Это была первая и единственная HTTP проверка на тот момент. Посмотрел логи сервера в надежде увидеть там какие-то подсказки, но не помогло. Стал копать в сторону таймаутов и интервалов именно для http агента. Там же под капотом другие инструменты. Конкретно эти проверки реализуются с помощью curl. Думаю, может там кроются какие-то нюансы. В итоге ничего не придумал и не нашёл. Никаких особых настроек конкретно для http агента нет. Всё выполняется в рамках всех проверок. 💡И тут меня осенило. Зашёл и проверил очередь запросов в Zabbix — Администрирование ⇨ Очередь ⇨ Обзор очереди. А тут сотни запросов в ожидании от 30 секунд до 1 минуты. На сервере очень много simple check и icmp запросов. Нагрузку на сервер они особо не создают, поэтому не заметно, что их много и они тупят. Для этих проверок не критичны задержки, поэтому никто и не заметил, что они иногда не соблюдают заданный интервал. Далее открыл стандартный дашборд Zabbix под названием Zabbix server health. На нём есть 2 нужных виджета: Utilization of data collectors и Queue size. На первом видно, каких именно обработчиков не хватает, чтобы не росла очередь. В моём случае это были poller data collector и icmp pinger data collector. Увеличил их количество в конфиге сервера: StartPollers=25 StartPingers=10 и всё поехало как надо. Очередь рассосалась, HTTP агент стал работать точно в заданных интервал в 20 секунд. #zabbix