码迷,mamicode.com
首页 > 其他好文 > 详细

跨主机容器间通讯解决方案

时间:2018-10-30 22:22:33      阅读:241      评论:0      收藏:0      [点我收藏+]

标签:pip   type   51cto   process   strong   直接   特性   term   跨主机   

1.docker集群间容器是否可以通信。

创建容器服务来测试:docker service create --name tomcat1 --replicas 2 192.168.56.200:5000/tomcat

技术分享图片
技术分享图片
测试结果ping不通。
技术分享图片

2.docker 在早前的时候没有考虑跨主机的容器通信,这个特性直到 docker 1.9 才出现。在此之前,如果希望位于不同主机的容器能够通信,一般有几种方法:
使用端口映射:直接把容器的服务端口映射到主机上,主机直接通过映射出来的端口通信
把容器放到主机所在的网段:修改 docker 的 ip 分配网段和主机一致,还要修改主机的网络结构
第三方项目:flannel,weave 或者 pipework 等,这些方案一般都是通过 SDN 搭建 overlay 网络达到容器通信的

解决方案:创建overlay网络
docker network create -d overlay net
docker network ls
技术分享图片
再创建容器进行测试
docker service create --name tomcat2 --mode global --network net 192.168.56.200:5000/tomcat
技术分享图片![]

技术分享图片
创建镜像信息:docker inspect cf2bb17e353e
技术分享图片
有了overlay网络可以ping通了。
技术分享图片

两个容器可以通信是因为加了一个overlay层。
技术分享图片

跨主机容器间通讯解决方案

标签:pip   type   51cto   process   strong   直接   特性   term   跨主机   

原文地址:http://blog.51cto.com/14033037/2310913

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!