在多个docker compose中创建一个群集,使用多个主机和专用服务器

在多个docker compose中创建一个群集,使用多个主机和专用服务器,docker,overlay,swarm,compose,multiserver,Docker,Overlay,Swarm,Compose,Multiserver,我有三个服务器,每个服务器都通过compose定义了docker容器。我需要加密其中两个服务器之间的通信,将来我需要至少一个服务器中的副本 所以我想用覆盖网络创建一个swarm,但我需要每个容器在其当前专用的服务器中继续运行,因此我无法创建一个三个节点的swarm,每个服务器一个节点,并让管理器安排服务复制 因此,我考虑过为每个组合创建一个群集,这样当我需要更多节点进行某些组合时,我将为该组合添加一个新的专用服务器,并将其作为节点添加到该组合的群集中 我真正不知道的是,这是否是解决该架构的最佳方

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

所以我想用覆盖网络创建一个swarm,但我需要每个容器在其当前专用的服务器中继续运行,因此我无法创建一个三个节点的swarm,每个服务器一个节点,并让管理器安排服务复制

因此,我考虑过为每个组合创建一个群集,这样当我需要更多节点进行某些组合时,我将为该组合添加一个新的专用服务器,并将其作为节点添加到该组合的群集中

我真正不知道的是,这是否是解决该架构的最佳方法,以及如何在群集之间直接建立加密通信


谢谢

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

执行docker服务创建时添加-约束标志

如果您使用docker compose部署应用程序,请在compose文件中添加约束关键字

constraints: [node.hostname == node_server]

一些

这对我来说是可行的,但我使用的是docker compose版本3.3,因此我已向用于启动它的compose文件添加了标志:位置:约束:[node.hostname==node\u server]