9 Обслуживание

Обзор

Обслуживание используется для подавления проблем в заранее определенные периоды времени.

В Zabbix можно задавать периоды обслуживания для узлов сети и групп узлов сети.

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

Существует два типа обслуживания: Сбор данных и Без сбора данных.

Во время обслуживания типа Сбор данных триггеры обрабатываются как обычно, и при необходимости создаются события. Однако если в настройках действия отмечена опция Приостановить операции для подавленных проблем, эскалации проблем для узлов сети/триггеров в обслуживании будут приостановлены. В этом случае шаги эскалации, которые могут включать отправку уведомлений или удаленных команд, будут игнорироваться в течение всего периода обслуживания. Обратите внимание, что операции восстановления и обновления не подавляются во время обслуживания, подавляются только эскалации. Уведомления о восстановлении не отправляются, если проблема началась во время обслуживания.

Например, если шаги эскалации запланированы через 0, 30 и 60 минут после возникновения проблемы, а обслуживание длится полчаса — с 10-й по 40-ю минуту после фактического возникновения проблемы, — то второй и третий шаги будут выполнены на полчаса позже, то есть через 60 и 90 минут (при условии, что проблема все еще существует). Аналогично, если проблема возникает во время обслуживания, эскалация начнется после завершения обслуживания.

Чтобы получать уведомления о проблемах во время обслуживания в обычном режиме (без задержки), необходимо снять флажок Приостановить операции для подавленных проблем в настройках действия.

Если хотя бы один узел сети (используемый в выражении триггера) не находится в режиме обслуживания, Zabbix отправит уведомление о проблеме.

Сервер Zabbix должен быть запущен во время обслуживания. Периоды обслуживания пересчитываются каждую минуту или сразу после перезагрузки кэша конфигурации, если в периоде обслуживания произошли изменения.

Процессы таймера проверяют, нужно ли изменить статус узла сети на/с обслуживания, в 0 секунд каждой минуты. Кроме того, каждую секунду процесс таймера проверяет, нужно ли запускать/останавливать какие-либо периоды обслуживания на основе изменений в [периодах обслуживания] после обновления конфигурации. Таким образом, скорость запуска/остановки периодов обслуживания зависит от интервала обновления конфигурации (по умолчанию 10 секунд). Обратите внимание, что изменения периода обслуживания не включают настройки Активен с/Активен до. Также если узел сети/группа узлов сети добавляется в уже существующий активный период обслуживания, изменения будут активированы процессом таймера только в начале следующей минуты.

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

Обратите внимание, что сервер Zabbix (или прокси) всегда собирает данные независимо от типа обслуживания (включая обслуживание Без сбора данных). Позже сервер игнорирует эти данные, если задан режим Без сбора данных.

Когда обслуживание типа Без сбора данных заканчивается, триггеры, использующие функцию nodata(), не сработают до следующей проверки в течение периода, который они проверяют.

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

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

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

Конфигурация

Чтобы настроить период обслуживания:

  1. Перейдите в: Сбор данных > Обслуживание.
  2. Нажмите Создать период обслуживания (или на имя существующего периода обслуживания).
  3. Введите параметры обслуживания в форме.

Все обязательные поля ввода отмечены красной звездочкой.

Parameter Description
Name Имя периода обслуживания.
Maintenance type Можно задать два типа обслуживания:
Сбор данных - данные собираются сервером во время обслуживания, и триггеры обрабатываются;
Без сбора данных - данные все еще могут собираться, но во время обслуживания они не сохраняются в базу данных, и триггеры (включая функцию nodata()) не срабатывают.
См. Влияние периодов обслуживания, чтобы узнать, как каждый тип влияет на отчет о доступности.
Active since Дата и время, с которых выполнение периодов обслуживания становится активным.
Примечание: Установка только этого времени не активирует период обслуживания; периоды обслуживания должны быть настроены в Periods (см. ниже).
Active till Дата и время, до которых выполнение периодов обслуживания остается активным.
Periods Этот блок позволяет определить точные дни и часы, когда выполняется обслуживание. Нажатие открывает всплывающее окно с гибкой формой Maintenance period, где можно задать расписание обслуживания. Подробное описание см. в разделе Периоды обслуживания.
Host groups Выберите группы узлов сети, для которых будет активировано обслуживание. Обслуживание будет активировано для всех узлов сети из указанных групп узлов сети. Это поле поддерживает автодополнение, поэтому при вводе в нем будет отображаться выпадающий список всех доступных групп узлов сети.
Если указать родительскую группу узлов сети, автоматически будут выбраны все вложенные группы узлов сети. Таким образом, обслуживание также будет активировано для узлов сети из вложенных групп.
Hosts Выберите узлы сети, для которых будет активировано обслуживание. Это поле поддерживает автодополнение, поэтому при вводе в нем будет отображаться выпадающий список всех доступных узлов сети.
Tags Укажите теги для подавления проблем с совпадающими тегами на узлах сети в обслуживании.
Можно задать несколько условий. Сопоставление имен тегов всегда чувствительно к регистру.

Для каждого условия доступны два оператора:
Contains - включать указанные имена тегов, если значения тегов содержат введенную строку (поиск подстроки, чувствителен к регистру);
Equals - включать указанные имена и значения тегов (чувствительно к регистру).

Для условий доступны два типа вычисления:
And/Or - должны быть выполнены все условия, при этом условия с одинаковым именем тега будут сгруппированы по условию Or;
Or - достаточно выполнения одного условия.

Теги можно указать только если выбран тип обслуживания Сбор данных.
Description Описание периода обслуживания.
Периоды обслуживания

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

Тип периода Описание
Единовременно
(One time only)
Настройте одноразовый период обслуживания:
Дата (Date) — дата и время периода обслуживания;
Длительность периода обслуживания (Maintenance period length) — как долго будет активно обслуживание.
Ежедневно
(Daily)
Настройте ежедневный период обслуживания:
Каждый день(и) (Every day(s)) — частота обслуживания (1 (по умолчанию) — каждый день, 2 — каждые два дня и т.д.);
В (час:минута) (At (hour:minute)) — время суток начала обслуживания;
Длительность периода обслуживания (Maintenance period length) — как долго обслуживание будет активно.

Если параметр Каждый день(дни) больше «1», то начальным днём будет день, на который приходится время Активно с. Примеры:
- если Активно с установлено на «2021-01-01 12:00», Каждый день(дни) установлено на «2», а В (час:минута) установлено на «23:00», то первый период обслуживания начнётся 1 января в 23:00, а второй период обслуживания начнётся 3 января в 23:00;
- если Активно с установлено на «2021-01-01 12:00», Каждый день(дни) установлено на «2», а В (час:минута) установлено на «01:00», то первый период обслуживания начнётся 3 января в 01:00, а второй период обслуживания начнётся 5 января в 01:00.
Еженедельно
(Weekly)
Настройте еженедельный период обслуживания:
Каждую неделю(и) (Every week(s)) — частота обслуживания (1 (по умолчанию) — каждую неделю, 2 — каждую вторую неделю и т.д.);
День недели (Day of week) — в какой день недели обслуживание должно выполняться;
В (час:минута) (At (hour:minute)) — время суток начала обслуживания;
Длительность периода обслуживания (Maintenance period length) — как долго обслуживание будет активно.

Если параметр Каждую неделю(и) больше «1», то начальной неделей будет неделя, на которую приходится время Активно с. Примеры смотрите в описании параметра Ежедневно выше.
Ежемесячно
(Monthly)
Настройте ежемесячный период обслуживания:
Месяц (Month) — выберите все месяцы, в течение которых будет выполняться регулярное обслуживание;
Дата (Date): День месяца (Day of month) — выберите эту опцию, если обслуживание проводится в одно и то же число месяца (например, каждый 1-й день месяца), а затем выберите требуемое число в появившемся поле День месяца (Day of month).
Дата (Date): День недели (Day of week) — выберите эту опцию, если обслуживание проводится только в определенные дни недели (например, каждый первый понедельник месяца), а затем в выпадающем списке выберите требуемую неделю месяца (первая, вторая, третья, четвертая или последняя) и отметьте дни недели обслуживания;
В (час:минута) (At (hour:minute)) — время суток начала обслуживания.
Длительность периода обслуживания (Maintenance period length) — как долго обслуживание будет активно.

При создании периода обслуживания используется часовой пояс пользователя, который создает этот период обслуживания. Однако, в случае запланированных периодов обслуживания (Ежедневно, Еженедельно, Ежемесячно), используется часовой пояс Zabbix сервера. Чтобы поведение повторяющихся периодов обслуживания было предсказуемым, необходимо использовать общий часовой пояс для всех компонентов Zabbix.

Когда закончите, нажмите Add, чтобы добавить период обслуживания в блок Periods.

Обратите внимание, что изменения времени на летнее/зимнее время (DST) не влияют на продолжительность обслуживания. Например, предположим, что у нас настроено двухчасовое обслуживание, которое обычно начинается в 01:00 и заканчивается в 03:00:

  • если после одного часа обслуживания (в 02:00) происходит переход на летнее/зимнее время и текущее время меняется с 02:00 на 03:00, обслуживание продолжится еще один час (до 04:00);
  • если после двух часов обслуживания (в 03:00) происходит переход на летнее/зимнее время и текущее время меняется с 03:00 на 02:00, обслуживание завершится, поскольку прошло два часа;
  • если период обслуживания начинается в час, который пропускается из-за перехода на летнее/зимнее время, то обслуживание не начнется.

Если период обслуживания задан как "1 day" (фактическая продолжительность обслуживания составляет 24 часа, поскольку Zabbix рассчитывает дни в часах), начинается в 00:00 и заканчивается в 00:00 следующего дня:

  • обслуживание завершится в 01:00 следующего дня, если текущее время сдвинется вперед на один час;
  • обслуживание завершится в 23:00 этого дня, если текущее время сдвинется назад на один час.

Просмотр

Отображение узлов сети в обслуживании

Значок с оранжевым гаечным ключом вблизи имени узла сети означает, что этот узел сети находится в обслуживании в следующих разделах:

  • Панели (Dashboards)
  • Мониторинг → Проблемы (Monitoring → Problems)
  • Инвентаризация → Узлы сети → Детали инвентарных данных узла сети (Inventory → Hosts → Host inventory details)
  • Сбор данных → Узлы сети (Data collection → Hosts) (Смотрите столбец «Состояние (Status)»)

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

Кроме этого, у узлов сети в обслуживании появляется оранжевый фон в Мониторинг → Карты сети (Monitoring → Maps).

Отображение подавленных проблем

Обычно проблемы с узлов сети в обслуживании подавляются, то есть не отображаются в веб-интерфейсе. Однако, можно настроить и так, чтобы при выборе опции Отображение подавленных проблем (Show suppressed problems) подавленные проблемы отображались в следующих местах:

  • Панели (Dashboards) (при настройке виджетов Узлы сети с проблемами, Проблемы, Проблемы по важности, Обзор триггеров)
  • МониторингПроблемы (MonitoringProblems) (в фильтре)
  • МониторингКарты сети (MonitoringMaps) (в настройках карты)
  • Глобальные оповещения (в настройках профиля пользователя)

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

Расчёт очередей во время обслуживания

Очереди, отображаемые в веб-интерфейсе Zabbix (Администрирование → Очередь (Administration → Queue)), рассчитываются Zabbix сервером. Они не включают элементы данных, находящиеся в режиме обслуживания Без сбора данных — для этих элементов данных длина очереди всегда равна нулю, даже если их значения задерживаются. Задержанные элементы данных в режиме обслуживания Со сбором данных по-прежнему учитываются в очереди.

Zabbix прокси не знает о периодах обслуживания, поскольку конфигурация обслуживания не синхронизируется между Zabbix сервером и прокси. Внутренние проверки, посчитанные на Zabbix прокси (например, zabbix[queue,,] и zabbix[stats,,,queue,,]), сообщают о задержанных элементах данных независимо от состояния обслуживания на Zabbix сервере.

В результате для одних и тех же элементов данных в режиме обслуживания Без сбора данных веб-интерфейсом Zabbix и внутренними проверками на Zabbix прокси могут сообщаться разные длины очередей.