在這個全民上云的時代,你可能很熟悉K8s,但是你是否有聽過另外一個正在引領物聯網邊緣計算的框架?它就是我們今天介紹的主角:KubeEdge。
KubeEdge是一個開源系統,用于將容器化應用程序編排功能擴展到Edge的主機。它基于kube.NETes構建,并為網絡應用程序提供基礎架構支持。云和邊緣之間的部署和元數據同步。KubeEdge使用Apache 2.0許可。并且絕對可以免費用于個人或商業用途。KubeEdge目標是創建一個開放平臺,使能邊緣計算,將容器化應用編排功能擴展到邊緣的節點和設備,基于kubernetes構建,并為云和邊緣之間的網絡、應用部署和元數據同步提供基礎架構支持。同時 KubeEdge 還支持 MQTT,并允許開發人員編寫自定義邏輯并在 Edge 上啟用一定資源的設備進行通信。KubeEdge 由云端和邊緣端組成,目前邊緣端和云端已開源。
(圖片來源:kubeedge.io - 架構)
另外,KubeEdge也是業界首個專為邊云協作而設計的云原生邊緣計算框架。KubeEdge 是對 Kubernetes 在容器編排和調度方面的補充,允許應用程序、資源、數據和設備在邊緣和云之間進行協作。現在,邊緣計算實現了設備、邊緣和云的全面連接。
在KubeEdge架構中,云是一個統一的控制平面,包括原生的Kubernetes管理組件和KubeEdge開發的CloudCore組件。它監聽云資源變化并提供可靠、高效的云邊緣消息傳遞。邊緣側是 EdgeCore 組件,包括Edged、MetaManager和EdgeHub。他們從云端接收消息并管理容器的生命周期。設備映射器和事件總線負責設備訪問。
(圖片來源:kubeedge.io - 邊緣一體架構)
KubeEdge優勢
KubeEdge 的優勢主要包括:
- 邊緣計算:借助在 Edge 上運行的業務邏輯,可以讓本地生成的數據,進行大量數據處理操作并對其進行保護。這樣可以減少邊緣和云之間的網絡帶寬需求和消耗,提高響應速度,降低成本并保護客戶的數據隱私。
- 簡化開發:開發人員可以編寫基于 HTTP 或 MQTT 的常規應用程序,對其進行容器化,然后在 Edge 或 Cloud 中的任何一個更合適的位置運行應用程序。
- Kubernetes 原生支持:借助 KubeEdge,用戶可以像在傳統的 Kubernetes 集群一樣,在 Edge 節點上編排應用程序,管理設備并監視應用程序和設備狀態。
- 豐富的應用:可以輕松地將現有的復雜機器學習,圖像識別,事件處理等其他高級應用程序部署到 Edge。
已通過軟件供應鏈SLSA L3等級認證
KubeEdge 社區已于 2022 年 7 月份完成整個 KubeEdge 項目的第三方安全審計,已發布云原生邊緣計算安全威脅分析和防護白皮書,并根據安全威脅模型和安全審計的建議,對 KubeEdge 軟件供應鏈進行持續安全加固。經過社區的不斷努力,我們很興奮地宣布,在 2023 年 1 月 18 日發布的 v1.13.0 版本中,KubeEdge 項目已達到 SLSA L3 等級(包括二進制和容器鏡像構件),成為 CNCF 社區首個達到 SLSA L3 等級的項目。
什么是 SLSA?(Supply chAIn Levels for Software Artifacts 軟件構件的供應鏈級別)
google 提出的用于保證整個軟件供應鏈完整性的框架 SLSA,是一套基于行業共識的安全準則,也是一個安全框架、一份標準和控制清單,用于防止篡改、提高完整性以及保護項目、業務或企業中的軟件包和基礎設施。它不是一個單一的工具,而是一個逐步采用的大綱,以防止工件被篡改和被篡改的工件被使用,并在更高層次上強化構成供應鏈的平臺。生產商遵循 SLSA 準則使他們的軟件更加安全,用戶則根據軟件包的安全狀況來做出決策。
截止目前,SLSA 標準處于 alpha 階段,相關的定義可能會發生變化。
下圖描述了軟件供應鏈中已知的攻擊點。更多詳細描述,可參考https://slsa.dev/
強大的性能:支持10萬邊緣節點
KubeEdge 的人口引起了社區對 KubeEdge 的可擴展性和規模的興趣。目前,基于 KubeEdge 的 Kubernetes 集群經過充分測試,可以穩定支持 10 萬個邊緣節點并發,管理超過 100 萬個 pod。
(圖片來源:kubeedge.io - 集群部署框架)
應用場景
KubeEdge是用于將容器化應用程序編排功能擴展到邊緣節點和設備的開源系統。以下是一些KubeEdge可能的應用場景:
- 智能城市:在城市管理中,KubeEdge可以為城市設施提供彈性擴展的能力,如智能交通、智能照明等。通過實時數據處理、AI分析和設備管理,KubeEdge能夠實現智能化的城市管理。
- 自動駕駛:在自動駕駛場景中,KubeEdge可以提供設備管理和實時數據處理能力,為自動駕駛汽車提供強大的后臺支持。通過KubeEdge,自動駕駛汽車可以獲取和分析車輛及周圍環境的數據,以實現更安全和高效的自動駕駛。
- 工業制造:在工業制造領域,KubeEdge可以幫助實現工廠設備的實時監控、數據采集和故障預測,提高生產效率并降低維護成本。通過將容器編排功能擴展到邊緣設備,可以實現更快速的數據處理和分析,提高生產線的自動化程度和靈活性。
- 醫療保健:在醫療保健領域,KubeEdge可以用于實時監控患者的健康狀況、處理醫療數據和提供遠程醫療服務。通過將容器編排功能擴展到邊緣設備,可以更快地處理和分析醫療數據,提供更準確的診斷和治療建議。
- 智能家居:在智能家居領域,KubeEdge可以幫助實現家居設備的集中管理和智能控制。通過將容器編排功能擴展到智能家居設備,可以實現對家居設備的遠程控制和自動化控制,提高居住體驗和生活品質。
- 金融行業:在金融行業,KubeEdge可以用于實時監控金融交易和市場動態,提高金融交易的效率和準確性。通過將容器編排功能擴展到邊緣設備,可以更快地處理和分析金融數據,提供更準確的投資建議和服務。
除此之外,KubeEdge的云和邊緣之間的部署和元數據同步提供了基礎架構支持,可以適用于各種網絡應用程序。對于個人或商業用途,KubeEdge基于Apache 2.0許可,是絕對免費開源的。它也支持MQTT協議,允許開發人員編寫客戶邏輯,并在邊緣端啟用設備通信的資源約束。