(转)Docker - 创建 Docker overlay network (containers 通信)
原文链接: http://www.cnblogs.com/AlanWalkOn/p/6101875.html
---
创建基于Key-Value的Docker overlay network。 这样运行在多个nodes上的container就可以通过内部网络进行通信访问了。
安装环境centOS 7.2,Docker:1.12
1. 两台测试机器(172.100.1.17 and 172.100.1.12)必须是唯一的且互相可以解析。
2. 在(172.100.1.17)下载progrim/consul 镜像
3.修改docker daemon 配置信息。创建.conf文件在/etc/systemd/system/docker.service.d。注意网卡名字ifconfig确认下本机IP。
[Service - 17]
ExecStart=/usr/bin/dockerd --cluster-store consul://172.100.1.17:8500 --cluster-advertise 172.100.1.17:2376
[Service - 12]
ExecStart=/usr/bin/dockerd --cluster-store consul://172.100.1.17:8500 --cluster-advertise 172.100.1.12:2376
--cluster-store consul -> 指向获取 key-value 的机器
--cluster-advertise -> 本机地址,并注意监听端口:2376
4. Flush Changes
$ sudo systemctl daemon-reload
5.重启Docker Daemon
$ sudo systemctl restart docker.service
注意:两台机器都要重新启动host
6. 启动 consul
docker run -d --restart="always" -p "8500:8500" -h "consul" progrium/consul -server -bootstrap
7. 运行Docker ps 确保consul正常运行
$ docker psCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES4d51392253b3 progrium/consul "/bin/start -server -" 25 minutes ago Up 25 minutes 53/tcp, 53/udp, 8300-8302/tcp, 0.0.0.0:8500->8500/tcp, 8400/tcp, 8301-8302/udp admiring_panini |
8. 创建overlay network. 注意subnet地址避免与hosts冲突。
$ docker network create --driver overlay --subnet 10.0.9.0/ my-multi-host-network
9. 查看overlay network是否存在
docker network ls
10. 在 host 17 (172.100.1.17)运行container使用overlay network
docker run -d --name mybusybox17 --net my-multi-host-network mybusybox
到此基于key-value的overlay network就创建好了。
11. 在另外一台机器上 host 12(172.100.1.12)运行container
docker run -d --name mybusybox12 --net my-multi-host-network mybusybox
12. 进入 container (mybusybox12) 查看 另一个host 17上的 container (mybusybox17)

13. 进入 container (mybusybox17) 查看 另一个host上的 container (mybusybox12)

到这里,我们就完成了通过overlay模式的网络来联通位于不同 Docker Host 之内的 containers 的通信 :)
(转)Docker - 创建 Docker overlay network (containers 通信)的更多相关文章
- docker 创建docker用户组,应用用户加入用户组
在Linux系统下使用docker,为了避免每次输入命令都需要sudo,可以把用户加入docker用户组 创建docker用户组 sudo groupadd docker 普通用户加入docker用户 ...
- Docker Network containers
Network containers Estimated reading time: 5 minutes If you are working your way through the user gu ...
- Docker6之Network containers
how to network your containers. Launch a container on the default network Docker includes support fo ...
- Docker - 运行 containers 使用在 swarm 模式下创建的 overlay 模式的 network
前言 在Docker engine v1.12, 使用Swarm可以方便的创建overlay模式的网络,但是它只能被swarm下面的service所使用的,相对于container,这个网络是完全隔离 ...
- 记一次 Docker swarm - overlay network access error
背景 之前使用Docker swam 在不同的服务器 (docker host) 上面创建了service,他们之间的container通过overlay的网络通信. 昨天由于公司网络维护,其中一台服 ...
- 【Network】Calico, Flannel, Weave and Docker Overlay Network 各种网络模型之间的区别
From the previous posts, I have analysed 4 different Docker multi-host network solutions - Calico, F ...
- docker - 由于docker swarm子网与host机器网络冲突导致的container通信问题的解决方案
背景 近期,公司网络要迁移到新的网段,所以原来在服务器上面搭建的docker swarm需要重新构建... 拿到新的服务器地址看了一下,“10.xxx.xxx.xxx" ... 纳尼,这IP ...
- Docker 新网络 overlay 网络
Overlay网络是指在不改变现有网络基础设施的前提下,通过某种约定通信协议,把二层报文封装在IP报文之上的新的数据格式. 这样不但能够充分利用成熟的IP路由协议进程数据分发,而且在Overlay技术 ...
- docker网络之overlay
使用docker network的好处是:在同一个网络上的容器之间可以相互通信,而无需使用expose端口特性 本文使用docker-swarm进行overlay网络的分析.使用2个vmware模拟2 ...
随机推荐
- TextView两种显示link的方法
TextView两种显示link的方法 一.简介 也是TextView显示文本控件两种方法 也是显示丰富的文本 二.方法 TextView两种显示link的方法 1)通过TextView里面的类ht ...
- Spring之RMI 远程方法调用 (Remote Method Invocation)
RMI 指的是远程方法调用 (Remote Method Invocation) 1. RMI的原理: RMI系统结构,在客户端和服务器端都有几层结构. 方法调用从客户对象经占位程序(Stub).远程 ...
- Linux grep 命令大全
grep: 用于模糊查找,在标准输入或者文件中 格式: grep [选项参数]... PATTERN |FILE ... 选项参数说明: -E, --extended-regexp PATTERN ...
- IOS-RunTime(刨根问底)
方法调用 让我们看一下方法调用在运行时的过程(参照前文类在runtime中的表示) 如果用实例对象调用实例方法,会到实例的isa指针指向的对象(也就是类对象)操作.如果调用的是类方法,就会到类对象的i ...
- SQLSERVER store procedure 临时表
有些时候显示重复数据时,使用: ) 但有些时候表A过大或者逻辑复杂.显示数据时,会造成性能的影响,这时你就可以使用临时表: ) create table #temp( XXX , XXX) )in ...
- mybatis分页插件使用注意
之前的项目用的数据库是mysql,在pom.xml引入这一个就能分页了. 后来又开了一个项目,使用的是oracle数据库,我写分页的时候发现不能实现,在网上找到资料说是必须要5.0以上的.我就导了这依 ...
- 解析XML文件的几种方式及其比较
解析xml文件目前比较流行的主要有四种方式: 1. DOM(Document Object Model)它把整个XML文档当成一个对象加载到内 存,不管文档有多大.它一般处理小文件 2.SAX(Si ...
- OC-常见归档总结
/***** 该文一共总结了以下六种文件操作 1.NSKeyedArchiver. 2.对类对象进行归档 <NSCoder>协议 3.文件管理类 NSFileManger 4.对文 ...
- Servlet中的Filter(过滤器)
Filter,过滤器,是处于客户端与服务器资源文件之间的一道过滤网,在访问资源文件之前,通过一系列的过滤器对请求进行修改.判断等,把不符合规则的请求在中途拦截或修改.也可以对响应进行过滤,拦截或修改 ...
- latch的产生和消除
一直都知道fpga中有latch这么一回事,但是一直都不太清楚到底什么是锁存器,它是怎么产生的,它到底和寄存器有多少区别,它怎么消除.为什么说他不好? 一,是什么 锁存器是一种在异步时序电路系统中,对 ...