阿里雲的「終端雲化」實踐,基於ENS進行邊緣架構構建
終端無休止的更新迭代,是軟體對計算資源的需求激增。
作者|王廣芳
編輯|IMMENSE
終端雲化:打破硬體的桎梏
近幾年,「終端雲化」技術開始規模化落地,其核心思想是「計算卸載」,即將智慧終端的計算任務卸載到邊緣雲虛擬終端處理,解決終端設備在算力和存儲等方面的不足。
比如最近火爆的雲遊戲,使得在低配的手機、PC端甚至智慧電視上玩大型高畫質遊戲成為可能。
為了更好的理解終端雲化的優勢和特點,下面將以阿里雲視圖計算產品VEC(Visual Edge Computing)為例進行說明。
視圖計算VEC重點服務的是影片影像設備(消費電子、攝影機、車載終端等)上雲場景,通過設備終端的標準協議接入,提供設備管理、視圖處理、視圖存儲等服務。
「終端雲化」技術打破了硬體的桎梏,其優勢可總結為以下兩點:
一是功能演進與終端設備解耦。
功能和性能的演進不再依賴終端設備的配置和升級,面對各種周期長、一致性差、兼容性等問題,只需要雲端服務統一升級即可。
比如:VEC服務的普通攝影機需要增加AI識別功能,不需花費巨資更換高價的智慧攝影機,只需將接入到雲端的影片流對接AI識別服務,簡單配置參數即可。
二是高效的規模化管理。
當終端設備規模到達一定規模後,終端本身的管理以及終端上生產數據的管理就是一個很大的挑戰了,尤其是VEC服務的視圖類設備,會產生大量的影片或圖片數據,在雲端基於平台進行設備管理、流處理、流存儲的能力是設備端無法企及的。
視圖計算VEC作為終端雲化的典型場景,重點構建了視圖設備一鍵上雲標準化協議、截圖/錄製/轉碼/混流等流媒體處理、視圖AI、視圖存儲等核心技術能力,但最核心的競爭力來自基於邊緣雲打造的架構優勢。
「終端雲化」為何依賴邊緣雲?
邊緣雲節點無處不在,離用戶更近、數據處理延時低,可帶來更好的體驗。
邊緣雲能為」終端雲化「帶來什麼?
仍然拿視圖計算VEC來進行說明,常規的VEC系統設計可以是完全的中心架構,構建起來比較簡單,如下圖所示。
可以看到,VEC系統應用統一部署在一個Region,面向全網所有的視圖設備提供GB協議和自研協議的接入服務,並支援接入設備以RTP或RTMP協議推流,進行切片錄製、截圖、轉碼、AI分析、存儲、實時播放、錄像回看等服務。
但是VEC產品服務了海量的視圖設備,視圖流數據需要持續上傳到平台進行處理,如果全部數據都到中心統一處理,成本是非常高的。
這類比較典型的終端雲化大流量場景,如果能夠將流量收斂到邊緣進行處理,將明顯降低流量成本,提升產品的競爭力。
同時,如果全網設備統一推流到中心,並不能確保所有設備推流的低延時體驗,邊緣就近接流是非常有必要的。
此時,邊緣架構的兩大優勢就顯現出來了。
一是就近接入,接流網關可以基於邊緣節點進行廣泛覆蓋,支援設備的就近低延時接入;
二是更低成本,設備的視圖流數據可以在邊緣完成處理和存儲,優化流量和存儲成本。
完整的邊緣架構系統是如何構建的?
接下來,如何設計業務系統的邊緣架構?
中心架構與邊緣架構的主要差異是,從「中心-終端」兩層架構到「中心-邊緣-終端」三層架構的演進。邊緣雲作為中間層,整體思路上將重點考慮終端能力的上移和中心能力的下沉。
終端能力上移可以降低終端硬體要求以及軟體複雜度,對於海量終端的場景,在終端成本優化和易運維方面會有明顯收益,這也是VEC在視圖設備上雲場景提供的價值邏輯。
中心能力下沉則主要評估業務系統中邊緣和中心有成本差異的模組,比如VEC的視圖流在邊緣接入後可以在邊緣完成處理和存儲,後續的視圖數據讀取也可以直接從邊緣訪問,這樣就大幅收斂了邊緣回到中心的流量,頻寬成本得到優化。
對VEC系統中心模組和邊緣模組的評估,可以提煉為以下幾類情況:
-
全局統一管控類的模組需要部署在中心,比如設備管理、許可權管理等;
-
中心和邊緣部署差異不明顯,可根據場景靈活選擇,或者優先中心部署,運維相對更簡單,比如信令網關等;
-
針對邊緣下沉場景需要在中心增加一些模組,比如節點管理、針對邊緣多節點的調度等;
-
服務型模組(視圖流處理和存儲相關模組)盡量下沉邊緣,通過調度進行區域分散式服務,比如接流網關、流處理、視圖存儲等。
最終的VEC邊緣架構如下圖所示。
其中ENS是阿里雲的邊緣雲產品-邊緣節點服務(Edge Node Service),提供了虛機、容器等多種形態實例,塊存儲、對象存儲等多種存儲服務,以及LB、NAT等多種網路組件,在全國完成重點城市的全域覆蓋。
VEC基於ENS進行邊緣架構構建,明顯降低了技術方案落地的研發成本,同時在邊緣基礎設施層的穩定性方面產品級的保障,可以更專註業務系統自身的技術迭代。
針對邊緣架構,系統要建設一些關鍵能力,更好地發揮邊緣架構的優勢,主要包括:
資源與業務調度能力
資源由中心統一模型升級為邊緣分散式模型,配套的資源和業務調度成為系統核心能力,包括訪問和流量就近調度,以及節點故障或水位較高時的可用性調度等;
雲邊協同管控能力
中心管控和邊緣管控一起形成閉環,比如用戶通過中心OpenAPI編排一個處理流程,首先切片錄製,存儲為固定時長的文件,然後讀取文件進行AI識別,就涉及到中心解析模板->多模組參數下發邊緣->邊緣模組按流程和參數處理->識別的結構化資訊回傳中心->中心資訊處理等雲邊交互管控的複雜鏈路;
雲邊穩定且安全的通訊能力
中心與邊緣基於互聯網的遠程通訊RPC,需重點考慮通訊安全和通訊可靠性,雲邊協同管控依賴雲邊穩定且安全的通訊能力;
邊緣自治管控能力
邊緣需要具備一定的自治管控能力,以應對高性能、高可用、雲邊一致性等場景的要求,比如減少邊緣處理邏輯中對中心的依賴,以及當雲邊通訊短時不可用時能夠持續服務並在恢復後進行狀態同步等。
構建一套完整的邊緣架構系統,還需要什麼?配套的系統能力。
主要包括:
邊緣節點高效部署
邊緣節點部署包括節點資源的申請和初始化,以及邊緣模組應用的部署和發布。邊緣架構需要大量的邊緣節點進行服務,節點的部署和納管必須標準且高效,應用容器化部署是一個不錯的選擇。
配置管理及配置動態下發
業務調度和雲邊協同管控等核心能力都有基於策略和配置進行動態管理的需求,實現靈活的場景適配,以及全網資源更高效的使用。
遠程運維繫統
遠程運維能力包括邊緣狀態和日誌的採集上報、監控告警、遠程診斷和處置等,互聯網的不穩定增加了遠程運維的挑戰,運維動作的鏈路長,故障因素多,需要針對核心運維場景做全鏈路能力建設。
VEC的支撐系統大圖如下,其中應用部署發布、服務發現治理、集群擴縮容等關鍵能力是基於ENS容器平台構建的。
邊緣雲的發展吸引了越來越多技術人的關注,在關注、參與邊緣雲自身能力演進的同時,相信更多的技術人更有機會做的事情,是推動自己的業務架構向邊緣架構演進。
視圖計算的架構可以面向更多終端雲化的場景進行擴展,演進成為更加通用的終端雲化平台。
在平台技術方面,可以將目前自研的ODCAP(Open Device Cloud Access Protocol)開放設備上雲協議用於更廣泛的終端雲化接入和管理,同時提供可視化的視圖流處理編排引擎,方便終端數據的複雜處理流程定義。
在邊緣架構演進方面,視圖數據被存儲到了數量眾多的邊緣節點中,數據操作都需要先定位節點再進行讀寫,複雜度較高。
技術上應該考慮將多個物理節點的存儲抽象成一個邏輯存儲,並封裝一套標準的邏輯對象存儲介面,這套介面可以和中心的對象存儲介面在使用體驗上完全一致。這個能力也已經在阿里雲邊緣雲ENS上孵化完成,開始對外產品化服務。
隨著邊緣場景的不斷豐富,邊緣雲才能獲得更好的發展。而邊緣雲的使命,就是支援各類邊緣場景和架構更好、更快、更穩的構建和發展。
總之,真正好的技術,是可以打破桎梏,彌合鴻溝的。
「影片雲技術」你最值得關注的音影片技術公眾號,每周推送來自阿里雲一線的實踐技術文章,在這裡與音影片領域一流工程師交流切磋。公眾號後台回復【技術】可加入阿里雲影片雲產品技術交流群,和業內大咖一起探討音影片技術,獲取更多行業最新資訊。