11. Обслуживание

Обзор

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

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

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

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

В течение обслуживания Со сбором данных триггеры обрабатываются как обычно и, если потребуется, создаются события. Однако, если в настройках действия выбрана опция Приостановить операции для подавленных проблем (Pause operations for suppressed problems), то эскалации о проблемах будут поставлены на паузу для узлов сети/триггеров в обслуживании. В этом случае шаги эскалаций, которые могут включать отправку оповещений или удалённые команды, будут игнорироваться до тех пор, пока не завершится период обслуживания. Обратите внимание, что операции восстановления и обновления не подавляются в процессе обслуживания, только эскалации.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Теги можно указать только если выбран тип обслуживания With data collection.
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) — как долго обслуживание будет активно.

При создании периода обслуживания используется часовой пояс пользователя, который его создает. Однако при планировании повторяющихся периодов обслуживания (Daily, Weekly, Monthly) используется часовой пояс сервера 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 прокси могут сообщаться разные длины очередей.