Версия Zabbix: 3.0.3 (zabbix-server-mysql)
ОС: Ubuntu 14.04 Trusty
Количество хостов (включено / отключено / шаблоны): 28/0/57
Количество элементов (включено / отключено / не поддерживается): 1349/161/47
Количество триггеров (включено / выключено): 902/39
Требуемая производительность сервера, новых значений в секунду: 22,86
Конфигурация Zabbix сервера:
StartPollers=5
StartPollersUnreachable=2
StartTrappers=5
StartDiscoverers=3
StartHTTPPollers=5
У меня есть шаблон с тремя такими элементами: net.tcp.port[<IP>,3128]
. Шаблон применяется к 10 серверам.
Вот проблема: когда я включаю эти элементы, такие события, как zabbix-agent on <hostname> is not available for 2 minutes
начинают случайным образом появляться на 10 хостах, где применяется шаблон. Значения на графике «Производительность Zabbix сервера» (который представляет), представляющие zabbix[wcache,values]
, начинаем снижаться с 19-19.5 до 16-17. Ценности, представляющие zabbix[queue]
оставайтесь на 0, как и раньше.
Когда я отключаю предметы, проблема исчезает.
Zabbix сервер не перегружен вводом / выводом или процессором, имеется много свободной памяти. Не похоже на проблему производительности оборудования. Агенты Zabbix на хостах доступны, проверяю с nc -vz <hostname> 10050
.
Ничего необычного не появляется в журнале сервера или журналах агентов на этих 10 хостах.
Я пробовал увеличить ulimit -n
для процесса сервера zabbix он был увеличен: cat /proc/<zabbix_worker_pid>/limits
теперь показывает Max open files 10240 10240 files
. Не помогло.
Я пробовал увеличить количество StartPoller до 10 и 15 - тоже не помогло.
Что происходит с сервером?
UPD:
Тип элементов: Zabbix агент
Все системы прошиваются Linux ubuntu 14.04 trusty
Агенты на хостах запускают 3 слушателя, 1 сборщик и 1 процесс активной проверки.
Для 7 из 10 хостов zabbix_get -s <host> -t net.tcp.port[<IP>,3128]
работает мгновенно для всех 3 элементов, на других 3 хостах он работает около 3 секунд и возвращает 0 (отслеживаемые IP-адреса недоступны с этих 3 хостов).
В заключение:
Если:
net.tcp.port[<IP>,<port>]
и запускать с его помощью[<IP>,<port>]
недоступен по таймауту TCPЗатем:
«Zabbix-агент на {HOST.NAME} недоступен» (выражение триггера: {agent.ping.nodata(2m)} = 1
) начать нерест на хостах с этим элементом. Не триггер для конкретного элемента, а триггер для доступность агента. Это ошибка, но ребята из zabbix, похоже, не согласны:
https://support.zabbix.com/browse/ZBX-10868
Zabbix версии 3.0.3 и для сервера, и для агента.
Возможные обходные пути:
UserParameter=tcp_connect_check[*], /bin/nc -z "$1" "$2" -w "$3"; echo $?
и создать элементы, время ожидания подключения меньше, чем в zabbix_agentd.conf. Чтобы избежать проблем, не включайте UnsafeUserParameters
в zabbix_agentd.conf