EdgeMesh邊緣應(yīng)用的簡化網(wǎng)絡(luò)和服務(wù)
EdgeMesh 作為 KubeEdge 的一部分,為邊緣場景下的服務(wù)互訪提供了簡單的網(wǎng)絡(luò)方案。
背景
KubeEdge基于Kubernetes構(gòu)建,將云原生容器化應(yīng)用程序編排能力延伸到了邊緣。但是,在邊緣計算場景下,網(wǎng)絡(luò)拓撲較為復(fù)雜,不同區(qū)域中的邊緣節(jié)點往往網(wǎng)絡(luò)不互通,并且應(yīng)用之間流量的互通是業(yè)務(wù)的首要需求,而EdgeMesh正是對此提供了一套解決方案。
動機
EdgeMesh作為KubeEdge集群的數(shù)據(jù)面組件,為KubeEdge集群中的應(yīng)用程序提供了簡單的服務(wù)發(fā)現(xiàn)與流量代理功能,從而屏蔽了邊緣場景下復(fù)雜的網(wǎng)絡(luò)結(jié)構(gòu)。
優(yōu)勢
EdgeMesh 滿足邊緣場景下的新需求(如邊緣資源有限,邊云網(wǎng)絡(luò)不穩(wěn)定等),即實現(xiàn)了高可用性,高可靠性和極致輕量化:
- 高可用性
- 利用 KubeEdge 中的邊云通道,來打通邊緣節(jié)點間的網(wǎng)絡(luò)
- 將邊緣節(jié)點間的通信分為局域網(wǎng)內(nèi)和跨局域網(wǎng)
- 局域網(wǎng)內(nèi)的通信:直接訪問
- 跨局域網(wǎng)的通信:通過云端轉(zhuǎn)發(fā)
- 高可靠性 (離線場景)
- 控制面和數(shù)據(jù)面流量都通過邊云通道下發(fā)
- EdgeMesh 內(nèi)部實現(xiàn)輕量級的 DNS 服務(wù)器,不再訪問云端 DNS
- 極致輕量化
- 每個節(jié)點有且僅有一個 EdgeMesh,節(jié)省邊緣資源
用戶價值
- 對于資源受限的邊緣設(shè)備,EdgeMesh 提供了一個輕量化且具有高集成度的服務(wù)發(fā)現(xiàn)軟件
- 在現(xiàn)場邊緣的場景下,相對于 coredns + kube-proxy + cni 這一套服務(wù)發(fā)現(xiàn)機制,用戶只需要簡單地部署一個 EdgeMesh 就能完成目標(biāo)
關(guān)鍵功能
| 功能 | 子功能 | 實現(xiàn)度 |
|---|---|---|
| 服務(wù)發(fā)現(xiàn) | / | ? |
| 流量治理 | HTTP | ? |
| TCP | ? | |
| Websocket | ? | |
| HTTPS | ? | |
| 負載均衡 | 隨機 | ? |
| 輪詢 | ? | |
| 會話保持 | ? | |
| 外部訪問 | / | ? |
| 多網(wǎng)卡監(jiān)聽 | / | ? |
| 跨子網(wǎng)通信 | 跨邊云通信 | ? |
| 跨局域網(wǎng)邊邊通信 | ? | |
| 邊緣CNI | 跨子網(wǎng)Pod通信 | + |
注:
-
?EdgeMesh 版本所支持的功能 -
+EdgeMesh 版本不具備的功能,但在后續(xù)版本中會支持 -
-EdgeMesh 版本不具備的功能,或已棄用的功能
未來工作:
架構(gòu):
評論
圖片
表情
