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

Docker容器的跨主机访问

时间:2015-08-05 01:13:59      阅读:370      评论:0      收藏:0      [点我收藏+]

标签:bridge weave open-vswitch docker

Docker容器的跨主机访问

使用网桥实现跨网段访问

技术分享

主机1 :192.168.22.101  主机2:192.168.22.102

安装网桥管理工具#sudo apt-get install bridge-until

配置网卡地址# sudo vim /etc/network/interfaces

配置其中一块网卡的网络参数,另一块网卡配置参数一样,这里不在演示

技术分享

重新启动网卡

# sudo /etc/init.d/networking restart

查看网络配置,发现eth0已经没有地址br1有地址

技术分享

在另一台主机上执行相同的操作,这里我们就不演示了

编辑docker的配置文件实现使用br1来启动docker

# sudo vim /etc/default/docker

--fixed-cidr 限定ip地址的分配范围

192.168.22.102配置

技术分享

192.168.22.101配置

技术分享

我们在192.168.22.101上启动一个容器,查看下ip地址,是否在我们分配的范围内

技术分享

我们在192.168.22.102上在启动一个容器,看下ip是否在我们分配的范围内

技术分享

测试一下这两个容器是否可以互联,发现完全没有问题。

技术分享

open-vswitch实现跨网段访问

open vswitch是什么?

open vswitch是一个高质量的,多层虚拟交换机,简称ovs。

拓扑

技术分享

安装open vswitch

#sudo apt-get install -y openvswitch-switch

建立ovs网桥

#sudo ovs-vsctl add-br obr0

添加gre连接

# sudo ovs-vsctl add-port obr0 gre0

配置docker容器虚拟网桥,其中romote_ip指定对方ip

#sudo ovs-vsctl set interface gre0 type=gre  options:romote_ip=192.168.22.101

查看一下我们的ovs配置

#sudo ovs-vsctl show

技术分享

创建br0桥接到obr0

sudo brctl addbr br0

sudo ifconfig br0 192.168.200.1 netmask255.255.255.0

sudo brctl addif br0 obr0

技术分享

编辑docker的配置文件

# sudo vim /etc/default/docker

技术分享

向两端添加去对方的默认路由

# sudo ip route add 192.168.100.0/24 via192.168.22.101 dev eth0

192.168.22.102上启动一个容器

 

技术分享

192.168.22.101上启动一个容器

技术分享

测试一下网络,发现两端是可以连通的

技术分享

weave实现跨网段访问

weave是什么呢?weave创建了一个虚拟网络,用来连接部署在多台机器上的docker容器

技术分享

安装weave

# sudo wget -O /usr/local/bin/weave https://raw.githubusercontent.com/zettio/weave/master/weave
# sudo chmod a+x /usr/local/bin/weave

启动weave

# weave launch

技术分享

主机ip地址192.168.22.102  192.168.22.105

启动第二台主机的weave 并指定对方的ip地址

#weavelaunch 192.168.22.102

在一台主机上启动一个容器

weave run192.168.200.2/24 -it --name dk1 192.168.22.103:5000/ubuntu

sudo dockerattach dk1

技术分享

在另一台主机上启动一个容器

# weave run192.168.200.3/24 -it --name dk2 192.168.22.103:5000/ubuntu

sudo dockerattach dk2

技术分享

测试一下网络

技术分享

 


本文出自 “linux 虚拟化” 博客,请务必保留此出处http://itjcw.blog.51cto.com/3428881/1681737

Docker容器的跨主机访问

标签:bridge weave open-vswitch docker

原文地址:http://itjcw.blog.51cto.com/3428881/1681737

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