INTEGRITY Документация

Группы мониторов

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

Вы можете объединить несколько мониторов, чтобы создать более сложную проверку работоспособности, точнее отражающую реальное состояние вашего приложения. Monitor Group позволяет объединить несколько независимых мониторов, задать логику агрегации и использовать общий результат для определения работоспособности пула источников.

Группировка нескольких мониторов состояния делает отказоустойчивость более интеллектуальной и надёжной. Например, можно потребовать, чтобы для получения трафика пулом были работоспособны сразу два монитора: монитор общего API-шлюза и монитор конкретного сервиса входа.

Доступность

Группы мониторов доступны только клиентам на тарифе Enterprise с подпиской на балансировку нагрузки.

Настройка доступна через API только.

Как это работает

Когда к пулу привязана Monitor Group, работоспособность этого пула определяется путем агрегирования результатов всех включенных мониторов в составе группы.

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

Работоспособность эндпоинтов при использовании групп мониторов

Monitor Group определяет состояние конечной точки, используя сочетание критических переопределений монитора и консенсуса на основе кворума.

Critical Monitor Override (must_be_healthy): Вы можете назначить монитор критическим, установив "must_be_healthy": true. Если монитор с этим параметром не проходит проверку работоспособности конечной точки, эта конечная точка немедленно помечается как неработоспособная. Это происходит независимо от статуса, который сообщают другие мониторы в группе для той же конечной точки. Это обеспечивает безусловный приоритет для критически важных служб.

Quorum-Based Health: при отсутствии сбоя со стороны must_be_healthy монитора, работоспособность конечного узла определяется кворумом всех остальных активных мониторов.

Эта система кворума не позволяет преждевременно пометить конечную точку как неисправную из-за временного сбоя одного некритичного монитора.

Задержка для распределения трафика

Для пулов, использующих Dynamic Steering, задержка пула рассчитывается как средняя задержка по всем включённым мониторам, которые не работают в режиме monitoring only. Это агрегированное значение RTT (Round Trip Time) даёт более полное представление о производительности источника и используется при принятии решений о маршрутизации.

Обработка результатов для разных интервалов

Если мониторы в группе имеют разные интервалы проверки, группа использует последний доступный результат каждого монитора до его обновления. Например, если один монитор выполняется каждые 10 секунд, а другой каждые 30 секунд, результат 30-секундного монитора считается действительным в течение всех 30 секунд, пока не завершится его следующий запуск.