邊緣計算框架 EdgeX 迎來第二次大版本更新,強化安全性並減少資源使用

作者 | 發布日期 2018 年 08 月 08 日 7:30 | 分類 物聯網 , 軟體、系統 , 雲端 line share follow us in feedly line share
邊緣計算框架 EdgeX 迎來第二次大版本更新,強化安全性並減少資源使用


Linux 基金會旗下 EdgeX Foundry 近日公布用於邊緣計算的 EdgeX IoT 中介軟體將迎來代號為 California 的第二次重要版本更新。新版本主打安全性與彈性,安全功能新增反向代理(Reverse Proxy)與安全憑證儲存(Secure Credentials Storage)。EdgeX 也使用 Go 語言重新改寫,使用資源更少、效能更高,以在樹莓派 執行。

EdgeX Foundry 於 2017 年 月底宣布,目標是為物聯網邊緣計算開發標準化的開源互動性框架。框架促進跨邊緣分析、安全性、系統管理和服務的互動性程式碼,並簡化物聯網閘道和智慧邊緣裝置的預認證軟體的整合。EdgeX Foundry 正在建立一套開源 EdgeX 堆疊,將在多個感測器網路消息傳遞協定及雲端和分析平台之間協調。

安全性和彈性

「我們的目標是將連線標準和裝置介面與應用程式分離,」戴爾開發人員和主要 EdgeX 撰稿人 Jason A. Shepherd 稱,「EdgeX 將透過平台獨立性、鬆散耦合的微服務及透過公用 API 將不同語言編寫服務整合,達成彈性和可延伸性。這些雲端原生原則在邊緣絕對必需,可在固有的版本分裂、多邊緣和多雲世界延伸。」

EdgeX 基於戴爾開創性的 FUSE IoT 中介軟體框架,匯入來自類似 AllJoyn 的相容項目 IoTX。戴爾是 ADI 公司和三星公司的三大白金會員之一。EdgeX Foundry 目前共有 61 個成員,包括 AMD、Canonical、Cloud Foundry、Linaro、Mocana、NetFoundry、Opto 22、RFMicron 和 VMware

California 是去年 10 月 Barcelona 的後續版本,Barcelona 版提供參考裝置服務,支援 BACNetModbus、低功耗藍牙(BLE)、MQTTSNMP 和 Fischertechnik,另外也支援 Azure IoT 套件和 Google IoT Core 連線器。

EdgeX California 的主要新功能旨在提高安全性,基於 Kong 的新反向代理要求任何 EdgeX 微服務的外部用戶端,載入 EdgeX API 前先身分認證,這將有助於保護 REST API 通訊並保護儲存。

新的機密儲存設施基於 HashiCorp 的開源 Vault,允許在 EdgeX 安全儲存敏感資料(如用戶名/密碼憑據、證書和記號)以執行加密,向企業發出 HTTPS 呼叫或將 EdgeX 安全連線到雲端提供商等工作。

Jason A. Shepherd 提到,反向代理與機密儲存是 EdgeX 構建其他功能的基礎,不過 Barcelona 版的 EdgeX 並沒有這些安全性功能,因為希望所有安全層都由 RSAADIThales、ForgeRock 和 Mocana 等工業專家社群定義,並與 California 版一起推出。

轉向 Go 語言

California 版的另一個重大變化是將開發平台從原本 Java 語言移轉至 Go 語言。雖然這項改變讓 California 版發表延遲了幾個月,但 EdgeX 的容量、啟動時間、CPU 和記憶體使用率都有大幅下降。

用 Java 語言開發的 EdgeX 容量高達 267MB,如果加上啟動容器為 519MB,改用 Go 語言重寫後只有 42MB,即便加上啟動容器也只有 68MB。記憶體使用率也從原本 1,302MB 縮減到 27MB,啟動時間從 35 秒縮短到 1 秒以內。

效能提升讓官方可指定樹莓派 為官方平台。Jason A. Shepherd 表示,Go 語言的並發模型比其他開發語言更優秀,除了得到 Google 支援,也與其他如 Docker 和 Kubernetes 等許多其他大型軟體開發工作相容良好。不過他也提到,EdgeX 從 Java 語言轉向 Go 語言不僅為了減少資源使用,也是為了避免向 Java 支付授權費用。

Jason A. Shepherd 指出,Go 語言只是一種基準參考語言,開發人員可一起使用相同 API 與其他語言,除 Go for the Device Service SDK 外,該項目還將支援 語言。EdgeX Foundry 之所以選擇 Go,是因為硬體和作業系統方面更獨立,由於 語言比 Go 語言更進一步減少使用空間,因此對低階的邊緣運算應用,語言可能是更好的選擇。

被問及與其他雲端驅動的物聯網平台(如 AWS Greengrass 或 Google 新 Cloud IoT Edge 平台)整合的可能性時,Jason A. Shepherd 表示,EdgeX 一直在探索與其他私有雲堆疊合作的機遇,但能否達成合作取決於開放性和架構。

展望未來版本,EdgeX 計畫將使用空間減少到 128MB 或更低,官方稱今年 10 月還會放出新的 Delhi 版,將新增可管理性服務、裝置服務 SDK、改進單元和效能測試,以及展示的基本 EdgeX UI 等套件,同時還會持續改進 Kong 和 Vault 的安全功能。

(本文由 雷鋒網 授權轉載;首圖來源:shutterstock)