Консульская балансировка нагрузки север-юг трафика

Я пытаюсь запустить некоторые из моих микросервисов в сети consul service. Согласно документации консула, ясно, что консул заботится о маршрутизации, балансировке нагрузки и обнаружении служб. Но в их документации также говорится о сторонних балансировщиках нагрузки, таких как NGINX, HAProxy и F5.

https://learn.hashicorp.com/collections/consul/load-balancing

Если consul позаботится о балансировке нагрузки, то какова цель этих балансировщиков нагрузки.

Мои предположения,

  1. Эти балансировщики нагрузки должны заменить встроенную технику балансировки нагрузки consul, но LB по-прежнему использует данные обнаружения службы consul. (Зачем это кому-то !!!)

  2. Consul обеспечивает только балансировку нагрузки для трафика восток-запад (в пределах служебной сети). Чтобы сбалансировать нагрузку трафика север-юг (интернет-трафик), нам нужны внешние балансировщики нагрузки.

Пожалуйста, дайте мне знать, какое из моих предположений верно


person Jawahar    schedule 26.04.2021    source источник


Ответы (2)


Сервисная сетка Consul по умолчанию использует прокси-сервер Envoy для балансировки нагрузки между восток-западом и севером-югом для соединений внутри сетки. В то время как трафик с востока на запад направляется через дополнительный прокси-сервер, соединения с севера на юг проходят через экземпляр Envoy, который настроен для работы как входной шлюз.

Помимо встроенного в Consul Envoy ingress, Consul также поддерживает интеграцию с другими прокси и шлюзы API. Их можно использовать, если вам требуются функциональные возможности, которых нет в исходном предложении для входящего трафика.

Сторонние прокси-серверы используют каталог услуг Consul, чтобы заполнить свои серверные / вышестоящие пулы участников информацией о конечных точках от Consul. Это позволяет прокси-серверу всегда иметь актуальный список исправных и доступных служб в центре обработки данных и устраняет необходимость вручную перенастраивать прокси-сервер север-юг при добавлении / удалении конечных точек служб.

Некоторые шлюзы, такие как Ambassador, F5 и (скоро) Traefik (см. PR https://github.com/traefik/traefik/pull/7407) сделать еще один шаг, интегрировавшись с сервисной сеткой (см. Подключение настраиваемой интеграции прокси-сервера), чтобы они могли использовать mTLS при подключении к серверным службам.

person Blake Covarrubias    schedule 29.04.2021

Я проконсультировался с одним из моих коллег (полное раскрытие информации: я работаю в F5), и он упомянул, что, хотя использование внешних сервисов для балансировки нагрузки не является техническим требованием, во многих организациях уже есть инфраструктура, а также операционная требования, политики и процедуры, которые к нему прилагаются.

Для некоторых примеров того, как Consul может работать с пограничными службами, такими как F5 BIG-IP, вот пара статей, которые могут вас заинтересовать, которые могут предоставить контекст для вашего вопроса.

person Jason Rahm    schedule 28.04.2021