在具有专用服务器的多主机的多个docker-compose中创建Swarm

时间:2018-09-27 13:28:26

标签: docker overlay swarm compose multiserver

我有三台服务器,每台服务器都通过compose定义了docker容器。我需要加密其中两个之间的通信,将来我至少需要一个副本。

因此,我想创建一个具有覆盖网络的群集,但是我需要每个容器才能在其当前专用的服务器上继续运行,因此我无法创建具有三个节点(每个服务器一个)的群集,并让管理器安排服务复制

所以我已经为每个组合创建了一个群集,以便当我需要更多节点进行某些组合时,我将为此组合添加一个新的专用服务器,并将其添加到该组合的群集中作为一个节点。

我真的不知道这是否是解决此体系结构的最佳方法,又如何直接在群集之间建立加密通信。

谢谢

1 个答案:

答案 0 :(得分:1)

我认为您不需要多个群集集群,因为docker swarm支持通过一个标志在特定节点上进行能力调度服务。

在执行--constraint时添加docker service create标志。

如果要使用docker compose部署应用程序,请在compose文件中添加constraints关键字。

constraints: [node.hostname == node_server]

有些 introduction about constraint