2016-10-04 4 views
0

Прежде чем задать этот вопрос, я прочитал тишину статей и вопросов stackoverflow, но я не смог получить правильный ответ для моей настройки (возможно, это уже ответили). Вот архитектура, с которой я изо всех сил пытаюсь заставить ее работать.Как настроить многоуровневую сеть с докером-роем на нескольких удаленных машинах

  1. У меня есть три физических машины, и я хотел бы настроить рой Docker с сетью с несколькими хостами, чтобы я мог запускать докеры.

Например:

  1. Machine 1 (Докер Рой и менеджер Содержит Consoul) (192.168.5.11)
  2. машина 2 (Докер Рой Узел) (192.168.5.12)
  3. машина 3 (Docker Swarm Node) (192.168.5.13)

И мне нужно запустить компоновку докеров с любой другой отдельной машины.

Я пробовал Docker article, но в этой статье все настроено под одной физической машиной, используя докер-машину и виртуальную коробку. Как я могу достичь выше в трех удаленных машинах. Любая помощь оценивается.

ответ

4

В последней версии Docker встроен Swarm Mode, поэтому вам не нужен Консул.

Чтобы установить на свои коробки, убедитесь, что у всех их есть docker version с 1.12 или выше, а затем вам просто нужно инициализировать рой и присоединиться к нему.

на машине 1 перспективе:

docker swarm init --advertise-addr 192.168.5.11 

Вывод, который покажет вам команду для запуска на машине 2 и 3, чтобы присоединить их к рою. Вы будете иметь уникальный маркер роя, а команда что-то вроде:

docker swarm join \ 
--token SWMTKN-1-49nj1... \ 
192.168.5.11:2377 

Теперь у вас есть роя на 3-узла. Назад на машине-можно создавать наложенную сеть с несколько хоста:

docker network create -d overlay my-app 

А потом запускать рабочие нагрузки в сети с помощью deploying services. Если вы хотите использовать Compose with Swarm Mode, вам нужно использовать distributed application bundles - которые в настоящее время находятся только в экспериментальной сборке Docker.

+0

Спасибо Elton за ответ. Я уже использую Compose, и я не хочу использовать распределенные пакеты приложений. Есть ли способ настроить компоновку в режиме swarm с виртуальными машинами на разных хостах? –

+1

Compose еще не поддерживает режим роя - в основном сочиняет только «docker run», поэтому, если вы его используете, все будет работать на одном узле в рое. [Этот проект] (https://github.com/ddrozdov/docker-compose-swarm-mode) стоит посмотреть - он берет Compose YAML и использует 'service create' для работы с режимом роя. –

 Смежные вопросы

  • Нет связанных вопросов^_^