Kubernetes 容器网络模型和典型实现( 三 )
本文插图
值得一提是 , 容器 CIDR 和下一跳主机 IP 的映射条目容量没有特殊限制 。 在阿里云 ACK 产品上该条目容量需要在 VPC/vSwitch 控制面中进行分发 , 考虑到整体性能因素 , 在数量上做了一定数量限制(缺省 48 个) 。 但在自建主机网络部署中 , 该数量限制就不会明显了 , 因为主机下一跳主机网络在一个大二层平面上 。
Flannel 新版本 backend 不建议采用 UDP 封装方式 , 因为 traffic 存在 3 次用户空间与内核空间的数据拷贝 , (如下图)性能上存在比较大的损耗 。 新版本推荐用 VxLan 和云服务商版本的 backends 进行优化 。
本文插图
L3 networking: Calico
Calico 是 L3 Routing 上非常流行容器网络架构方案 。 主要组件是 Felix , BIRD 和 BGP Route Reflector 。 Felix 和 BIRD 均是运行在 Node 上的 deamon 程序 。 架构简要:
本文插图
Felix 完成网卡的管理和配置 , 包括 Routes programming 和 ACLs 。 实现路由信息对 Linux kernel FIB 的操作和 ACLs 的管理操作 。 由于 Felix 功能完整性和运行独立性非常好 , 其功能作为 Off-the-shelf 被集成到阿里云 Terway 网络插件中 , 实现其网络策略功能 。
BIRD(BGP client)完成内核路由 FIB 条目向集群网络侧分发 , 使其路由条目对所有网络节点中可见 , 并实现 BGP 路由协议功能 。 每一个 BGP client 会连接到网络中其它 BGP client , 这对规模较大的部署会是明显的瓶颈(due to the N^2 increase nature) 。 鉴于该限制引入了 BGP Route Reflector 组件 , 实现 BGP clients 路由信息在汇聚层上再进行分发(propagation) 。 在集群网站中 Reflector 组件可以部署多个 , 完全能于部署规模大小来决定 。 Reflector 组件仅仅执行路由信令和条目的分发 , 其中不涉及任何数据面流量 。 路由汇聚层分发:
本文插图
L3 networking:Terway
Terway 是阿里云自研 CNI 插件 , 提供了阿里云 VPC 互通和方便对接阿里云产品的基础设施 , 没有 overlay 网络带来的性能损耗 , 同时提供了简单易用的 backend 功能 。
Terway 功能上可分为三部分:1. CNI 插件 , 一个独立的 binary 运行程序;2. Backend Server(也称为daemon) , 程序以独立 daemonSet 方式运行在每个 Node 上;3. Network Policy , 完全集成了 Calico Felix 实现 。
CNI 插件 binary 是通过 daemonSet 部署中 initContainer 安装到所有节点上 , 实现了ADD、DEL、CHECK三个接口供 kubelet 调用 。 这里以一个 Pod 在创建过程中的网络 setup 步骤来说明:
- 当一个 Pod 被调度到节点上时 , kubelet 监听到 Pod 创建在自己节点上 , 通过 runtime(docker...)创建 sandbox 容器来打通所需 namespace 。
- kubelet 调用插件 binary 的cmdAdd接口 , 插件程序对接口参数设置检查后 , 向 backendServer 发起AllocIP调用 。
- backendServer 程序的networkService根据 Pod 的网络类型进行相应的 Pod IP 申请 , 支持三种网络类型ENIMultiIP、VPCENI、VPCIP:ENIMultiIP是 eni 网卡带多 IP 类型 , 由networkService中的ResourceManager在自己的 IP 地址池中进行 IP 地址分配VPCENI是为 Pod 创建和挂载一个 eni , 由networkService中的allocateENI向阿里云 Openapi 发起对所属 ecs 实例的 eni 创建、挂载 , 并获得对应 eni IP 地址VPCIP是为 Pod 在 VPC 网络平面上分配一个 IP 地址 , 这是在插件程序中通过调用ipam接口从 vpc 管控面获取的 IP 地址
推荐阅读
- 直播阳江|60多个网络平台直播刀博会网上展览会开幕式盛况
- 红途网络乔钰|英国主动退回被“诅咒”文物:巴比伦的千年“石鼓”回到伊拉克
- 红途网络美玉|发行货币,晚年穷困潦倒只剩5美元,美国历史上唯一的皇帝
- 大众网|| 网络名人说 @江氏小盗龙,科创发展看淄博
- 周到|“四叶草”实现5G网络全覆盖 网络容量提升约1.5倍
- 外交部网站|外交部:美国所谓“清洁网络”是“肮脏网络”
- 网络游戏|魔兽怀旧服咸鱼剑近战该如何选择,盗贼和狂暴战谁更适合呢
- 大众网|| 网络名人说 @小天微谈,科创发展看淄博
- 网络|周边均有发生!几万块打水漂!警方提醒,远离网络刷单...
- 央视新闻客户端|云南警方摧毁特大贩毒网络 缴获毒品17.5公斤 抓获犯罪嫌疑人14人
