11. Настройки недостижимости/недоступности интерфейса узла сети

Обзор

Несколько параметров конфигурации parameters определяют, как должен вести себя сервер Zabbix, когда проверка агента (Zabbix, SNMP, IPMI, JMX) завершается неудачей и интерфейс узла сети становится недоступным.

Недоступный интерфейс

Интерфейс узла сети считается недоступным после неудачной проверки (ошибка сети, тайм-аут) агентами Zabbix, SNMP, IPMI или JMX. Начиная с Zabbix 6.2.0, активные проверки агента Zabbix также влияют на доступность интерфейса. Когда активные проверки становятся недоступными, они учитываются в общем статусе доступности интерфейса агента.

С момента, когда интерфейс становится недоступным, UnreachableDelay определяет, как часто он перепроверяется с использованием одного из элементов данных (включая правила LLD). Эти повторные проверки выполняются опросчиками недоступных узлов (или IPMI-опросчиками для проверок IPMI). По умолчанию интервал между последовательными проверками доступности составляет 15 секунд.

Проверки, выполняемые асинхронными опросчиками, не переносятся к опросчикам недоступных узлов.

В журнале сервера Zabbix недоступность обозначается сообщениями вроде:

Zabbix agent item "system.cpu.load[percpu,avg1]" on host "New host" failed: first network error, wait for 15 seconds
Zabbix agent item "system.cpu.load[percpu,avg15]" on host "New host" failed: another network error, wait for 15 seconds

Сообщения журнала указывают точный элемент данных, который не прошел проверку, и его тип (агент Zabbix).

Параметр Timeout также влияет на то, как рано интерфейс будет перепроверен во время недоступности. Если Timeout установлен в 20 секунд, а UnreachableDelay — в 30 секунд, следующая проверка будет через 50 секунд после первой попытки.

Параметр UnreachablePeriod определяет общую продолжительность периода недоступности. По умолчанию UnreachablePeriod равен 45 секундам. Это значение должно быть в несколько раз больше, чем UnreachableDelay, чтобы обеспечить многократную перепроверку интерфейса до того, как он будет помечен как недоступный.

Внутренний элемент данных zabbix[host,active_agent,available] позволяет отслеживать доступность активных проверок в сценариях недоступности.

Перевод интерфейса обратно в доступное состояние

По окончании периода недостижимости интерфейс опрашивается заново, со снижением приоритета элемента данных, который перевел интерфейс в недостижимое состояние. Если устанавливается связь с интерфейсом, который был недостижимым, мониторинг автоматически возвращается к норме:

resuming Zabbix agent checks on host "New host": connection restored

После того как интерфейс становится доступным, опрос всех элементов данных немедленно не осуществляется узлом сети по двум причинам:

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

Поэтому, когда интерфейс становится доступным, опрос элементов данных производится не сразу, а перепланируется в соответствии с расписанием их следующих проверок.

Недоступный интерфейс

После того как UnreachablePeriod завершился, а интерфейс так и не стал доступным, он считается недоступным.

В журнале сервера это обозначается записями такого рода:

temporarily disabling Zabbix agent checks on host "New host": interface unavailable

При этом в веб-интерфейсе иконка доступности узла сети меняет свой цвет с зеленого/серого на желтый/красный (при наведении указателя мыши на иконку доступности узла сети можно видеть информацию о недоступности интерфейса):

Параметр UnavailableDelay определяет, как часто интерфейс проверяется повторно в течение его недоступности.

По умолчанию — раз в 60 секунд (таким образом, в этом случае «temporarily disabling» из файла журнала выше будет означать деактивацию проверок сроком на одну минуту).

Когда соединение c интерфейсом будет восстановлено, мониторинг тоже автоматически вернётся к норме:

enabling Zabbix agent checks on host "New host": interface became available