Докер в режиме Swarm с несколькими узлами (экземпляры Google Cloud разных учетных записей) проблема с балансировкой нагрузки роя - PullRequest
0 голосов
/ 27 сентября 2019

Я пытаюсь соединить два экземпляра Google Cloud Ubuntu 18.04 с разными учетными записями.Общедоступный IP-адрес менеджера: 34.70.147.44 и общедоступный IP-адрес работника: 35.232.93.193

На ведущем устройстве: docker swarm init --advertise-addr 34.70.147.44

На рабочем устройстве: присоединение docker swarm --advertise-addr 35.232.93.193 - token SWMTKN-1-063osuumpl1ci5auaaa8t49y00e9pqecgjcx6fnm2m5hd3uef6-bxs1aa4ay03c4453jz950xwej 34.70.147.44 - только для репликации, с приложением 7.1, с разрешением 100%, с развертыванием одного приложения, затем с использованием 100-процентной репликации, затем с приложением 7.1, в котором используется только одно приложение:4).

Я вижу, что контейнеры созданы (два контейнера в каждом узле).Но когда я нажимаю на URL с помощью curl или браузера, используя эти публичные IP-адреса, я вижу это:

curl http://34.70.147.44:8081/ ---> каждый раз, давая имя хоста для контейнеров (в циклическом порядке), развернутыхв главных узлах.

curl http://35.232.93.193:8081/ ---> каждый раз, давая имя хоста контейнеров (в циклическом порядке), развернутых в рабочих узлах.

Проблема: Но я ожидал вывода, что при нажатии на любой из этих URL-адресов я должен получить имена хостов всех 4-х контейнеров в порядке круговой разбивки.

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

К вашему сведению, я получаю ожидаемый результат, когда подключаю два экземпляра Google Cloud Ubuntu 18.04 к одной учетной записи (используя внутренние IP-адреса).

Может кто-нибудь объяснить, почему это не так?работает, а решение для этого?

version: '3'
services:
    php:
        image: php:7.1-apache
        ports:
            - 8081:80
        volumes:
            - /home/gaurav/dockers/swarm/.data/php:/var/www/html
        deploy:
          replicas: 4
        networks:
          - frontend
networks:
  frontend:
...