linux虚拟化之docker虚拟化---docker中容器之间的跨主机通信2

使用MacVlan的方法使不同主机中的容器进行通信

以我自己的环境为例
docker10 : 192.173.26.10
docker11 : 192.173.26.11
基于真实的ens33网卡,生产新的虚拟网卡
//验证内核模块8021q封装 作用是:有这个模块,才能创建更多的虚拟网卡。

modinfo  8021q

在这里插入图片描述
//如果上一条命令没有信息,就运行一下以下命令:

modprobe  8021q

//修改ens33网卡的配置文件

 vim /etc/sysconfig/network-scripts/ifcfg-ens33 

在这里插入图片描述
//手动添加虚拟网卡的配置文件(运行两个)

cp  -p  ifcfg-ens33  ifcfg-ens33.11

//修改这个文件 ifcfg-ens33.11
在这里插入图片描述
注意:ip要和ens33网段,作区分(不在一个网段),保证设备名称和文件的一致性,网关个网段ip的一致性,打开vlan
//再cp一份网卡的配置文件,其名为ifcfg-ens33.22,进行修改
在这里插入图片描述
//启用创建的虚拟网卡

ifup  ifcfg-ens33.11 
ifup  ifcfg-ens33.22

//查看一下网络信息

ifconfig

在这里插入图片描述
//基于虚拟网卡ens33.11 创建一个macvlan网络

docker network create -d macvlan --subnet 172.16.11.0/24 --gateway 172.16.11.1 -o parent=ens33.11  mac_net11

//基于虚拟网卡ens33.22 创建一个macvlan网络

docker network create -d macvlan --subnet 172.16.22.0/24 --gateway 172.16.22.1 -o parent=ens33.22  mac_net22

//在另一台主机上也做两个ens33的文件(注意修改ip为不同的ip,因为是在同一局域网下,所以不能相同ip) 与docker11上的ip均不相同
在这里插入图片描述
//基于虚拟网卡ens33.11 创建一个macvlan网络

docker network create -d macvlan --subnet 172.16.11.0/24 --gateway 172.16.11.1 -o parent=ens33.11  mac_net11

//基于虚拟网卡ens33.22 创建一个macvlan网络

docker network create -d macvlan --subnet 172.16.22.0/24 --gateway 172.16.22.1 -o parent=ens33.22  mac_net22

//最后就是验证了,根据这些macvlan网络创建容器
在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述
然后修改一下虚拟的适配器选项,点击桥接模式
在这里插入图片描述
在同一网段的不同主机内的容器是可以相互访问的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值