Как установить соединение между хостами, находящимися в разных сетях?

Как можно настроить swarm кластер Docker на виртуальных машинах OpenVZ Centos 7, учитывая ограничения, связанные с созданием общей overlay сети из-за отсутствия прав доступа к командам net.bridge.bridge-nf-call-iptables и аналогичным командам?
  • 4 ноября 2023 г. 10:38
Ответы на вопрос 2
1. Для установки соединения между хостами, находящимися в разных сетях, можно использовать маршрутизацию. Для этого необходимо настроить маршрутизаторы на каждом хосте и добавить маршруты, указывающие на другие сети. Например, настройка маршрутизации на Linux-системах производится с помощью команды "route add" или через файл конфигурации /etc/network/interfaces.

2. Что касается установки swarm кластера Docker на виртуальных машинах OpenVZ Centos 7, с ограничением доступа к командам net.bridge.bridge-nf-call-iptables и аналогичным командам, можно использовать другие сетевые драйверы вместо overlay в Docker swarm. 

Один из вариантов - использовать драйвер "host" для сети. В этом случае контейнеры будут использовать сетевой стек хостовой машины напрямую, а не создавать overlay сеть. Для использования этого драйвера выполните следующие шаги:

1. Установите Docker Swarm на каждой виртуальной машине OpenVZ Centos 7.
2. Запустите команду инициализации Swarm на одной из виртуальных машин, чтобы создать первый manager-узел.
3. Присоедините остальные виртуальные машины к Swarm как worker-узлы, используя токен, который был получен при инициализации.

Теперь у вас есть работающий Docker Swarm кластер без использования overlay сети.

Обратите внимание, что использование драйвера "host" может ограничивать возможности изоляции контейнеров и добавлять некоторые риски безопасности, поэтому будьте внимательны при планировании и настройке своего кластера.
Для правильной работы Docker на платформе OpenVZ, рекомендуется использовать виртуализацию KVM, которая предоставляет полноценное окружение виртуализации.
Похожие вопросы