使用openvswitch实现跨主机docker容器互联
安装openvswitch的步骤请参考上一篇文章:http://www.cnblogs.com/xkops/p/5568167.html
环境:
192.168.3.201 node1
192.168.3.202 node2
1.在node1上创建网桥obr0,然后增加端口gre0到obr0。
ovs-vsctl add-br obr0
ovs-vsctl add-port obr0 gre0
ovs-vsctl set interface gre0 type=gre options:remote_ip=192.168.3.202
ovs-vsctl show
brctl addbr br0
ifconfig br0 192.168.1.1 netmask 255.255.255.0
brctl addif br0 obr0
brctl show
2.在node2上创建网桥obr0,然后增加端口gre0到obr0。
ovs-vsctl add-br obr0
ovs-vsctl add-port obr0 gre0
ovs-vsctl set interface gre0 type=gre options:remote_ip=192.168.3.201
ovs-vsctl show
brctl addbr br0
ifconfig br0 192.168.2.1 netmask 255.255.255.0
brctl addif br0 obr0
brctl show
3.在node1上启动容器,并查看ip地址。
docker run -it --name cct1 centos /bin/bash --使用Ctrl+p+q可以退出容器,但容器却能在后台运行。
ip: 192.168.1.2
4.在node2上启动容器,并查看ip地址。
docker run -it --name cct2 centos /bin/bash --使用Ctrl+p+q可以退出容器,但容器却能在后台运行。
ip: 192.168.2.2
5.在node1上添加路由表,使node1能到达node2定义的192.168.2.0/24网段。
ip route add 192.168.2.0/24 via 192.168.3.202 dev eth0
6.在node1上连接到容器,并测试与node2上容器的连通性。
docker attach centos
ping 192.168.2.2
7.在node2上添加路由表,使node2能到达node1定义的192.168.1.0/24网段。
ip route add 192.168.1.0/24 via 192.168.3.201 dev eth0
到此,如果没有出现任何问题的话,最后node1和node2上的两个容器之间能够互相ping通。
使用openvswitch实现跨主机docker容器互联的更多相关文章
- 使用weave实现跨主机docker容器互联
关于weave的原理不做细致的说明,如果想了解weave可以登陆官网:https://www.weave.works/ In this post,使用阿里云3台ECS服务器进行weave搭建,并测试搭 ...
- 多主机Docker容器的VLAN划分
原文发表于cu:2016-06-06 参考文档: Docker网络的4种模式,pipework/ovs的简单使用等:http://www.infoq.com/cn/articles/docker-ne ...
- Docker:使用Ambassador进行跨主机间容器通信
转载请注明出处:点我 由于Docker自身的网络的原因,想要在多主机间的容器之间进行通信是比较麻烦的事情.可以利用Ambassador容器来实现这一功能. 基本原理: 利用Ambassador来实现主 ...
- Docker系列(四):Docker容器互联
基于Volume的互联 为什么需要Volume docker文件系统是分层的,下面的是全部是只读的,最上面的是可写层,容器中的进程如果修改了某个文件,比如修改了下层的某个文件,其实是在最顶层复制下层文 ...
- Docker - 容器互联
容器互联 通过docker run命令的--link参数可以让容器之间通过连接(linking)系统进行交互. 参数格式:--link name:alias ,name是要链接的容器名称, alias ...
- 【Docker学习之六】Docker容器互联
环境 docker-ce-19.03.1-3.el7.x86_64 centos 7 一.基于Volume的互联就是-v参数,将本机文件或目录挂载到容器目录,实现文件目录共享 二.基于Link的互联 ...
- docker容器互联,实现目录、服务共享
一.需求 docker使服务之间实现容器隔离,比如Javaweb项目前端.后端.数据库.数据库后台,分别把它们部署在不同的容器里面,实现隔离.但服务和服务之间也有互访的需求,这就涉及到容器网络和容器互 ...
- Docker | 容器互联互通
上篇讲到创建自定义网络,我创建了 mynet 网络,并指定了网关和子网地址.在上篇结尾呢,我抛出了一个问题:其它网络下的容器可以直接访问mynet网络下的容器吗?今天就让我们一块看下怎么实现容器互联. ...
- docker容器互联
link方式 http://blog.csdn.net/halcyonbaby/article/details/42112325 通过link方式创建容器,然后我们可以使用被link容器的别名进行访问 ...
随机推荐
- 利用窗口引用漏洞和XSS漏洞实现浏览器劫持
==Ph4nt0m Security Team== Issue 0x03, Phile #0x05 of 0x07 |=----------------- ...
- angular+selecte2(angular ng-repeat渲染)
一.页面代码 <select id="sponsorId" select2 ng-model="sponsorSelectedObj" ng-change ...
- hdu1078 记忆化搜索
/* hdu 1078 QAQ记忆化搜索 其实还是搜索..因为里面开了一个数组这样可以省时间 (dp[x][y]大于0就不用算了直接返回值) */ #include<stdio.h> #i ...
- PHP 开发 APP 接口学习笔记与总结 - [ Linux ] 定时任务
定时任务可以使用 crontab 命令来设定: crontab -e #编辑某个用户的cron 服务 crontab -l #列出某个用户cron 服务的详细内容 crontab -r #删除某个 ...
- md5只是用来签名,签名的作用是保证数据完整不会被破坏而已。签名和加密是两回事
md5只是用来签名,签名的作用是保证数据完整不会被破坏而已,多一个sign标签,sign的值就是md5生成的字符串.签名和加密是两回事
- 常用的API接口,返回JSON格式的服务API接口
物流接口 快递接口: http://www.kuaidi100.com/query?type=快递公司代号&postid=快递单号 ps:快递公司编码:申通="shentong&qu ...
- powershell 批量生成文件
缘由 由于现在替省厅工作,年底了要向地市收很多文件,哪些地市已报,哪些没报,需要一目了然. 我的处理方式是收什么文件就针对该文件新建一个目录,然后在该目录下为所有地市建一个占位文件. 等收到项某市的材 ...
- WEB安全攻防学习内容
一.网络安全篇 TCP/IP协议初识 Linux操作系统基础 网络漏洞扫描与信息收集 口令攻击 服务安全 日志安全 安全基线加固 防火墙vpn安全接入 网络无线原理和安全防护 二.编程篇 初识Pyth ...
- BCP 命令
bcp 实用工具 我们可以通过如下BCP命令(注意不能有回车)将其导出为XML文件,并保存: BCP "SELECT TOP 30 [bom_no],[LEVEL] FROM [sqladm ...
- 不绑架输入--document.getElementById("linkage_"+id_type+"_echo").value="";--联动
<script> function w_linkage(id_type) { var selected = $("#linkage_"+id_type+"_t ...