盤點:2022年值得關注的十大邊緣計算開源項目
根據(jù)IDC最新的「全球邊緣計算支出報告」指出,到2022 年,全球在邊緣計算上的支出預計將達到1760 億美元,比2021 年增長14.8%。企業(yè)和服務提供商在邊緣解決方案的硬體、軟體和服務上的支出預計將在2025 年達到近2740 億美元。
本文盤點了2022年值得關注的十大邊緣計算開源項目(排名不分先后)。
Akraino
Akraino 于 2018 年推出,現(xiàn)在是 LF Edge 的一部分。Akraino 是一組面向邊緣的開放基礎架構和應用程序藍圖,涵蓋了供應商和企業(yè)邊緣域的5G,AI,Edge IaaS / PaaS,IoT。Akraino目標是創(chuàng)建支持針對邊緣計算系統(tǒng)和應用程序優(yōu)化的高可用性云堆棧。它旨在改善企業(yè)邊緣、OTT 邊緣和運營商邊緣網(wǎng)絡的邊緣云基礎設施狀態(tài),為用戶提供新的靈活性,以快速擴展邊緣云服務,最大化邊緣支持的應用程序和功能,并幫助確保必須始終運行的系統(tǒng)的可靠性。
Akraino與 Airship、OpenStack、ONAP、ETSI MEC、GSMA、TIP、CNCF 和 ORAN 等多個上游開源社區(qū)/SDO 合作。Akraino 提供了一個完全集成的解決方案,支持集成堆棧的零接觸配置和零接觸生命周期管理。
2021年2月,Akraino Release 4 (R4) 發(fā)布7個新藍圖。借助 R4,Akraino 藍圖支持更多的用例、部署和 PoC,支持更高級別的靈活性,快速擴展公有云邊緣、云原生邊緣、5G、工業(yè)物聯(lián)網(wǎng)、電信和企業(yè)邊緣云服務并測試邊緣云藍圖以部署邊緣服務。
2021年10月,Akraino發(fā)布Release 5 (R5), 提供了一個功能齊全的開源邊緣堆棧,可在全球范圍內實現(xiàn)多種邊緣平臺。Akraino 的第五個版本帶來了三個新藍圖(總共 30 多個藍圖),并為跨邊緣的各種 Kubernetes 部署提供了額外支持,包括智能城市、云原生汽車和多租戶。
新的用例和藍圖為工業(yè)邊緣、公有云邊緣接口、聯(lián)合 ML、KubeEdge、私有 LTE/5G、SmartDevice Edge、互聯(lián)汽車、AR/VR、邊緣人工智能、Android 云原生、SmartNIC、Telco Core 和 Open-RAN、NFV、IOT、SD-WAN、SDN、MEC 等提供了邊緣堆棧。
官網(wǎng):https://www.lfedge.org/projects/akraino/
Github:https://github.com/akraino-edge-stack
StarlingX
StarlingX
是一個完整的云基礎設施軟件堆棧,適用于工業(yè)物聯(lián)網(wǎng)、電信、視頻交付和其他超低延遲用例中要求最苛刻的應用程序所使用的邊緣。憑借邊緣應用程序所需的確定性低延遲以及使分布式邊緣易于管理的工具,StarlingX
為現(xiàn)在可用于生產(chǎn)的可擴展解決方案中的邊緣實施提供了基于容器的基礎架構。
StarlingX 不是為邊緣用例提供參考平臺和差距定義,而是提供一個可部署、可擴展且高度可靠的邊緣基礎設施軟件平臺,以構建關鍵任務邊緣云。StarlingX 經(jīng)過測試并作為一個完整的堆棧發(fā)布,可確保各種開源組件之間的兼容性。其獨特的項目組件提供故障管理和服務管理等功能,以確保用戶應用程序的高可用性。StarlingX 社區(qū)針對安全性、超低延遲、極高的服務正常運行時間和簡化的操作優(yōu)化了解決方案。
2021年5月,StarlingX 社區(qū)宣布發(fā)布R5.0版本,包括引入了一個名為“edgeworker”節(jié)點的新功能,有利于工業(yè)物聯(lián)網(wǎng)和工廠車間自動化程度的提高;增加了對 Nvidia GPU 的支持;加強編排 FPGA 映像更新的能力;將 Vault 集成到機密管理平臺中,以提供安全存儲和訪問機密的能力。StarlingX 即將發(fā)布發(fā)布R6.0版本。
官網(wǎng):https://www.starlingx.io/
GitHub:https://github.com/starlingx
Baetyl
Baetyl 前身為“OpenEdge”,由百度發(fā)起,是中國首個開源邊緣計算平臺。Baetyl 作為第一階段項目加入 LF Edge。2019 年 9 月,百度宣布將 Baetyl 捐贈給 Linux Foundation Edge 旗下社區(qū)。Baetyl旨在打造一個 輕量、安全、可靠、可擴展性強的邊緣計算社區(qū),為中國邊緣計算技術的發(fā)展和不斷推進營造一個良好的生態(tài)環(huán)境。
Baetyl 將云計算能力拓展至用戶現(xiàn)場。提供臨時離線、低延時的計算服務,包括設備接入、消息路由、數(shù)據(jù)遙傳、函數(shù)計算、視頻采集、AI推斷、狀態(tài)上報、配置下發(fā)等功能。
Baetyl提供了一個通用的邊緣計算平臺,將不同類型的硬件設施和設備功能操作到一個標準化的容器運行時環(huán)境和API中,從而通過云和本地的遠程控制臺對應用程序、服務和數(shù)據(jù)流進行有效管理。Baetyl 還為邊緣操作系統(tǒng)配備了相應的工具鏈支持,通過一套內置服務和 API 降低開發(fā)邊緣計算的難度,并在未來提供圖形 IDE。
Baetyl v2 提供了一個全新的邊云融合平臺,采用云端管理、邊緣運行的方案,分成邊緣計算框架和云端管理套件兩部分,支持多種部署方式。可在云端管理所有資源,比如節(jié)點、應用、配置等,自動部署應用到邊緣節(jié)點,滿足各種邊緣計算場景,特別適合新興的強邊緣設備,比如 AI 一體機、5G 路側盒子等。
v2 和 v1 版本的主要區(qū)別
- 邊緣和云端框架全部向云原生演化,已支持運行在 K8S 或 K3S 之上。
- 引入聲明式的設計,通過影子(Report/Desire)實現(xiàn)端云同步(OTA)。
- 邊緣框架暫不支持進程(native)運行模式,由于運行在 K3S 上,所以整體的資源開銷會有增加。
- 邊緣框架將來會支持邊緣節(jié)點集群。
2021年6月,Baetyl 發(fā)布 2.2 版本,添加 EdgeX 支持、新 API、調試等功能。Baetyl 的新功能仍然基于云原生功能,繼續(xù)構建開放、安全、可擴展、可控的智能邊緣計算平臺。
2.2 版本中的特定新功能
- 支持使用 EdgeX Foundry
- 支持邊緣集群環(huán)境所需的新 API 定義
- 支持 DaemonSet 負載類型應用程序
- 用于遠程調試和遠程查看已部署應用程序的新 API 定義
- 用于 GPU 監(jiān)控和共享功能的新 API 定義
官網(wǎng):https://baetyl.io/
GitHub:https://github.com/baetyl/baetyl
EdgeX Foundry
EdgeX Foundry是LF Edge旗下的開源、供應商中立的Edge IoT中間件平臺。它從邊緣的傳感器(即“事物”)收集數(shù)據(jù),并充當雙重轉換引擎,向企業(yè)、云和本地應用程序發(fā)送和接收數(shù)據(jù)。EdgeX Foundry用于統(tǒng)一工業(yè)物聯(lián)網(wǎng)邊緣計算解決方案的生態(tài)系統(tǒng)。
EdgeX Foundry 的重點是通過利用云原生原則(例如松耦合的微服務、平臺獨立性) ,以及通過支持一個能夠滿足物聯(lián)網(wǎng)邊緣特定需求的架構,包括不同的連接協(xié)議、廣泛分布的計算節(jié)點的安全和系統(tǒng)管理來充分實現(xiàn)邊緣計算的優(yōu)勢。
EdgeX解決了分布式物聯(lián)網(wǎng)邊緣架構中“南北交匯”的邊緣節(jié)點和數(shù)據(jù)規(guī)范化的關鍵互操作性挑戰(zhàn)。
2021年6月,EdgeX Foundry發(fā)布了第二個主要版本,代號為Ireland ,Ireland專注于邊緣/物聯(lián)網(wǎng)解決方案,對 API 集進行大修,消除技術問題,提供更多基于消息的通信,并為采用者和開發(fā)人員簡化和保護接口,使平臺更易于使用和更可靠。
2021年12月,EdgeX Foundry 宣布發(fā)布EdgeX 2.1版本,代號為Jakarta,這是該項目的第 9個版本。Jakarta的重要意義在于它是 EdgeX 提供長期支持 (LTS) 的第一個版本:
- EdgeX長期支持 (LTS)
- EdgeX v2 API(適用于所有服務)
- 通過消息總線的設備服務到應用服務
- 提高安全性
- 新設備服務
- 簡化的設備配置文件
- 應用服務改進
- 使用 Angular JS 構建的新的和改進的 GUI
下一個 EdgeX 版本定于 2022 年春季發(fā)布,代號為“Kamakura”。Kamakura 很可能是另一個 dot 版本,它將再次向后兼容所有 EdgeX 2.x 版本(Ireland and Jakarta)。(EdgeX的發(fā)布節(jié)奏是每年發(fā)布兩次)
官網(wǎng):https://www.edgexfoundry.org/
GitHub:https://github.com/edgexfoundry
EdgeGallery
EdgeGallery是由華為、信通院、中國移動、中國聯(lián)通、騰訊、九州云、紫金山實驗室、安恒信息等八家創(chuàng)始成員發(fā)起的一個MEC邊緣計算開源項目。目的是打造一個符合5G 邊緣“聯(lián)接+計算”特點的邊緣計算公共平臺,實現(xiàn)網(wǎng)絡能力(尤其是5G網(wǎng)絡)開放的標準化和MEC應用開發(fā)、測試、遷移和運行等生命周期流程的通用化。
EdgeGallery要解決的是5G MEC邊緣計算平臺的標準不統(tǒng)一帶來的生態(tài)碎片化,產(chǎn)業(yè)規(guī)模做不大的問題。EdgeGallery社區(qū)聚焦5G邊緣計算MEC場景,通過開源協(xié)作構建起MEC邊緣的資源、應用、安全、管理的基礎框架和網(wǎng)絡開放服務的事實標準,并實現(xiàn)同公有云的互聯(lián)互通。在兼容邊緣基礎設施異構差異化的基礎上,構建起統(tǒng)一的MEC應用生態(tài)系統(tǒng)。
2021年12月31日,EdgeGallery社區(qū)正式發(fā)布第七個版本Gold Release,此版本是EdgeGallery的1.5.0正式版本。本次版本發(fā)布后,EdgeGallery共有32個代碼倉已經(jīng)發(fā)布。
V1.5.0版本在EdgeNative架構、集成開發(fā)平臺優(yōu)化、邊緣自治等功能上有明顯增強,并嘗試對APP變現(xiàn)和商業(yè)化流程進行探索。
亮點功能
MECM資源管理功能增強:
- 支持邊緣節(jié)點的資源管理,包括邊緣節(jié)點的資源信息,租戶信息等
- 支持APP的資源管理,包括APP使用的虛擬機列表,對應虛擬機的狀態(tài)與度量指標
- 支持邊緣資源的申請,包括虛擬機拉起,flavor設置,鏡像(應用)選擇等
- 支持邊緣虛擬機資源的維護,包括重啟,關閉,開機,遠程VNC等
EdgeGallery虛擬機場景增強:
- 支持靈活定義MEC節(jié)點內的網(wǎng)絡
- 支持靈活定義應用掛接的網(wǎng)絡
- 支持配置應用的網(wǎng)絡接口參數(shù)
- 支持在部署應用時靈活配置flavor
- 支持邊緣節(jié)點內的租戶隔離,EdgeGallery用戶與Openstack租戶綁定
官網(wǎng):https://www.edgegallery.org/
GitHub:https://github.com/EdgeGallery
K3s
K3s是由SUSE(原 Rancher Labs)完全通過CNCF(云原生計算基金會)認證的兼容 Kubernetes 發(fā)行版,所謂發(fā)行版,內核機制還是和 K8s 一樣,但是剔除了很多外部依賴以及 K8s 的 alpha、beta 特性,同時改變了部署方式和運行方式,目的是輕量化 K8s,并將其應用于 IoT 設備(比如樹莓派)。簡單來說,K3s 就是輕量級 K8s,消耗資源極少。為了實現(xiàn)這一點,K3s被設計成一個大約 45MB 的二進制文件,完全實現(xiàn)了 Kubernetes API。
K3s 沒有全稱,也沒有官方的發(fā)音。Kubernetes 是一個 10 個字母的單詞,簡寫為 K8s。由于設想的是在內存占用方面只是一半的大小,Kubernetes 一半大的就是一個 5 個字母的單詞,簡寫為 K3s。K3s 適用于邊緣計算、物聯(lián)網(wǎng)、CI、Development、ARM和嵌入 K8s場景。
完美適配邊緣環(huán)境:k3s是一個高可用的、經(jīng)過CNCF認證的Kubernetes發(fā)行版,專為無人值守、資源受限、偏遠地區(qū)或物聯(lián)網(wǎng)設備內部的生產(chǎn)工作負載而設計。
簡單且安全:k3s被打包成單個小于60MB的二進制文件,從而減少了運行安裝、運行和自動更新生產(chǎn)Kubernetes集群所需的依賴性和步驟。
針對ARM進行優(yōu)化:ARM64和ARMv7都支持二進制文件和多源鏡像。k3s在小到樹莓派或大到 AWS a1.4xlarge 32GiB服務器的環(huán)境中均能出色工作。
官網(wǎng):https://k3s.io/GitHub:https://
github.com/k3s-io/k3s
KubeEdge
KubeEdge是一個開源系統(tǒng),用于將容器化應用程序編排功能擴展到Edge的主機。它基于kubernetes構建,并為網(wǎng)絡應用程序提供基礎架構支持。云和邊緣之間的部署和元數(shù)據(jù)同步。KubeEdge是業(yè)界第一個邊緣容器平臺項目。2019 年 3 月 18 日KubeEdge被 CNCF 收錄,目前處于孵化級別。
KubeEdge的目標是創(chuàng)建一個開放平臺,使能邊緣計算,將容器化應用編排功能擴展到邊緣的節(jié)點和設備。
KubeEdge 的優(yōu)勢主要包括:
- 邊緣計算:通過在邊緣運行業(yè)務邏輯,可以在生成數(shù)據(jù)的地方保護和處理大量數(shù)據(jù)。這降低了邊緣和云之間的網(wǎng)絡帶寬要求和消耗。這提高了響應能力,降低了成本,并保護了客戶的數(shù)據(jù)隱私。
- 簡化開發(fā):開發(fā)人員可以編寫常規(guī)的基于 HTTP 或 MQTT 的應用程序,將它們容器化,然后在任何地方運行它們——無論是在邊緣還是在云端——以更合適的方式運行。
- Kubernetes 原生支持:使用 KubeEdge,用戶可以在邊緣節(jié)點上編排應用程序、管理設備以及監(jiān)控應用程序和設備狀態(tài),就像云中的傳統(tǒng) Kubernetes 集群一樣。
- 豐富的應用:很容易將現(xiàn)有的復雜機器學習、圖像識別、事件處理和其他高級應用程序獲取和部署到邊緣。
KubeEdge 的組件在兩個單獨的位置運行——云上和邊緣節(jié)點上。在云上運行的組件統(tǒng)稱為 CloudCore,包括 Controller 和 Cloud Hub。Cloud Hub 作為接收邊緣節(jié)點發(fā)送請求的網(wǎng)關,Controller 則作為編排器。在邊緣節(jié)點上運行的組件統(tǒng)稱為 EdgeCore,包括 EdgeHub,EdgeMesh,MetadataManager 和 DeviceTwin。
2021年10月,KubeEdge社區(qū)自發(fā)布了KubeEdge 1.8版本。本次版本包括大規(guī)模集群CloudCore的Active-Active HA支持、EdgeMesh架構修改、EdgeMesh跨局域網(wǎng)通信和Kubernetes依賴升級:
- CloudCore對大規(guī)模集群的主動HA支持[Beta]
- EdgeMesh架構修改
- EdgeMesh跨局域網(wǎng)通信
- Onvif設備映射器
- Kubernetes依賴關系升級
- 30多個bug修復和增強功能
官網(wǎng):https://kubeedge.io
GitHub:https://github.com/kubeedge/kubeedge
OpenYurt
OpenYurt是基于原生Kubernetes構建的,目標是對其進行擴展以無縫支持邊緣計算。簡而言之,OpenYurt使用戶能夠管理在邊緣基礎架構中運行的應用程序,就像它們在云基礎架構中運行一樣。OpenYurt是阿里云2020年5月份發(fā)布首個邊緣計算云原生開源項目,是業(yè)界第一個以無侵入的方式將Kubernetes擴展到邊緣計算領域的項目。2020年9月份正式成為CNCF 沙箱項目。
OpenYurt是為滿足典型邊緣基礎設施的各種DevOps需求而設計的。通過OpenYurt來管理邊緣應用程序,用戶可以獲得與中心式云計算應用管理一致的用戶體驗。它解決了Kubernetes在云邊一體化場景下的諸多挑戰(zhàn),如不可靠或斷開的云邊緣網(wǎng)絡、邊緣節(jié)點自治、邊緣設備管理、跨地域業(yè)務部署等。OpenYurt保持了完整的Kubernetes API兼容性,無廠商綁定,使用簡單。
OpenYurt 現(xiàn)已廣泛應用于物聯(lián)網(wǎng)、邊緣云、分布式云等典型邊緣計算場景,并覆蓋物流、能源、交通、制造、零售、醫(yī)療、CDN等諸多行業(yè)。
2021年9 月,OpenYurt 發(fā)布 v0.5.0 版本。新發(fā)布版本中首次提出 kubernetes-native非侵入、可擴展的邊緣設備管理標準,使 Kubernetes 業(yè)務負載模型和 IOT 設備管理模型無縫融合。同時聯(lián)合 VMware 推動 EdgeX Foundry 作為云原生設備管理模型的首個實現(xiàn)并成功落地,大大降低 EdgeX Foundry 在 Kubernetes 上的部署管理的復雜度同時也提升了邊緣設備的管理效率。
同年還發(fā)布了v0.6.0版本,新版本功能包括:
- 推出OpenYurt體驗中心,支持終端用戶輕松學習OpenYurt。
- 支持 NodePool 級別的 Ingress 控制器。
- 本地存儲支持多設備路徑
- 添加 YurtAppDaemon 用于在 NodePool 級別管理 DaemonSet 等工作負載。
- 添加YurtCluster Operator(kubernetes和openyurt轉換的聲明方式)
官網(wǎng):https://openyurt.io/
GitHub:https://github.com/openyurtio/openyurt
SuperEdge
2020年11月,騰訊云聯(lián)合英特爾、VMware、虎牙、寒武紀、美團、首都在線,共同發(fā)布 SuperEdge 邊緣容器開源項目。
SuperEdge 是基于Kubernetes-native的邊緣容器管理系統(tǒng)。該系統(tǒng)把云原生能力擴展到邊緣側,很好的實現(xiàn)了云端對邊緣端的管理和控制,極大簡化了應用從云端部署到邊緣端的過程。SuperEdge 為應用實現(xiàn)邊緣原生化提供了強有力的支持。
相比OpenYurt以及KubeEdge,SuperEdge 除了具備Kubernetes零侵入以及邊緣自治特性,還支持獨有的分布式健康檢查以及邊緣服務訪問控制等高級特性,極大地消減了云邊網(wǎng)絡不穩(wěn)定對服務的影響,同時也很大程度上方便了邊緣集群服務的發(fā)布與治理。
目前,SuperEdge已經(jīng)廣泛應用,覆蓋物聯(lián)網(wǎng)、工業(yè)互聯(lián)網(wǎng)、交通、能源、零售、智慧城市、智慧建筑、云游戲和互動直播等。
2021年9月,SuperEdge正式成為CNCF沙箱項目。9月26日,SuperEdge v0.6.0 版本正式發(fā)布。本次更新主要聚焦于生產(chǎn)集成,讓 SuperEdge 真正在用戶生產(chǎn)環(huán)境落地,添加了本地持久化存儲的支持,邊緣 IoT 設備的接入,ServiceGroup 的部署狀態(tài)和事件的反饋,以及對微服務使用框架 Tars、邊緣應用監(jiān)控數(shù)據(jù)的采集、Tengine AI 框架在 SuperEdge 使用的 Demo,具體內容如下:
- 集成 TopoLVM,支持邊緣本地持久化存儲
- 動態(tài)配置 PV:創(chuàng)建 PVC 對象時自動創(chuàng)建邊緣節(jié)點 PV 資源;
- 動態(tài)擴容存儲容量:可編輯 PVC 對象自動擴容 PV 的容量;
- 容量指標采集:可從 kubelet 中采集容量指標,進行存儲容量和讀寫監(jiān)控;
- 擴展調度器存儲策略:TopoLVM 擴展了 Kube-scheduler,使用 CSI 拓撲功能將 Pod 調度到 LVM 卷所在節(jié)點,并且可設置存儲容量調度策略;
- 統(tǒng)一管理本地存儲資源:可把多個物理卷組加入 VolumeGroup 中,屏蔽了底層物理卷細節(jié),對 Pod 統(tǒng)一進行存儲資源分配;
官網(wǎng):https://superedge.io/
GitHub:https://github.com/superedge/superedge
Fledge
Fledge 是一個面向工業(yè)邊緣的開源框架和社區(qū),專注于關鍵操作、預測性維護、態(tài)勢感知和安全。Fledge 的架構旨在將工業(yè)物聯(lián)網(wǎng) (IIoT)、傳感器和現(xiàn)代機器與云和現(xiàn)有的“棕地”系統(tǒng)集成,如DCS(分布式控制系統(tǒng))、PLC(程序邏輯控制器)和 SCADA(監(jiān)督控制和數(shù)據(jù))。所有這些都共享一組通用的管理和應用程序 API。
Fledge 開發(fā)人員和運營商在構建 IIoT 應用程序時無需再面臨復雜性和碎片化問題,通過收集和處理更多傳感器數(shù)據(jù)以實現(xiàn)業(yè)務自動化和轉型。Fledge 的現(xiàn)代可插拔架構消除了數(shù)據(jù)孤島。通過使用一組一致的 RESTful API 來開發(fā)、管理和保護 IIoT 應用程序,F(xiàn)ledge 創(chuàng)建了一個統(tǒng)一的解決方案。
Fledge與Project EVE密切合作,Project EVE為 Fledge 應用程序和服務提供系統(tǒng)和編排服務以及容器runtime。Fledge 還與Akraino集成,這兩個項目都支持推出 5G 和專用 LTE 網(wǎng)絡。2021年9月29日,F(xiàn)ledge發(fā)布了v1.9.2版本。
官網(wǎng):https://www.lfedge.org/projects/fledge/