到底什么是邊緣計算?邊緣計算有哪些分類?邊緣計算與中心云的關(guān)系是什么?本文將抽絲剝繭,深入淺出,詳細闡述對邊緣計算與云原生的理解與思考。
云計算發(fā)展史,就是虛擬化技術(shù)的發(fā)展史。近20年來云計算與互聯(lián)網(wǎng)相互促進高速發(fā)展,中心云技術(shù)成為全社會通用的基礎(chǔ)設(shè)施。隨著物聯(lián)網(wǎng)、人工智能等技術(shù)的不斷發(fā)展,尤其是產(chǎn)業(yè)互聯(lián)網(wǎng)發(fā)展落地,中心云計算開始相形見絀,分散式邊緣計算在當下被重新寄予厚望。如果中心云計算是由技術(shù)創(chuàng)新驅(qū)動的,那么邊緣計算一定是業(yè)務(wù)價值驅(qū)動的。
邊緣計算的理解與思考
邊緣計算的定義
邊緣計算當前沒有準確定義,從IT云計算領(lǐng)域視角,邊緣計算被看作中心云計算的拓展。邊緣計算產(chǎn)業(yè)聯(lián)盟對邊緣計算的定義:“在靠近物或數(shù)據(jù)源頭的網(wǎng)絡(luò)邊緣側(cè),融合網(wǎng)絡(luò)、計算、存儲、應(yīng)用核心能力的開放平臺,就近提供邊緣智能服務(wù),滿足行業(yè)數(shù)字化在敏捷連接、實時業(yè)務(wù)、數(shù)據(jù)優(yōu)化、應(yīng)用智能、安全與隱私保護等方面的關(guān)鍵需求”。從CT電信領(lǐng)域視角,邊緣計算最初也被稱為移動邊緣計算(MEC)。歐洲電信標準協(xié)會(ETSI)對MEC的定義:“移動邊緣計算在移動網(wǎng)絡(luò)的邊緣、無線接入網(wǎng)(RAN)的內(nèi)部以及移動用戶的近處提供了一個IT服務(wù)環(huán)境以及云計算能力”。
邊緣計算的定義各有側(cè)重,但核心思想基本一致——邊緣計算是基于云計算核心技術(shù),構(gòu)建在邊緣基礎(chǔ)設(shè)施之上的新型分布式計算形式,在邊緣端靠近最終用戶提供計算能力,是一種靠近數(shù)據(jù)源的現(xiàn)場云計算。
中心云計算憑借其強大的數(shù)據(jù)中心,為業(yè)務(wù)應(yīng)用提供大規(guī)模池化,彈性擴展的計算、存儲、網(wǎng)絡(luò)等基礎(chǔ)設(shè)施服務(wù),更適用于非實時、長周期數(shù)據(jù)、業(yè)務(wù)決策場景;邊緣計算則聚焦在實時性、短周期數(shù)據(jù)、本地決策等業(yè)務(wù)場景,比如當下熱門的音視頻直播、IoT、產(chǎn)業(yè)互聯(lián)網(wǎng)、虛擬現(xiàn)實甚至元宇宙等,將工作負載下沉至離終端設(shè)備或者靠近最終用戶的地方,以此實現(xiàn)更低的網(wǎng)絡(luò)延遲,提升用戶的使用體驗。
“章魚式”邊緣計算
邊緣是相對中心式計算的邊緣分散式計算。邊緣計算的核心目標是快速決策,將中心云的計算能力拓展至“最后一公里”。因此它不能獨立于中心云,而是在云-邊-端的整體架構(gòu)之下,有中心式管控決策,也有分散式邊緣自主決策,即章魚式邊緣計算。
如上圖漫畫中所示,章魚全身神經(jīng)元中心式腦部占40%,其余60%在分散式腿部,形成1個大腦總控協(xié)調(diào)+N個小腦分散執(zhí)行的結(jié)構(gòu)。1個大腦擅長全局調(diào)度,進行非實時、長周期的大數(shù)據(jù)處理與分析;N個小腦側(cè)重局部、小規(guī)模數(shù)據(jù)處理,適用于現(xiàn)場級、實時、短周期的智能分析與快速決策。
章魚式邊緣計算采用中心云+邊緣計算的分布式云邊一體化架構(gòu),海量終端采集到數(shù)據(jù)后,在邊緣完成小規(guī)模局部數(shù)據(jù)的實時決策處理,而復(fù)雜大規(guī)模的全局性決策處理則匯總至中心云深入分析處理。
邊緣計算的位置
邊緣計算位于中心云及終端之間,將云計算能力由中心下沉到邊緣,通過云邊協(xié)同的架構(gòu)解決特定的業(yè)務(wù)需求,能最大程度降低傳輸時延,這也是邊緣計算的核心價值。但中心云與終端之間的網(wǎng)絡(luò)傳輸路徑經(jīng)由接入網(wǎng)(距離30公里,延遲5到10毫秒),匯聚網(wǎng),城際網(wǎng)(距離50到100公里,延遲15到30毫秒)到骨干網(wǎng)(距離200公里,延遲50毫秒),最后才到數(shù)據(jù)中心(假定數(shù)據(jù)中心IDC都在骨干網(wǎng)),耗時數(shù)據(jù)是正常網(wǎng)絡(luò)擁塞的撥測統(tǒng)計值,即業(yè)務(wù)側(cè)感知的實際延遲數(shù)據(jù),雖不是非常精確,但足夠輔助架構(gòu)決策。
云計算能力由中心逐步下沉到邊緣,節(jié)點數(shù)量增多,覆蓋范圍縮小,運維服務(wù)成本快速增加。根據(jù)國內(nèi)網(wǎng)絡(luò)(國內(nèi)有多張骨干網(wǎng),分別是電信CHINANET與CN2,聯(lián)通CNCNET以及移動CMNET)現(xiàn)狀,骨干網(wǎng)節(jié)點,城際網(wǎng)節(jié)點,匯聚網(wǎng)節(jié)點,接入網(wǎng)節(jié)點,以及數(shù)以萬計的業(yè)務(wù)現(xiàn)場計算節(jié)點都可以安置邊緣計算,因此范圍太廣難以形成統(tǒng)一標準。因此我們說中心云計算由技術(shù)定義,邊緣計算由網(wǎng)絡(luò)與業(yè)務(wù)需求定義。
邊緣計算生態(tài)參與者眾多,云廠商、設(shè)備廠商、運營商三大關(guān)鍵服務(wù)商方以及一些新型AI服務(wù)商等,都是從各自現(xiàn)有優(yōu)勢延伸,拓展更多客戶及市場空間。設(shè)備商借助物聯(lián)網(wǎng)逐漸構(gòu)建單一功能的專業(yè)云;云廠商從中心化的公有云開始下沉,走向分布式區(qū)域云,區(qū)域云之間通過云聯(lián)網(wǎng)打通,形成一個覆蓋更大的云。運營商在互聯(lián)網(wǎng)時代被公有云及繁榮的移動應(yīng)用完全屏蔽只能充當管道,但在邊緣計算時代,業(yè)務(wù)及網(wǎng)絡(luò)定義邊緣計算,運營商重新回歸焦點,不可替代。
邊緣計算的類型
1、網(wǎng)絡(luò)定義的邊緣計算
通過優(yōu)化終端與云中心網(wǎng)絡(luò)路徑,將中心云能力逐漸下沉至靠近終端,實現(xiàn)業(yè)務(wù)就近接入訪問。從中心到邊緣依次分為區(qū)域云/中心云,邊緣云/邊緣計算,邊緣計算/本地計算三大類型:
區(qū)域云/中心云:將中心云計算的服務(wù)在骨干網(wǎng)拓展延伸,將中心化云能力拓展至區(qū)域,實現(xiàn)區(qū)域全覆蓋,解決在骨干網(wǎng)上耗時,將網(wǎng)絡(luò)延遲優(yōu)化至30ms左右,但邏輯上仍是中心云服務(wù)。
邊緣云/邊緣計算:將中心云計算的服務(wù)沿著運營商的網(wǎng)絡(luò)節(jié)點延伸,構(gòu)建中小規(guī)模云服務(wù)或類云服務(wù)能力,將網(wǎng)絡(luò)延遲優(yōu)化至15ms左右,比如多接入邊緣計算(MEC)、CDN。
邊緣計算/本地計算:主要是接近終端的現(xiàn)場設(shè)備及服務(wù)能力,將終端部分邏輯剝離出來,實現(xiàn)邊緣自主的智能服務(wù),由云端控制邊緣的資源調(diào)度、應(yīng)用管理與業(yè)務(wù)編排等能力,將網(wǎng)絡(luò)延遲優(yōu)化至5ms左右,比如多功能一體機、智能路由器等。
總的來說,基于網(wǎng)絡(luò)定義的邊緣計算,更多是面向消費互聯(lián)業(yè)務(wù)及新型2C業(yè)務(wù),將云中心的能力及數(shù)據(jù)提前下沉至邊緣,除了經(jīng)典的CDN,視頻語音業(yè)務(wù)外,還有今年大火的元宇宙等。
當前大部分面向消費互聯(lián)業(yè)務(wù)都是通過安置在骨干網(wǎng)的中心云計算能力支持,時延在30ms到50ms,遠小于本身云端后端業(yè)務(wù)處理的延遲;算力下沉至邊緣的初衷,主要是實現(xiàn)中心云海量請求壓力分散,用戶體驗優(yōu)化等,對業(yè)務(wù)都屬于錦上添花,而非雪中送炭。
這里說一下運營商網(wǎng)絡(luò),中心云計算技術(shù),是將數(shù)據(jù)中心內(nèi)部網(wǎng)絡(luò)全部虛擬化,即云內(nèi)網(wǎng)絡(luò),衍生出VPC,負載均衡等諸多產(chǎn)品;數(shù)據(jù)中心外部幾乎完全屏蔽運營商網(wǎng)絡(luò),只提供彈性公網(wǎng)IP及互聯(lián)網(wǎng)出口帶寬服務(wù),中心云計算與運營商網(wǎng)絡(luò)沒有融合;但從中心云計算演進到邊緣計算,是強依賴網(wǎng)絡(luò)將中心云與邊緣鏈接起來,如果中心云是大腦,邊緣計算是智能觸角,那么網(wǎng)絡(luò)就是神經(jīng),就是動脈血管,但實際上整體網(wǎng)絡(luò)規(guī)劃與建設(shè)發(fā)生在云計算發(fā)展之前,并不是專門服務(wù)云計算的,所以中心云計算與運營商網(wǎng)需要融合,即云網(wǎng)融合,云網(wǎng)融合最終目標是實現(xiàn)云能力的網(wǎng)絡(luò)化調(diào)度編排,網(wǎng)絡(luò)能力的云化快速定義。希望借助新型業(yè)務(wù)需求和云技術(shù)創(chuàng)新,驅(qū)動運營商網(wǎng)絡(luò)架構(gòu)深刻變革升級開放。
當前,網(wǎng)絡(luò)的能力極大限制了云計算的發(fā)展,在邊緣計算及物聯(lián)網(wǎng)建設(shè)過程中尤為明顯。云網(wǎng)融合與算力網(wǎng)絡(luò)依然還是運營商的獨家游戲,新一代5G顛覆性技術(shù)變革,引爆整個領(lǐng)域的顛覆性巨變,也只解決了海量設(shè)備接入及設(shè)備低延遲接入的問題,后端整體配套及解決方案明顯跟不上。就當前情況來看,依然還是5G找業(yè)務(wù)的尷尬局面,未來5G在實體產(chǎn)業(yè)領(lǐng)域(港口、碼頭、礦山等)領(lǐng)域,相比消費者領(lǐng)域,相信會帶來更大變革與價值。
2、業(yè)務(wù)定義的邊緣計算
除了面向消費者的互聯(lián)網(wǎng)邊緣場景,邊緣計算更多的是面向?qū)嶓w產(chǎn)業(yè)及智慧化社會衍生的場景。
對于實體產(chǎn)業(yè)場景來說,由于歷史原因,在邊緣及現(xiàn)場存在大量異構(gòu)的基礎(chǔ)設(shè)施資源;通過業(yè)務(wù)需求驅(qū)動邊緣計算平臺的建設(shè),不僅要整合利用現(xiàn)有基礎(chǔ)設(shè)施資源,還要將中心云計算技術(shù)及能力下沉至邊緣及現(xiàn)場,實現(xiàn)大量存量業(yè)務(wù)運營管控上云,海量數(shù)據(jù)統(tǒng)一入湖,以此支持整個企業(yè)的數(shù)字化轉(zhuǎn)型。
對于智慧化社會衍生場景來說,越是新型的業(yè)務(wù),對網(wǎng)絡(luò)時延敏感越高,數(shù)據(jù)量越大,結(jié)構(gòu)化數(shù)據(jù)逐漸轉(zhuǎn)化成非結(jié)構(gòu)化數(shù)據(jù),需要人工智能,神經(jīng)網(wǎng)絡(luò)等高等智能化技術(shù)支持。
當前對網(wǎng)絡(luò)時延敏感的新型業(yè)務(wù)場景,都是通過云端總控管理,設(shè)備現(xiàn)場實時計算這種分布式架構(gòu)策略,以此減弱對網(wǎng)絡(luò)的強依賴。面向業(yè)務(wù)將邊緣計算分為智能設(shè)備/專業(yè)云及產(chǎn)業(yè)邊緣/行業(yè)云兩種類型:
智能設(shè)備/專業(yè)云:基于云計算能力之上,圍繞智能設(shè)備提供整體化,有競爭力的解決方案,包含智能設(shè)備、云端的服務(wù)以及端到云之間的邊緣側(cè)服務(wù),比如視頻監(jiān)控云、G7貨運物聯(lián)等;
產(chǎn)業(yè)邊緣/行業(yè)云:也基于云計算能力之上,圍繞行業(yè)應(yīng)用及場景,提供套件產(chǎn)品及解決方案,比如物流云、航天云等。
總的來說,基于業(yè)務(wù)定義的邊緣計算,更多是面向智能設(shè)備及實體產(chǎn)業(yè),對智能設(shè)備,從AVG,密集式存儲,機械手臂等單一功能的智能設(shè)備,到無人機,無人駕駛車等超復(fù)雜的智能設(shè)備,云計算能力不僅支撐設(shè)備控制管理應(yīng)用的運行,同時借助中心云計算能力拓展至邊緣側(cè),解決這種產(chǎn)品上云,無法集中化標準化管理難題;對產(chǎn)業(yè)邊緣,通過云計算技術(shù),結(jié)合行業(yè)場景的抽象總結(jié),構(gòu)建行業(yè)通用的產(chǎn)品及解決方案,隨著整個產(chǎn)業(yè)互聯(lián)網(wǎng)加速建設(shè),是邊緣計算未來發(fā)展的重點方向。
小結(jié)
對于規(guī)模較大的企業(yè),云邊場景非常復(fù)雜,中心云計算平臺與邊緣計算平臺建設(shè),不僅應(yīng)對業(yè)務(wù)需求,還要面臨諸多基礎(chǔ)設(shè)施問題:在中心云計算面臨多云使用多云互通問題;在邊緣網(wǎng)絡(luò)鏈路面臨多運營商的骨干網(wǎng),多云運營商網(wǎng)絡(luò)及多云的云網(wǎng)融合問題;在端側(cè)接入網(wǎng)面臨多運營商5G網(wǎng)絡(luò)的共享的問題等,很多問題只能通過治理的手段應(yīng)對,無法從技術(shù)平臺層面徹底解決。
總的來說,邊緣計算范圍大,場景泛,目前整個行業(yè)缺少經(jīng)典的案例及標準。因此推動邊緣計算落地,一定是面向真實的業(yè)務(wù)場景及需求整體規(guī)劃,面向價值逐步建設(shè)。
Kubernetes從中心走向邊緣
Kubernetes遵循以應(yīng)用為中心的技術(shù)架構(gòu)與思想,以一套技術(shù)體系支持任意負載,運行于任意基礎(chǔ)設(shè)施之上;向下屏蔽基礎(chǔ)設(shè)施差異,實現(xiàn)底層基礎(chǔ)資源統(tǒng)一調(diào)度及編排;向上通過容器鏡像標準化應(yīng)用,實現(xiàn)應(yīng)用負載自動化部署;向外突破中心云計算的邊界,將云計算能力無縫拓展至邊緣及現(xiàn)場,快速構(gòu)建云邊一體基礎(chǔ)設(shè)施。
將云原生技術(shù)從中心拓展到邊緣,不僅實現(xiàn)了云邊基礎(chǔ)設(shè)施技術(shù)架構(gòu)大一統(tǒng),業(yè)務(wù)也實現(xiàn)了云邊自由編排部署。相對于Kubernetes在中心云的革命性創(chuàng)新,在邊緣場景雖優(yōu)勢明顯,但缺點也很致命,因為邊緣側(cè)存在資源有限、網(wǎng)絡(luò)受限不穩(wěn)定等特殊情況,需要根據(jù)不同業(yè)務(wù)場景,選擇不同Kubernetes邊緣方案。
Kubernetes架構(gòu)及邊緣化的挑戰(zhàn)
Kubernetes是典型的分布式架構(gòu),Master控制節(jié)點是集群“大腦”,負責管理節(jié)點,調(diào)度Pod以及控制集群運行狀態(tài)。Node工作節(jié)點,負責運行容器(Container),監(jiān)控/上報運行狀態(tài)。邊緣計算場景存在以下比較明顯的挑戰(zhàn):
狀態(tài)強一致且集中式存儲架構(gòu),屬于中心云計算的大成產(chǎn)品,基于大規(guī)模的池化資源的編排調(diào)度實現(xiàn)業(yè)務(wù)持續(xù)服務(wù)。
Master管控節(jié)點與Worker工作節(jié)點通過List-Watch機制,實現(xiàn)狀態(tài)任務(wù)實時同步,但是流量較大,Worker工作節(jié)點完全依賴Master節(jié)點持久化數(shù)據(jù),無自治能力。
Kubelet承載太多邏輯處理,各種容器運行時各種實現(xiàn)的兼容,還有Device Plugin硬件設(shè)備驅(qū)動,運行占用資源高達700M;對資源有限的邊緣節(jié)點負擔太重,尤其是低配的邊緣設(shè)備。
邊緣計算涉及的范圍大、場景復(fù)雜,尚無統(tǒng)一標準;Kubernetes開源社區(qū)的主線版本并無邊緣場景的適配計劃。
Kubernetes邊緣化運行方案
針對中心云計算及邊緣計算這種云邊分布式架構(gòu),需要將Kubernetes適配成適合邊緣分布式部署的架構(gòu),通過多集群管理實現(xiàn)統(tǒng)一管理,實現(xiàn)中心云管理邊緣運行,整體分為三種方案:
集群Cluster:將Kubernetes標準集群下沉至邊緣,優(yōu)點是無需Kubernetes做定制化研發(fā),同時可以支持Kubernetes多版本,支持業(yè)務(wù)真正實現(xiàn)云邊架構(gòu)一致;缺點是管理資源占用多。方案比較適合區(qū)域云/中心云、邊緣計算/本地計算以及規(guī)模較大的產(chǎn)業(yè)邊緣場景。
單節(jié)點Single Node:將Kubernetes精簡,部署在單節(jié)點設(shè)備之上,優(yōu)點與集群Cluster方案一致,缺點是Kubernetes能力不完整,資源的占用會增加設(shè)備的成本,對業(yè)務(wù)應(yīng)用無法保證云邊一致的架構(gòu)部署運行,沒有解決實際問題。
邊緣節(jié)點Remote Node:基于Kubernetes二次開發(fā)增強擴展,將Kubernetes解耦適配成云邊分布式架構(gòu)的場景,中心化部署Master管理節(jié)點,分散式部署Worker管理節(jié)點。
此外,一致性是邊緣計算的痛點,在邊緣增加一個Cache即可實現(xiàn)斷網(wǎng)特殊情況的邊緣自治,同時可以保證正常網(wǎng)絡(luò)情況的數(shù)據(jù)一致;還有就是Kubelet比較重的問題,隨著Kubernetes放棄Docker已經(jīng)開始精簡;同時硬件更新迭代較快,相比少量硬件成本,保持Kubernetes原生及通用性為大。其實更希望Kubernetes社區(qū)本身提供適配邊緣化方案,同時考慮為Kubelet增加緩存機制。
Kubernetes邊緣容器快速發(fā)展
Kubernetes已成為容器編排和調(diào)度的事實標準,針對邊緣計算場景,目前國內(nèi)各個公有云廠商都開源了各自基于Kubernetes的邊緣計算云原生項目,比如阿里云向CNCF貢獻的OpenYurt,采用邊緣節(jié)點Remote Node方案,是業(yè)界首個開源的非侵入式邊緣計算云原生平臺,秉承“Extending your native Kubernetes to Edge”的非侵入式設(shè)計理念,擁有可實現(xiàn)邊緣計算全場景覆蓋的能力。華為、騰訊、百度等,也都開源了自己的邊緣容器平臺。
邊緣容器的快速發(fā)展帶動了領(lǐng)域的創(chuàng)新,但一定程度上也導(dǎo)致構(gòu)建邊緣計算平臺時難以抉擇。從技術(shù)架構(gòu)來看,幾個邊緣容器產(chǎn)品總的架構(gòu)思路主要是將Kubernetes解耦成適合云邊、弱網(wǎng)絡(luò)及資源稀缺的邊緣計算場景,本質(zhì)上無太大差異;從產(chǎn)品功能來看也是如此,基本上都涵蓋云邊協(xié)同、邊緣自治、單元化部署功能等。
如何構(gòu)建云邊一體化云原生平臺
現(xiàn)階段,圍繞Kubernetes容器平臺,構(gòu)建云邊一體化云原生基礎(chǔ)設(shè)施平臺能力是邊緣計算平臺的最佳選擇,通過云端統(tǒng)一的容器多集群管理,實現(xiàn)分散式集群統(tǒng)一管理,同時標準化Kubernetes集群規(guī)格配置:
標準集群(大規(guī)模):支持超過400個節(jié)點的大規(guī)模集群,配置為ETCD+Master 3臺8c16G,Prometheus+Ingress 5臺8C16G,N*Work節(jié)點;主要是業(yè)務(wù)規(guī)模較大的云原生應(yīng)用運行場景;
標準集群(中等規(guī)模):支持超過100個節(jié)點以內(nèi)的集群,ETCD+Master+Prometheus 3臺8c16G,N*Work節(jié)點;主要是業(yè)務(wù)規(guī)模中等的場景;
邊緣原生容器集群:在云端部署集群管理節(jié)點,將邊緣節(jié)點單獨部署業(yè)務(wù)現(xiàn)場,支持運行單業(yè)務(wù)場景的應(yīng)用,比如IoT物理設(shè)備接入?yún)f(xié)議解析應(yīng)用,視頻監(jiān)控分析AI算法模型等業(yè)務(wù)場景。
按照業(yè)務(wù)場景需求選擇最優(yōu)容器集群方案,其中邊緣容器集群方案,與其他集群方案差別較大,其他集群依然保持中心云集群服務(wù)一致,基礎(chǔ)資源集中并且池化,所有應(yīng)用共享整個集群資源;而邊緣容器集群Master管理節(jié)點集中部署,共享使用;Worker節(jié)點都是分散在業(yè)務(wù)現(xiàn)場,按需自助增加,自運維且獨占使用。
當前邊緣容器領(lǐng)域短時間內(nèi)很難有大一統(tǒng)的開源產(chǎn)品,因此現(xiàn)階段建議通過標準的Kubernetes API來集成邊緣原生容器集群,這種兼容所有邊緣容器的中庸方案,如果非要擇其一,建議是OpenYurt,非侵入式設(shè)計,整體技術(shù)架構(gòu)及實現(xiàn)更加優(yōu)雅。
OpenYurt以上游開源項目Kubernetes為基礎(chǔ),針對邊緣場景適配的發(fā)行版。是業(yè)界首個依托云原生技術(shù)體系、“零”侵入實現(xiàn)的智能邊緣計算平臺。具備全方位的“云、邊、端一體化”能力,能夠快速實現(xiàn)海量邊緣計算業(yè)務(wù)和異構(gòu)算力的高效交付、運維及管理。
總結(jié)
邊緣計算平臺的建設(shè),以Kubernetes為核心的云原生技術(shù)體系,無疑是當前最佳的選擇與建設(shè)路徑。但是云原生體系龐大,組件復(fù)雜,將體系下沉至邊緣會面臨很大的挑戰(zhàn)與困難,同時充滿巨大的機遇及想象空間。業(yè)務(wù)應(yīng)用想要真正踐行邊緣的云原生體系,需要從理念、系統(tǒng)設(shè)計、架構(gòu)設(shè)計等多方面來共同實現(xiàn),才能充分發(fā)揮邊緣的優(yōu)勢及價值。