Обзор зависимости триггера
В некоторых случаях доступность одного узла зависит от другого. Если маршрутизатор выйдет из строя, сервер, расположенный за ним, станет недоступным.
Если для обоих узлов настроены триггеры, то вы можете получать уведомления о недоступности обоих узлов, хотя проблема может быть связана только с маршрутизатором.
В такой ситуации может быть актуально наличие связи между узлами сети. Если такая связь есть, то уведомления о зависимых узлах сети могут не отправляться, а будет отправляться только информация о главной проблеме.
Хотя Glaber не предоставляет возможности для непосредственного определения зависимостей между узлами сети, существует альтернативный способ — использование зависимостей триггеров. Триггер может быть связан с одним или несколькими другими триггерами.
В этом простом примере мы открываем форму конфигурации триггера сервера и указываем, что он зависит от определённого триггера маршрутизатора. В такой ситуации триггер сервера не будет менять своё состояние, пока триггер, от которого он зависит, находится в состоянии «ПРОБЛЕМА». Это означает, что зависимые действия не будут выполняться и уведомления не будут отправляться.
В случае, когда и сервер, и маршрутизатор находятся в нерабочем состоянии, а между ними существует взаимосвязь, Glaber не будет выполнять операции для зависимого триггера.
Если родительский триггер находится в состоянии «ПРОБЛЕМА», его дочерние триггеры могут выдавать ненадёжные значения. По этой причине дочерние триггеры не будут проходить повторную проверку до тех пор, пока родительский триггер (маршрутизатор в данном примере) не будет восстановлен:
- Преобразуется из статуса «ПРОБЛЕМА» в статус «ОК»;
- Меняет своё состояние с «ПРОБЛЕМА» на «НЕИЗВЕСТНО»;
- Закрывается вручную, по корреляции или с помощью функций, которые основаны на времени;
- Разрешается значением элемента данных, который не участвует в зависимом триггере;
- Отключён, имеет отключённый элемент данных или узел отключённого элемента данных.
В описанных ситуациях зависимый триггер (сервер) будет повторно оцениваться только при получении новых данных о нём. Это означает, что зависимый триггер может быть обновлён не сразу.
В некоторых случаях доступность одного узла сети зависит от другого. Если маршрутизатор выйдет из строя, сервер, находящийся за ним, станет недоступным. Если триггеры настроены для обоих узлов, вы можете получать уведомления о недоступности обоих узлов, хотя проблема может быть связана только с маршрутизатором.
В такой ситуации может быть актуально наличие связи между узлами сети. Если такая связь есть, то сообщения о проблемах с зависимыми узлами сети могут не приходить, а будет приходить только информация о главной проблеме.
Хотя Glaber не предоставляет возможность напрямую указывать зависимости между узлами сети, существует альтернативный способ — использование триггеров. Триггер может зависеть от одного или нескольких других триггеров.
В этом примере мы рассмотрим, как настроить зависимость триггера сервера от триггера маршрутизатора. Если такая зависимость установлена, то триггер сервера не будет активироваться, пока триггер маршрутизатора находится в состоянии «ПРОБЛЕМА». Это означает, что зависимые действия не будут выполняться, а уведомления не будут отправляться.
В случае, когда и сервер, и маршрутизатор недоступны, а между ними существует связь, Glaber не будет выполнять действия, связанные с зависимым триггером.
Пока родительский триггер находится в состоянии «ПРОБЛЕМА», его дочерние триггеры могут выдавать недостоверные данные. Поэтому дочерние триггеры не будут повторно проверяться, пока родительский триггер (в данном случае маршрутизатор) не будет исправлен.:
- Состояние меняется с «ПРОБЛЕМА» на «ОК» или «НЕИЗВЕСТНО»;
- Закрывается вручную, по корреляции или с помощью функций, которые зависят от времени;
- Разрешается значением элемента данных, который не задействован в зависимом триггере;
- Отключён, имеет отключённый элемент данных или узел отключённого элемента данных.
В описанных выше ситуациях зависимый триггер (сервер) будет пересчитан только после получения новой информации о нём. Это значит, что зависимый триггер может быть обновлён не сразу. Также:
- Зависимость триггера может быть добавлена от любого триггера узла сети к любому другому триггеру узла сети, если это не приведёт к циклической зависимости;
- Зависимость триггера может быть добавлена из одного шаблона в другой. Если какой-то триггер из шаблона A зависит от какого-то триггера из шаблона B, шаблон A может быть связан с узлом сети (или другим шаблоном) только вместе с шаблоном B, но шаблон B может быть связан с узлом сети (или другим шаблоном) отдельно;
- Зависимость триггера может быть добавлена из триггера шаблона в триггер узла сети. В этом случае при связывании такого шаблона с узлом сети будет создан триггер узла сети, который зависит от того же шаблона триггера, от которого зависел сам триггер. Это позволяет, например, создать шаблон, в котором некоторые триггеры зависят от триггеров маршрутизатора (узла сети). Все узлы сети, связанные с этим шаблоном, будут зависеть от этого конкретного маршрутизатора;
- Зависимость триггера не может быть добавлена из триггера узла сети в триггер шаблона;
- Зависимость триггера может быть добавлена от прототипа триггера к другому прототипу триггера (в рамках того же правила низкоуровневого обнаружения) или к реальному триггеру. Прототип триггера не может зависеть от прототипа триггера из другого правила LLD или от триггера, созданного на основе прототипа триггера. Прототип триггера узла сети не может зависеть от триггера из шаблона.
Настройка зависимости триггера
Для того, чтобы указать зависимость необходимо в настройках триггера перейти во вкладку "Зависимость" и нажать на кнопку "Добавить" (Рисунок 1).
Рисунок 1 — Выбор зависимости
Далее появится окно, в котором нужно выбрать "Триггер". Если список окажется пустым, то необходимо указать "Узел сети", нажав на кнопку "Выбрать" (Рисунок 2).
Рисунок 2 — Выбор "Узел сети"
Затем в данном окне нужно выбрать "Узел сети", но список может оказаться также пустым. Поэтому необходимо указать "Группу узлов сети", нажав на кнопку "Выбрать" и из предложенного списка выбрать группу узлов. Теперь выбираем нужный узел сети (Рисунок 3).
Рисунок 3 — Выбор "Группа узлов"
После этого, Вы вернетесь к предыдущему шагу, где нужно выбрать "Триггер". Теперь у Вас отобразиться список триггеров, которые можно выбрать (Рисунок 4).
Рисунок 4 — Выбор триггеров для зависимости