華為云發(fā)布容器網(wǎng)絡(luò)“嚇人技術(shù)” 互聯(lián)網(wǎng)公司都愛(ài)用它
近日,華為云 • 云容器引擎CCE國(guó)內(nèi)首發(fā)支持了基于Kubernetes的容器網(wǎng)絡(luò)高吞吐IPVS模式。該特性解決了大規(guī)模場(chǎng)景下服務(wù)間通信性能劣化的問(wèn)題,比起Kubernetes中原生的iptables模式有著更好的性能表現(xiàn)。IPVS早已被廣泛應(yīng)用于互聯(lián)網(wǎng)視頻領(lǐng)域,而本次華為云CCE在國(guó)內(nèi)率先將IPVS技術(shù)應(yīng)用在Kubernetes容器網(wǎng)絡(luò)部署中,使容器網(wǎng)絡(luò)方面的性能得到了革命性的提升,滿(mǎn)足中大型項(xiàng)目的的網(wǎng)絡(luò)性能需求。
每秒十萬(wàn)次處理的嚇人技術(shù)
IPVS全稱(chēng)IP Virtual Server,是LVS項(xiàng)目的一部分,是一款運(yùn)行在Linux kernel當(dāng)中的四層負(fù)載均衡器,其性能優(yōu)異,可以輕松處理每秒10萬(wàn)次以上的轉(zhuǎn)發(fā)請(qǐng)求,在中大型互聯(lián)網(wǎng)項(xiàng)目,如視頻、直播、大型游戲等被廣泛使用。
|
|
|
|
|
CCE 率先支持IPVS使能互聯(lián)網(wǎng)大場(chǎng)景
華為云CCE基于業(yè)界Kubernetes和Docker生態(tài),深度整合華為云的計(jì)算、存儲(chǔ)、網(wǎng)絡(luò)等IaaS資源,為用戶(hù)提供高效自動(dòng)化的企業(yè)級(jí)云容器全棧解決方案。一直以來(lái),在Kubernetes 中原生的 Service 負(fù)載均衡是基于Iptables 實(shí)現(xiàn),但iptables有一個(gè)致命的問(wèn)題就是當(dāng)部署的服務(wù)數(shù)達(dá)到一定規(guī)模(例如上萬(wàn))時(shí),會(huì)導(dǎo)致網(wǎng)絡(luò)性能瓶頸。究其原因主要是在轉(zhuǎn)發(fā)規(guī)則更新時(shí),全量式更新消耗了非常多的時(shí)間。據(jù)測(cè)算,當(dāng)集群中有2萬(wàn)個(gè)服務(wù)時(shí),增加一條規(guī)則需要耗時(shí)5h。此外,iptables還會(huì)出現(xiàn)按規(guī)則刷新時(shí)服務(wù)斷開(kāi)等問(wèn)題,這些都限制了K8S集群在大規(guī)模場(chǎng)景下的應(yīng)用。
華為作為CNCF社區(qū)的初創(chuàng)成員和白金會(huì)員,K8S的最早采用者之一,積極回饋Kubernetes社區(qū),綜合貢獻(xiàn)度位居全球前四,國(guó)內(nèi)***。華為基于多年來(lái)在網(wǎng)絡(luò)技術(shù)上積累的實(shí)踐經(jīng)驗(yàn),將IPVS引入K8S內(nèi)部代替了iptables,解決了規(guī)則匹配和更新時(shí)耗時(shí)的問(wèn)題,同時(shí)也降低了規(guī)則維護(hù)時(shí)的資源開(kāi)銷(xiāo),大大優(yōu)化了服務(wù)間的轉(zhuǎn)發(fā)性能。在經(jīng)歷電信級(jí)大規(guī)模場(chǎng)景實(shí)踐考驗(yàn)后,現(xiàn)正式將K8S IPVS技術(shù)應(yīng)用在CCE上,幫助用戶(hù)應(yīng)對(duì)大規(guī)模場(chǎng)景的負(fù)載均衡處理。
IPVS對(duì)比iptables 性能卓越高下立現(xiàn)
將IPVS接入Kubernetes聽(tīng)上去很酷,但是在具體效果體現(xiàn)上又如何呢,我們從
在影響大規(guī)模場(chǎng)景部署轉(zhuǎn)發(fā)的更新時(shí)延、以及帶寬影響兩個(gè)方面用iptables和IPVS兩種轉(zhuǎn)發(fā)模式進(jìn)行兩輪詳細(xì)的測(cè)評(píng)PK。
Round1轉(zhuǎn)發(fā)規(guī)則更新時(shí)的時(shí)延PK:從分鐘級(jí)到微秒級(jí)
Service數(shù)量和規(guī)則更新時(shí)延
上圖可見(jiàn),當(dāng)集群中的Service達(dá)到2萬(wàn)規(guī)模時(shí),iptable的規(guī)則更新的時(shí)延從50us暴增到5小時(shí),而IPVS的規(guī)則更新時(shí)延僅僅上升至70us,體驗(yàn)上沒(méi)有任何變化。
Round2 網(wǎng)絡(luò)帶寬時(shí)延 穩(wěn)定表現(xiàn)性能無(wú)傷
Service數(shù)量和網(wǎng)絡(luò)帶寬
上圖可見(jiàn),當(dāng)集群中Service增加時(shí),iptables模式下***個(gè)創(chuàng)建的服務(wù)和***一個(gè)創(chuàng)建的服務(wù)的網(wǎng)絡(luò)帶寬有著巨大的差別(因?yàn)?**一個(gè)服務(wù)規(guī)則更新的時(shí)延很長(zhǎng)),而IPVS模式服務(wù)的帶寬并無(wú)多少差別。
在云容器引擎CCE的IPVS模式下創(chuàng)建集群,不但可以一鍵式完成部署,還可以獲得相比iptables更優(yōu)秀的服務(wù)間通信性能。目前,K8S IPVS已支持ClusterIP,NodePort,External IP,Load Balancer等多種類(lèi)型Service,兼容iptables模式幾乎全部的現(xiàn)有能力,針對(duì)用戶(hù)自身場(chǎng)景同時(shí)支持兩種模式的***運(yùn)行。IPVS模式的引入,消除了K8S在大規(guī)模場(chǎng)景下的網(wǎng)絡(luò)瓶頸,解決了大型應(yīng)用在K8S上運(yùn)行的后顧之憂(yōu),為用戶(hù)提供體驗(yàn)更加***的云上應(yīng)用服務(wù)。
注:Kubernetes是Linux Foundation旗下基金會(huì)CNCF(Cloud Native Computing Foundation)管理的開(kāi)源容器編排項(xiàng)目,目前已成為容器編排市場(chǎng)的主導(dǎo)者;而華為云CCE容器引擎團(tuán)隊(duì)是全球領(lǐng)先的Kubernetes容器產(chǎn)品研發(fā)團(tuán)隊(duì),無(wú)論是在社區(qū)貢獻(xiàn)、生態(tài)構(gòu)建、產(chǎn)品自研競(jìng)爭(zhēng)力構(gòu)建上都***:
• 中國(guó)唯一獲得CNCF技術(shù)監(jiān)督委員會(huì)(ToC)委員席位(全球僅9席)
• 中國(guó)唯一獲得Kubernetes社區(qū)指導(dǎo)委員會(huì)委員席位(全球僅13席)
• 中國(guó)唯一CNCF初創(chuàng)成員和白金會(huì)員
• 中國(guó)***Kubernetes & Docker社區(qū)綜合貢獻(xiàn)度,8名maintainer
• 全球首批獲得KSCPs(Kubernetes認(rèn)證服務(wù)提供商)資質(zhì)廠(chǎng)商
• 全球首批通過(guò)“Kubernetes一致性認(rèn)證”的云服務(wù)商
華為云應(yīng)用服務(wù)為用戶(hù)提供一站式的容器、微服務(wù)、區(qū)塊鏈等云上中間件服務(wù),助力企業(yè)應(yīng)用上云更簡(jiǎn)單,運(yùn)行更高效。云容器引擎CCE詳情可見(jiàn):https://www.huaweicloud.com/product/cce.html