Как балансировка нагрузки / VIP работает с оверлейными сетями?
Я пытаюсь понять, как встроенный Docker балансировки нагрузки / VIP работает с оверлейными сетями. Чтобы лучше объяснить, как я это понимаю, я составил диаграмму. Я надеюсь, что кто-то может подтвердить или отклонить мое понимание.
Допустим, у меня в Docker Swarm работают две службы: webserver а также api, Обе эти две службы были масштабированы до двух экземпляров. Эти экземпляры выполняются на узлах A и B.
- Кто-то в мире делает запрос, который так или иначе поражает УЗЕЛ А.
iptablesна УЗЕ А будетDNATзапрос к ingress-sbox на УЗЕЛ A.-
ingress-sbox(давайте просто рассмотрим это как черный ящик) решает, что запрос должен идти к веб-серверу на узле B. -
ingress-sboxотправляет запрос по наложенному сетевому мосту "api", и запрос направляется черезvxlanтуннель к наложенному сетевому мосту "api" на узле B. - Контейнер веб-сервера на узле B получает запрос через оверлейный сетевой мост "api".
Это правильное понимание того, как входящие запросы будут проходить через оверлейную сеть?
... и дополнительный вопрос; что происходит, когда запрос поступает от webserver в api через балансировщик нагрузки ( ingress-sbox ). Будут ли запросы всегда сбалансированы по нагрузке ingress-sbox на том же хосте, откуда исходит запрос? Если это так, я предполагаю, что это означает, что запрос к VIP службы всегда направляется на ingress-sbox который работает на том же узле, что и запрос?
