сервис docker swarm с использованием того же VIP

Мы запускаем докер версии 17.06.0-ce, и я новичок в докере (в настоящее время изучаю его на лету с небольшими знаниями / опытом в сети / Linux).

Одна из наших сред - это запуск одного менеджера и рабочего. Мы наблюдаем следующие два сценария: - службам назначается используемый виртуальный IP-адрес, и служба не запускается из-за ошибки «Адрес уже используется». - сервис запускается и использует тот же VIP, что и другой сервис. Это можно увидеть в диспетчере "docker service inspect". Это приводит к тому, что nginx отправляет запросы не в тот сервис (это можно увидеть в журналах).

Несколько вопросов: 1) Кто-нибудь сталкивался с таким? 2) как docker swarm решает, какой VIP назначить? 3) Как докер узнает, какой VIP использовать в многопользовательской среде? Причина, по которой я спрашиваю, заключается в том, что в среде с одним менеджером / рабочим вы можете увидеть VIP на диспетчере «проверка службы докеров» такая же, как и у рабочего «проверка сети докеров на входе», но в среде с несколькими диспетчерами / рабочими все VIP - это все другой.


person user7786267    schedule 28.12.2017    source источник


Ответы (1)


на мой взгляд, вы не должны использовать VIP. Вам нужно работать только с названием сервисов, а docker swarm будет управлять балансировкой нагрузки.

person Kilian    schedule 28.12.2017
comment
Я не использую VIP. Это то, что я вижу внутри докера. Я использую NGINX, отправляющий трафик в службу через DNS: порт. - person user7786267; 28.12.2017
comment
Но VIP определены в файлах конфигурации, или Nginx назначает только VIP - person Kilian; 28.12.2017
comment
Эталонная архитектура Docker: проектирование масштабируемых переносимых сетей контейнеров Docker Состояния Внутренняя балансировка нагрузки - это создается автоматически при создании служб Docker. Когда службы создаются в кластере Docker Swarm, им автоматически назначается виртуальный IP-адрес (VIP), который является частью сети службы. VIP возвращается при разрешении имени службы. под заголовком Docker Native Load Balancing - person user7786267; 03.01.2018
comment
Похоже, что это ошибка докера согласно github.com/moby/moby/issues/34163 - person user7786267; 03.01.2018