Балансировка на инстансы docker swarm?

Коллеги, здравствуйте.

Потихоньку "опыляюсь" обучением докер-кластеров, тем как все это устроено и тд и тп.
Сейчас в моем класетере 2 менеджера, 2 вокрера. В сворме крутится десяток инстансов, которые смотрят в веб.

За кластером находится проксипас веб-сервер, который из мира проксирует запросы на инстансы внутри кластера. Сейчас это работает так, но вопросов несколько:
1. как правильнее/лучше реализовать такую схему*?
2. есть же какие-то traefic и подобные системы. или обычный добрый nginx для балансировки проще всего?
3. как лучше "распределять" запросы.

а теперь подробнее о схеме*
by-design сейчас у меня работает все так:

пользователь -> проксипас сервер, отправляющий запросы на ip менеджера:порт -> менеджер -> бекенд (инстанс)
Если показать на пальцах, то, предположим:
ip-проксипаса 10.0.0.1
ip-manager1 10.0.0.2
ip-manager2 10.0.0.3
ip-worker1 10.0.0.4
ip-worker2 10.0.0.5

Вне зависимости от того, где расположен инстанс (на воркере1, 2 или менеджере) все запросы от 10-0-0-1 попадают на 10.0.0.2, а дальше "менеджер" сам разберется, куда ему отправлять запросы, так как инстансы в локальной сети открыты на порты 10000-10100.
То есть например инстанс nginx работает так, что в docker-compose прописано:
ports:
- 10001:80
и соответственно в проксипасе я пропишу 10.0.0.2:10001.

Вопросов сразу несколько, как я уже писал выше. Во-первых, насколлько "правильно" я так делаю? Так как, как я понимаю, если выйдет из стоя на какое-то время менеджер1, то и все запросы прольются, так как их некуда будет отправлять.

Как поступать с куки? Потому что если какой-нибудь вордпресс работает на трех инстансах, то по round-robin я буду три раза попадать на три разных инстанса, три раза проходить авторизацию (собственно из-за этого и встает вопрос, а надо ли использовать LB в docker-stack кластере? чтобы он хранил куки(?)).

На самом деле, вопросов много, интереса, если честно, не меньше -- что-то новое и классное.
Будет круто, если мы сможем подискутировать и пообщаться на эту тему в комментариях, спасибо.
  • Вопрос задан
  • 55 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы