BAETYL邊緣計算開源框架
Baetyl 是 Linux Foundation Edge 旗下項目,旨在將云計算能力拓展至用戶現(xiàn)場,提供臨時離線、低延時的計算服務,包括設備接入、消息路由、消息遠程同步、函數(shù)計算、設備信息上報、配置下發(fā)等功能。Baetyl 和 智能邊緣 BIE(Baidu-IntelliEdge)云端管理套件配合使用,通過在云端進行智能邊緣核心設備的建立、存儲卷創(chuàng)建、服務創(chuàng)建、函數(shù)編寫,然后生成配置文件下發(fā)至 Baetyl 本地運行包,整體可達到 邊緣計算、云端管理、邊云協(xié)同 的效果,滿足各種邊緣計算場景。
在架構(gòu)設計上,Baetyl 一方面推行 模塊化,拆分各項主要功能,確保每一項功能都是一個獨立的模塊,整體由主程序控制啟動、退出,確保各項子功能模塊運行互不依賴、互不影響;總體上來說,推行模塊化的設計模式,可以充分滿足用戶 按需使用、按需部署 的切實要求;另一方面,Baetyl 在設計上還采用全面 容器化 的設計思路,基于各模塊的鏡像可以在支持 Docker 的各類操作系統(tǒng)上進行 一鍵式構(gòu)建,依托 Docker 跨平臺支持的特性,確保 Baetyl 在各系統(tǒng)、平臺的環(huán)境一致;此外,Baetyl 還針對 Docker 容器化模式賦予其 資源隔離與限制 能力,精確分配各運行實例的 CPU、內(nèi)存等資源,提升資源利用效率。
優(yōu)勢
- 屏蔽計算框架:Baetyl 提供主流運行時支持的同時,提供各類運行時轉(zhuǎn)換服務,基于任意語言編寫、基于任意框架訓練的函數(shù)或模型,都可以在 Baetyl 中執(zhí)行
- 簡化應用生產(chǎn):智能邊緣 BIE云端管理套件配合 Baetyl,聯(lián)合百度云,一起為 Baetyl 提供強大的應用生產(chǎn)環(huán)境,通過 CFC、Infinite、EasyEdge、TSDB、IoT Visualization 等產(chǎn)品,可以在云端輕松生產(chǎn)各類函數(shù)、AI模型,及將數(shù)據(jù)寫入百度云天工云端 TSDB 及物可視進行展示
- 服務按需部署:Baetyl 推行容器化和模塊化,各模塊獨立運行互相隔離,開發(fā)者完全可以根據(jù)自己的需求選擇部署
- 支持多種平臺:Baetyl 支持多種軟硬件平臺,比如 X86 和 ARM 架構(gòu)的CPU,Linux 和 Darwin 操作系統(tǒng)等
組成
Baetyl 作為一個邊緣計算框架,除了提供底層服務管理能力外,還提供一些基礎功能模塊,具體如下:
- Baetyl 主程序 負責服務實例的管理,如啟動、退出、守護等,由引擎系統(tǒng)、API、命令行構(gòu)成。目前支持兩種運行模式:Native 進程模式和 Docker 容器模式
- 官方模塊 baetyl-agent 負責和 BIE 云端管理套件通訊,可以進行應用下發(fā),設備信息上報等。強制證書認證,保證傳輸安全;
- 官方模塊 baetyl-hub 提供基于 MQTT 協(xié)議 的消息訂閱和發(fā)布功能,支持 4 種接入方式:TCP、SSL、WS 及 WSS;
- 官方模塊 baetyl-remote-mqtt 用于橋接兩個 MQTT Server 進行消息同步,支持配置多路消息轉(zhuǎn)發(fā);
- 官方模塊 baetyl-function-manager 提供基于 MQTT 消息機制,彈性、高可用、擴展性好、響應快的計算能力;
- 官方模塊 baetyl-function-python27 提供 Python2.7 函數(shù)運行時,可由
baetyl-function-manager動態(tài)啟動實例; - 官方模塊 baetyl-function-python36 提供 Python3.6 函數(shù)運行時,可由
baetyl-function-manager動態(tài)啟動實例; - 官方模塊 baetyl-function-node85 提供 Node 8.5 函數(shù)運行時,可由
baetyl-function-manager動態(tài)啟動實例; - SDK (Golang) 可用于開發(fā)自定義模塊。
架構(gòu)圖
評論
圖片
表情
