Як зробити відмову та балансувати навантаження з Swarm


1

Ми використовуємо докер з 1 1/2 року без налаштування "одиночного хоста". Але тепер ми хочемо піти далі і використовувати Docker Swarm (остання версія).

Наша стара установка була просто, одиночні хости з nginx як Reverse-Proxys та деякими магіями для оновлення конфігурацій та запиту SSL-сертифікатів для нових послуг.

Що я не розумію: як налаштувати Failover / HA за допомогою Docker Swarm

Наприклад:

  • 3 віртуальних машин, які виступають як Master + Worker (я не знаю, що ідеальна установка, але нам потрібно економити гроші).

Тепер скажімо GoDaddy з доменом, як myswarm.com, цей домен повинен бути встановлений на один зовнішній IP, я б вибрав зовнішні IP-адреси Swarms VM, і він повинен працювати.

Але що відбувається, коли VM, пов’язаний з доменом, знижується? Як впоратися з цим сценарієм за допомогою Докера? Або мені потрібні ще 2 вітрини з HAProxy та деякими VIP-особами, що виходять назовні?


Я думаю, вам потрібно щось на зразок еластичного ip. Якщо один вузол виходить з ладу, інші вузли повинні діяти на невдалий ip aswell.
Тобіас

Відповіді:


3

IP-адреса повинна бути призначена мережевому інтерфейсу, доступному для операційної системи хоста. Усі вузли у рій повинні мати доступ до менеджера за IP-адресою.

Оскільки інші вузли зв'язуються з вузлом менеджера за його IP-адресою, вам слід використовувати фіксовану IP-адресу.

Ви можете запустити ifconfigна Linux або macOS, щоб переглянути список доступних мережевих інтерфейсів.

Якщо ви використовуєте Docker машини, ви можете отримати менеджер IP або docker-machine ls or docker-machine ip <MACHINE-NAME>- наприклад, docker-machine ip manager1.

Джерело: https://docs.docker.com/engine/swarm/swarm-tutorial/#the-ip-address-of-the-manager-machine

Крім того, вказівки повинні бути корисними для розгортання HA у Docker Swarm http://docs.master.dockerproject.org/swarm/multi-manager-setup/


Проблема - не сам Рой, я прошу "точки входу" до рою.
opHASnoNAME
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.