overlay网络创建成功后,跨宿主机容器内部通信不通

1.环境介绍:

两台宿主机 os:centos7.4  和centos7.6

 kernel内核均为: 3.10

IP地址: 192.168.20.11\192.168.20.23

consul server地址:192.168.20.11

2.通过consul方式构建overlay 网络,方法网络很多,因为最终结果为成功,就不说明了,主要是为了记录几次排错尝试

3.故障现象描述:

登陆一台容器机器:demo1 用 10.0.0.2 ping 宿主机2上的容器demo2 10.0.0.3网络不通。

用10.0.0.2ping 宿主机2 IP 192.168.20.23 网络正常。

4.故障排除方式尝试:

(1)将两台宿主机的操作系统内核版本由3.10升级到4.4,最后尝试升级到5.4.11-1.el7.elrepo.x86_64 ,最终结果还是不通。

同时将系统中其他内核版本删除

[root@vm1 etcd-v3.0.12-linux-amd64]# rpm -qa |grep kernel
kernel-ml-5.4.11-1.el7.elrepo.x86_64
abrt-addon-kerneloops-2.1.11-48.el7.centos.x86_64
[root@vm1 etcd-v3.0.12-linux-amd64]# 

(2)通过docker network rm对新建的overlay网络进行删除未有效果,在两台宿主机分别进行overlay网络类型的新建,最后结果还是不通。

(3)检查防火墙和selinux设置未启动排除。

(4)检查宿主机IP转发功能

[root@f5 ~]# cat  /proc/sys/net/ipv4/ip_forward  
1

(5)排除用了近两天的时间未搞定,怀疑consul配置的不对,但是因为对consul理解不到位,想尝试通过别的方式能否创建overlay网络成功,最终通过etcd对overlay网络进行重新构建,最终overlay网络构建成功,10.0.0.2ping 10.0.0.3 正常。

 

5.本次总结:

此问题consul方式构建overlay失败未有结果:以下为cosul部分配置,参考网络,没找到问题原因如果有遇到类似情况的,还望能给一些指点:

 

server端:192.168.20.11

#nohup consul agent -server -bootstrap -ui -data-dir /var/lib/consul -client=192.168.20.11 -bind=192.168.20.11&>/var/log/consul.log & 

容器配置文件修改:

/lib/systemd/system/docker.service

ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock -H tcp://0.0.0.0:2375  --cluster-store=consul://192.168.20.11:8500 --cluster-advertise=192.168.20.11:2375

agent端:192.168.20.23

#nohup consul agent  -data-dir /var/lib/consul -client=192.168.20.23 -bind=192.168.20.83   -join 192.168.20.11 &

容器配置文件修改:

ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock -H tcp://0.0.0.0:2375 --cluster-store=consul://192.168.20.23:8500 --cluster-advertise 192.168.20.11:2375

 

通过consul 控制台可以看到node的状态正常,然后通过docker network构建overlay,可以正常构建,并且两个宿主机都可以看到overlay网络类型,但是跨主机容器内部

通信用10.0.0.2去ping 10.0.0.3就是不通,因为能修改的地方都已经修改,就剩下consul配置了,如果有遇到类似问题的小伙伴也希望能给一些处理故障的思路和方法。

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值