容器网络基础知识
参考:https://support.huaweicloud.com/basics-cce/kubernetes_0023.html
Pod通信规则
- 同一个Node上的Pod通过网桥(Linux Bridge)通信
- 跨Node的Bridge使用不同的地址段,以防止Pod的IP地址重复。跨Node通信的方式有很多种,比如容器隧道网络用的就是vxlan的大二层做互通。根据跨Node通信方式的不同,出现了不通的容器网络模型
- Pod访问集群外部时源IP会被修改成Node的IP
- 容器网络规划需要考虑三个点:Node网络(VPC网络)、Pod网络、Service网络.三个网段不能重叠。且集群所在VPC下所有子网(包括扩展网段子网)不能和Pod网段、Service网段冲突。控制好Node网段地址数量和Pod网段地址数量的对应关系
CCE容器网络模型
容器网络模型对比
参考:https://support.huaweicloud.com/usermanual-cce/cce_10_0281.html?isiframenew=true
- CCE支持容器隧道网络、VPC网络,CCE turbo支持云原生网络2.0
容器隧道网络
参考:https://support.huaweicloud.com/usermanual-cce/cce_10_0282.html
- 原理:在VPC网络之上基于vxlan搭建了一层overlay,使用的封装协议为VXLAN,后端虚拟交换机采用的是openvswitch,VXLAN是将以太网报文封装成UDP报文进行隧道传输
- 通信逻辑:同Node内Pod间通信:直接通过本节点的ovs网桥直接转发VPC网络;跨Node间Pod的通信:通过ovs隧道网桥打上vxlan标签后,通过大二层转发到对端节点上
- 性能损失:5%-15%
VPC网络
参考:https://support.huaweicloud.com/usermanual-cce/cce_10_0283.html
- 原理:容器隧道网络在三层网络上,搞了一层vxlan。VPC网络直接不用vxlan了,直接走三层路由互通。因为不通Node中的Pod属于不通网段,所以约定好下一跳,把Node节点当做nexhop的ip就可以了。这样做的优点是,Pod可以直接与CCE外部的IP做互访
- 限制:节点数量受限于虚拟私有云VPC的路由配额文章来源:https://www.toymoban.com/news/detail-542777.html
云原生网络2.0
参考:https://support.huaweicloud.com/usermanual-cce/cce_10_0284.html
- 原理:CCE中无论是容器隧道模式还是VPC网络模式,Pod网络都是独立于VPC网络之外,在Node内部单独分配的地址段。而云原生网络2.0是通过CNI将VPC网络对接到了k8s网络里,可以做到直接将弹性网卡附属给Pod,如此一来,Pod网络也是云上VPC网络的一部分了。此时可以直接利用云上的各类网络能力,
- 限制:仅CCE Turbo支持云原生网络2.0文章来源地址https://www.toymoban.com/news/detail-542777.html
到了这里,关于华为云CCE及CCE turbo(k8s)网络能力原理分析的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!