隨著容器技術的發展成熟,越來越多的組件遷移到容器,在技術遷移程序中,資料庫,游戲,AI 這些組件對容器網路性能(時延,吞吐,穩定性)提出了更高的要求,為了得到更優的時延和吞吐表現,各大云廠商都在致力于縮短節點內容器的網路訪問鏈路,讓資料包能盡可能快地轉發到容器網卡,
騰訊云容器服務 TKE 借助智能網卡推出下一代容器網路方案,該方案實作了一個 Pod 獨占一張彈性網卡,不再經過節點網路協議堆疊(default namespace),極大縮短了容器訪問鏈路,縮短了訪問時延,并使 PPS 可以達到整機上限,該方案實作了短鏈接場景下 QPS 相比之前容器網路方案(策略路由方案,網橋方案)提升 50%-70%;長鏈接場景下 QPS 提升 40%-60%,
由于不再經過節點網路協議堆疊,傳統基于 iptables 和 IPVS 的 ClusterIP service 訪問方案不能直接適用于該方案,為了實作該方案下 Pod 可以直接訪問 ClusterIP service,TKE 推出 share-NS IPVS 方案,使得在容器網路命名空間下也可以訪問到節點網路協議堆疊的 IPVS 規則,同時配合 CLB 直通 Pod,實作了完整意義上的彈性網卡直通,
該方案實作了針對 ClusterIP service 短鏈接場景下 QPS 相比 iptables 方案提升 40%-60%,IPVS 方案提升 70%-90%;長鏈接場景下 QPS 相比 iptables 方案提升 30%-50%,IPVS 方案提升 50%-70%,
新一代容器網路方案推出背景
在介紹新一代容器網路方案前,先和大家介紹一下 TKE 現有網路方案,和現有網路方案面臨的挑戰,以及客戶新訴求,
現有網路方案介紹
騰訊云容器服務 TKE 目前提供了兩種容器網路模式可供用戶選擇使用,
GlobalRouter 模式:基于 vpc 實作的全域路由模式, 目前是 TKE 默認網路方案,該模式依托于 vpc 底層路由能力,不需要在節點上配置 vxlan 等 overlay 設備,就可以實作容器網路 和 vpc 網路的互訪,并且相比于 calico/flannel 等網路方案,因為沒有額外的解封包,性能也會更好,
VPC-CNI 模式: TKE 基于 CNI 和 VPC 彈性網卡實作的容器網路能力,適用于 Pod 固定 IP,CLB 直通 Pod,Pod 直綁 EIP 等場景,該網路模式下,容器與節點分布在同一網路平面,容器 IP 為 IPAMD 組件所分配的彈性網卡 IP,
GlobalRouter 和 VPC-CNI 模式目前已服務 TKE 上萬企業用戶, 兩種網路模式也存在一定使用限制見:如何選擇TKE網路模式,隨著客戶使用場景的豐富, TKE 的客戶對容器網路又提出了更高的要求,
客戶對 TKE 網路方案的新需求
除了在為騰訊外部 TKE 客戶提供容器網路能力之外,騰訊云容器服務 TKE 作為騰訊內部業務云原生的底座,在支持騰訊內部自研業務上云如 QQ、騰訊會議、游戲、CDB、大資料等業務的程序中也收到以下的需求點:
- 在 VPC-CNI 模式的基礎上進一步降低資源損耗,降低網路時延,提高網路吞吐(關鍵點)
- 支持 Pod 級別的安全隔離
- 支持 CLB 直通Pod,不再經過 NodePort 轉發,提升轉發性能并擁有統一的負載均衡視圖
基于以上場景,TKE 團隊聯合底層騰訊云 VPC 團隊、虛擬化團隊推出了新一代的獨立網卡的 VPC-CNI 方案,
TKE新一代網路方案介紹
TKE 新一代網路方案在原有 VPC-CNI 模式單網卡多 IP 模式的基礎上, 進階為容器直接獨享使用彈性網卡,無縫對接騰訊云私有網路產品的全部功能,同時在性能做了極大的提升(詳情見下文性能介紹),
壓測資料說明
-
為了得到不同網路方案下的 QPS,這里控制變數,讓不同網路方案的 nginx Pod 運行在同一個節點,使用 wrk 分別壓測不同 Pod,并讓服務端節點的 cpu 接近100%,


-
為了得到不同 Service 方案下的 QPS,這里控制變數,讓 kube-proxy 和 wrk Pod 運行在同一節點,壓測相同后端,并讓客戶端節點的 cpu 接近100%,


功能簡介
新一代 VPC-CNI 模式的網路方案中,能夠在原有的網路能力中額外增加
- 支持 Pod 系結 EIP/NAT,不再依賴節點的外網訪問能力,無須做 SNAT,可以滿足直播、游戲、視頻會議等高并發,高帶寬外網訪問場景
- 支持 Pod 系結安全組,實作 Pod 級別的安全隔離
- 支持基于 Pod 名稱的固定 IP,Pod 重新調度后仍能保證 IP 不變
- 支持 CLB 直通 Pod,不再經過 NodePort 轉發,提升轉發性能并擁有統一的負載均衡視圖
- 即將支持黑石 2.0物理服務器(推薦使用, 默認使用智能網卡,網路性能更高)
- 即將支持基于 Pod 名稱的固定 EIP,滿足 Pod 固定外網出口
使用方法
申請新一代容器網路方案內測開通后,創建 TKE 集群時容器網路模式選擇 VPC-CNI/Pod 獨立網卡模式即可:
? 
實作原理簡介
新一代方案在原有 VPC-CNI 模式的基礎上擴展,依托于彈性網卡,將系結到節點的彈性網卡通過 CNI 配置到容器網路命名空間,實作容器直接獨享使用彈性網卡,

您可以關注騰訊云原生公眾號,后續將會推送 TKE 新一代網路方案實作的技術細節,
當前內測階段使用限制
- 僅支持部分 S5 的機型使用該網路模式,
- 節點上運行的 Pod 數量限制為節點核數的5倍,
- 僅支持新集群,存量 TKE 集群暫不支持變更網路方案,
TKE新一代網路方案內測邀請
我們誠摯邀請您參與騰訊云下一容器獨立網卡網路方案產品能力的內測, 您可以通過以下鏈接提交內測申請:https://cloud.tencent.com/apply/p/85p1zs6x777
【騰訊云原生】云說新品、云研新術、云游新活、云賞資訊,掃碼關注同名公眾號,及時獲取更多干貨!!
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/224896.html
標籤:其他
上一篇:新手一看就懂的執行緒池!

