docker下flannel的overlay网络举例分析

本篇内容介绍了“docker下flannel的overlay网络举例分析”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

专注于为中小企业提供成都网站制作、网站设计服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业湖滨免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了上千多家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。

###1.网络拓扑 ###

拓扑如下:(点开看大图) docker下flannel的overlay网络举例分析

  1. 容器网卡通过docker0桥接到flannel0网卡,而每个host对应的flannel0网段为 10.1.x.[1-255]/24,而flannel所组成的一个跨host的网段为10.1.x.x/16,而flannel0则为flanneld进程虚拟出来的网卡。

  2. docker0的地址是由 /run/flannel/subnet.env 的 FLANNEL_SUBNET 参数决定的。

###2.HostA的Container1和HostB的Container2如何通信### host A的container1请求host B的container2的的数据时,流程如下:

  1. 根据host A的路由规则 "10.1.15.0 0.0.0.0 255.255.255.0 U 0 0 0 docker0“ 数据交给docker0处理。

  2. docker0会收到数据,然后根据路由规则 ”10.1.0.0 0.0.0.0 255.255.0.0 U 0 0 0 flannel0" 数据被交由给flannel0网卡处理。 flanneld会把数据封包然后送给eth0,用udp协议发送到对方host的eth0网卡。

  3. host B的 eth0网卡收到后,根据路由规则 10.1.0.0 0.0.0.0 255.255.0.0 U 0 0 0 flannel0" 则交给flannel0网卡处理。

  4. flanneld会把数据解包,根据路由规则 “10.1.20.0 0.0.0.0 255.255.255.0 U 0 0 0 docker0" 交给docker0处理。

  5. 则host B的container 2 将会收到数据。
    至此网路通信解释完毕。

###3.自动部署程序中添加物理机需要注意的地方### 基于上,故而:

  1. 网卡docker0、flannel0网卡的正确建立。

  2. 路由被正确配置!10.1.x.[1-255]/24 和 10.1.x.x/16 两个网段的正确路由配置。

  3. 我们的网络环境检查都基于此。通常情况下,以上两者可以自动正确建立成功,但有时候会出现异常。

  4. 添加物理机时候检查网络环境 ifconfig docker0 和 flannel0并且需要正确配置路由规则。

  5. flanneld的udp端口2375需要添加到iptables例外。

“docker下flannel的overlay网络举例分析”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注创新互联网站,小编将为大家输出更多高质量的实用文章!


网站标题:docker下flannel的overlay网络举例分析
标题来源:http://azwzsj.com/article/goeggc.html