容器网络基础知识

参考:https://support.huaweicloud.com/basics-cce/kubernetes_0023.html

Pod通信规则

  1. 同一个Node上的Pod通过网桥(Linux Bridge)通信
  2. 跨Node的Bridge使用不同的地址段,以防止Pod的IP地址重复。跨Node通信的方式有很多种,比如容器隧道网络用的就是vxlan的大二层做互通。根据跨Node通信方式的不同,出现了不通的容器网络模型
  3. Pod访问集群外部时源IP会被修改成Node的IP
  4. 容器网络规划需要考虑三个点: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的路由配额

云原生网络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

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐