Docker Swarm:它是否允许不同主机中的两个容器进行通信?

时间:2015-05-31 12:25:34

标签: docker boot2docker docker-swarm

我用两台机器设置了swarm集群。它按预期工作。我能够基于约束过滤器在所需节点上启动容器。但是,当我尝试从另一个节点中的容器ping一个节点中的一个容器时,它会失败。它不承认它。 是否符合预期,或者我在设置群集时遇到了什么问题?

其他详情

  • 机器1(10.0.0.4)作为主机/节点
  • 机器2(10.0.0.21)作为节点
  • Swarm agent是10.0.0.4:2374(ip:port)

info命令的输出:

docker -H tcp://10.0.0.4:2374 info
Containers: 11
strategy: spread
Filters: affinity, health, constraint, port, dependency
Nodes: 2
 machine1: 10.0.0.4:2375
  └ Containers: 6
  └ Reserved CPUs: 0 / 25
  └ Reserved Memory: 0 B / 24.76 GiB    
 machine2: 10.0.0.21:2375
  └ Containers: 5
  └ Reserved CPUs: 0 / 25
  └ Reserved Memory: 0 B / 24.76 GiB

3 个答案:

答案 0 :(得分:2)

Overlay networks在Docker 1.9中引入(2015年11月)。它允许不同节点(主机)中的容器成为同一网络的一部分并进行通信。

答案 1 :(得分:1)

是的,来自文档" Docker Swarm是Docker的本机群集。它将Docker主机池变成了一个虚拟主机。" https://docs.docker.com/swarm/

答案 2 :(得分:1)

看起来docker swarm更像是管理工具和调度程序。我必须使用其他工具,如编织或大使来连接不同主机中的两个容器。无论如何,docker swarm是一个很好的集群工具,帮我设置我想要的东西。