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

Мониторы

Монитор с определённым интервалом отправляет запросы проверки состояния, чтобы оценить работоспособность каждой конечной точки в пул.

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

    flowchart RL
      accTitle: Load balancing monitor flow
      accDescr: Monitors issue health monitor requests, which validate the current status of servers within each pool.
      Monitor -- Health Monitor ----> Endpoint2
      Endpoint2 -- Response ----> Monitor
      subgraph Pool
      Endpoint1((Endpoint 1))
      Endpoint2((Endpoint 2))
      end

Запросы монитора работоспособности, которые приводят к изменению статуса конечной точки, записываются как события в журналах событий Load Balancing.


Свойства

Актуальный список свойств монитора приведён в Свойства монитора в нашей документации по API.


Создание мониторов

Пошаговые инструкции приведены в Создание мониторов.

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

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


Регионы монитора работоспособности

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

Для каждого варианта, выбранного в поле пула Регионы монитора работоспособности, Cloudflare отправляет запросы монитора работоспособности из трёх отдельных дата-центров в этом регионе.

Запросы монитора работоспособности поступают из трёх дата-центров в каждом выбранном регионе.

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

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

Все дата-центры (только Enterprise)

Зонды монитора работоспособности отправляются из каждого дата-центра сети Cloudflare к конечным точкам связанного пула. Благодаря этому зонды достигают каждой конечной точки с интервалом, заданным клиентом.

Все регионы (только Enterprise)

На каждую конечную точку связанного пула из каждого региона отправляется по три пробы монитора состояния. Всего регионов 13, поэтому общее количество проб составляет 39.

Regional

Из каждого указанного региона в конфигурации пула отправляется три пробы монитора состояния.


Поведение зондов IPv4 и IPv6

По умолчанию зонды монитора работоспособности используют IPv4. Зонды IPv6 отправляются только в том случае, если у адреса конечной точки нет A записи (только AAAA). Каждая конечная точка получает один запрос проверки за интервал: Cloudflare не проверяет одновременно IPv4 и IPv6 для одной и той же конечной точки.

Чтобы принудительно выполнять проверки по IPv6, укажите в качестве адреса конечной точки либо чистый IPv6-адрес, либо имя хоста, у которого есть только AAAA записи.


Приоритизация заголовка Host

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

Если заголовок Host указан одновременно и в мониторе, и в конечной точке, приоритет получает заголовок Host, настроенный в конечной точке, а не тот, что настроен в мониторе.

Если заголовок Host не указан, Cloudflare использует Endpoint Address настроенное на конечных точках в качестве заголовка host для запросов монитора проверки работоспособности.

Подробнее см. в Переопределение HTTP-заголовков Host.


Команды API

Cloudflare API поддерживает следующие команды для мониторов. Примеры приведены для конечной точки уровня пользователя, но применимы и к конечной точке уровня аккаунта.

Команда Метод Конечная точка
Создание монитора POST accounts/:account_id/load_balancers/monitors
Delete Monitor DELETE accounts/:account_id/load_balancers/monitors/:id
List Monitors GET accounts/:account_id/load_balancers/monitors
Сведения о мониторе GET accounts/:account_id/load_balancers/monitors/:id
Перезаписать отдельные свойства PATCH accounts/:account_id/load_balancers/monitors/:id
Перезаписать существующий монитор PUT accounts/:account_id/load_balancers/monitors/:id
Preview Monitor POST accounts/:account_id/load_balancers/monitors/:id/preview

Поддерживаемые протоколы

В следующей таблице приведены типы мониторов, доступных в Cloudflare Load Balancing, их методы мониторинга, а также то, как каждая проверка состояния оценивает критерии успешности для определения исправности конечной точки:

Тип монитора Тип мониторинга Описание Процесс проверки работоспособности Критерии успеха
HTTP/HTTPS Публичный и приватный Используется для конечных точек HTTP и HTTPS с определёнными атрибутами протокола. Для проверки настраиваются параметры и критерии успешности, такие как Method, Simulate Zone, Follow Redirects, Request Headers и Response Body. Затем проверка оценивает заданные критерии успешности по протоколу HTTP. На протяжении всего заданного времени ожидания TCP-соединение поддерживается активным с помощью keep-alive, даже если ответ не получен. Успешность определяется соответствием заданным критериям успеха HTTP. Отсутствие ответа в течение настроенного времени ожидания и числа повторов считается признаком неработоспособности.
TCP Публичный и приватный Проверяет доступность по TCP, пытаясь открыть соединение с конечной точкой. Монитор отправляет сообщение TCP SYN на указанный порт. Для успешной проверки состояния требуется получить сообщение SYN/ACK, устанавливающее соединение. Соединение закрывается отправкой пакета FIN или RST либо получением пакета FIN от конечной точки. Если TCP-соединение не удаётся установить в течение настроенного времени ожидания и числа повторных попыток, эндпоинт считается неработоспособным.
ICMP Ping Публичный и Tunnel Проверяет базовую связность на уровне 3 (L3) с конечной точкой с помощью ICMP. Конечным точкам должно быть разрешено отвечать на пакеты ICMP, а всё промежуточное сетевое оборудование должно поддерживать ICMP. Монитор отправляет эхо-запрос ICMP/ICMPv6 (ping) и ожидает эхо-ответ ICMP/ICMPv6 от конечной точки. Чтобы считаться исправной, конечная точка должна отвечать на ICMP ping в течение заданного времени ожидания и числа повторов.
UDP-ICMP Публичный и Tunnel Монитор UDP-ICMP отправляет пробный UDP-пакет после того, как монитор ICMP Ping определяет состояние как работоспособное. После получения успешного ответа ICMP монитор отправляет конечной точке пробный пакет UDP. Если сообщение ICMP Port Unreachable не получено, конечная точка считается работоспособной. Если в течение настроенного тайм-аута и количества повторных попыток монитор получает сообщение ICMP Port Unreachable, конечная точка считается нерабочей.
SMTP Общедоступный Проверяет доступность SMTP на уровне приложения. Монитор устанавливает TCP-соединение и отправляет команду SMTP HELO, ожидая ответа с кодом 250. Затем он отправляет команду SMTP QUIT, ожидая ответа с кодом 221. В конце каждого интервала TCP-соединение закрывается отправкой пакета TCP FIN. Чтобы считаться исправной, конечная точка должна отвечать правильными кодами SMTP (250 для HELO, 221 для QUIT) в течение заданного времени ожидания и числа повторов.