upsync_lb

Директива `upsync_lb` настраивает поведение балансировки нагрузки для upstream‑серверов, синхронизирующих данные из реестров сервисов бэкенда, таких как Consul или etcd.

Синтаксисupsync_lb number;
По умолчаниюnone
Контекстupstream
Аргументы1

Описание

Директива upsync_lb используется внутри блока upstream для указания того, как следует осуществлять балансировку нагрузки при синхронизации конфигураций upstream‑серверов из внешних реестров сервисов, таких как Consul или etcd. При включении она инструктирует сервер NGINX динамически поддерживать актуальные атрибуты серверов бэкенда без необходимости перезагрузки сервера. Это включает такие свойства, как вес сервера и параметры максимального числа отказов. Она помогает оптимизировать управление трафиком во время выполнения, облегчая автоматические корректировки на основе реальной доступности сервисов и метрик производительности.

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

Пример конфига

upstream test {
    upsync 127.0.0.1:8500/v1/kv/upstreams/test/ upsync_timeout=6m upsync_interval=500ms upsync_type=consul strong_dependency=off;
    upsync_lb 1;
    upsync_dump_path /usr/local/nginx/conf/servers/servers_test.conf;

    include /usr/local/nginx/conf/servers/servers_test.conf;
}

Убедитесь, что метод балансировки нагрузки совместим с вашим бэкенд-сервисом и характером трафика.

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

Не все стратегии балансировки нагрузки могут поддерживаться при настройке upsync. Проверьте документацию модуля.

← Ко всем директивам