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

Сброс нагрузки

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

После настройки Load Shedding для пула этот пул начнёт перенаправлять трафик на другие пулы в соответствии с параметрами Load Shedding и политика маршрутизации.

Шаг 1. Определите конечные точки под угрозой

Используя собственные внутренние метрики, определяйте конечные точки, которые рискуют достичь порога отказа.

Шаг 2. Отбросьте трафик по умолчанию из пула

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

Настройте load shedding через панель управления или API.

Настройка через панель управления

Чтобы включить сброс нагрузки для конкретного пула на панели управления:

  1. Перейдите в Load Balancing.
  2. Выберите Пулы на вкладке.
  3. В пуле выберите Изменить.
  4. Откройте Настройте Load Shedding в раскрывающемся списке.
  5. Для Трафик по умолчанию, выберите Политика и Сброс, %:

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

При отведении Трафик по умолчанию, у вас есть два Политика опции:

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

Сброс, %

При выборе Сброс, %, начните с небольшого процента и постепенно увеличивайте его. Особенно если вы выбираете Политика вытеснения трафика IP hash, вы можете отклонить больше трафика, чем ожидалось.

Настройка через API

Чтобы включить сброс нагрузки для конкретного пула через API, обновите значения для параметра пула load_shedding объект.

Пример запроса

Запрос
curl --request PATCH \
"https://api.cloudflare.com/client/v4/accounts/{account_id}/load_balancers/pools/{pool_id}" \
--header "Authorization: Bearer <API_TOKEN>" \
--header "Content-Type: application/json" \
--data-binary '{
  "load_shedding": {
    "default_percent": 20,
    "default_policy": "random",
    "session_percent": 0,
    "session_policy": "hash"
  }
}'

Рекомендации по выбору политики отключения нагрузки приведены в Политики сброса нагрузки.

Шаг 3. Отслеживайте трафик

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

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

Шаг 4. Отбросьте дополнительный трафик (необязательно)

Если вам нужно отсечь дополнительный трафик пула:

  1. Выполните шаги, описанные в Шаг 2.
    • В дашборде увеличьте значение параметра Сброс, % для Трафик по умолчанию и/или Трафик с привязкой сессий.
    • Для API увеличьте значение параметра default_percent и/или session_percent.

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

Шаг 5. Отключите сброс нагрузки

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

Чтобы отключить сброс нагрузки в дашборде, выполните те же действия, что и Настройте load shedding через панель управления но задайте Сброс, % к 0 для обоих Трафик по умолчанию и Трафик с привязкой сессий.

Чтобы отключить сброс нагрузки через API, выполните те же действия, что и Настройте load shedding через API но задайте load_shedding объект на null.

Дополнительные примечания

Политики сброса нагрузки

Для Трафик по умолчанию, у вас есть два варианта политики отклонения трафика.

A Random политика:

Одна IP hash политика:

Выберите Random политику, если вам нужно более точное распределение исходных запросов и IP hash политику, если вы хотите предотвратить переключение одного IP-адреса между разными конечными узлами.

Для Трафик Session Affinity, можно использовать только IP hash политику, так как эти запросы относятся к существующим сеансам. Увеличивайте только Сброс, % если вы готовы допустить нарушение работы существующие сеансы.

Резервные пулы

Если все пулы в балансировщике нагрузки имеют Сброс нагрузки включена, часть трафика будет направляться в резервный пул. Чтобы весь трафик не попадал в резервный пул, убедитесь, что хотя бы один пул балансировщика нагрузки does not включён сброс нагрузки.

Пулы в нескольких балансировщиках нагрузки

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