Docker SWARM - Оверлейная сеть видимости - PullRequest
0 голосов
/ 03 марта 2020

Я настроил среду с двумя установками docker (хосты).

Я включил SWARM и создал службу с двумя репликами одного и того же веб-приложения, сопоставляя ведущий-хост http / https порты в контейнеризованные порты приложения.

Как и ожидалось, на каждом хосте создается один контейнер, и каждый HTTP-запрос правильно распределяется между контейнерами благодаря оверлейной сети, созданной Swarm.

В моем приложении мне нужны контейнеры для связи (через https / soap) с другим веб-сервером, все еще не в контейнере. Этот вторичный веб-сервер должен принимать soap звонков, а затем отвечать другим звонком SOAP на cantainer, который отправляет запрос, асинхронным способом.

По этой причине мне нужно вторичное веб-приложение напрямую отправлять запросы в указанный контейнер c. Чтобы сделать это, я подумал использовать оверлейную сеть (созданную пользователем): таким образом каждому контейнеру в кластере будет назначен свой IP-адрес.

Проблема, с которой я сталкиваюсь, заключается в том, что я не могу найти какой-либо способ позволить вторичному веб-приложению (находящемуся в локальной сети компании в той же подсети хостов docker) достичь оверлейной сети, чтобы обратиться к указанному c контейнеру с его IP-адресом оверлея.

Вот изображение, которое пытается прояснить сценарий: проблема отмечена красными стрелками:

Сценарий

Есть идеи?

Спасибо много заранее

...