5

详解边缘计算系统逻辑架构:云、边、端协同

 2 years ago
source link: https://www.51cto.com/article/708343.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

详解边缘计算系统逻辑架构:云、边、端协同-51CTO.COM

详解边缘计算系统逻辑架构:云、边、端协同
作者:崔广章 2022-05-08 20:26:45
本文对整个边缘计算系统的逻辑架构及云、边、端之间的逻辑关系和现状进行了系统梳理。从云、边协同的架构切入,对目前云、边协同的架构和原理进行了梳理,同时对边解决方案的一些特性进行了说明。

1.边缘计算系统逻辑架构简介

由图3-1可知,逻辑架构侧重边缘计算系统云、边、端各部分之间的交互和协同,包括云、边协同,边、端协同和云、边、端协同3个部分。

695f22c77a22a3147af169000c8faaeba97b33.png

▲图3-1 边缘计算系统逻辑架构

云、边协同:通过云部分Kubernetes的控制节点和边部分KubeEdge所运行的节点共同实现。

边、端协同:通过边部分KubeEdge和端部分EdgeX Foundry共同实现。

云、边、端协同:通过云解决方案Kubernetes的控制节点、边缘解决方案KubeEdge和端解决方案EdgeX Foundry共同实现。

2.云、边协同

云、边协同的具体实现如图3-2所示。

8381c8e77a53bca195b012a2c10c7d6ece880e.png

▲图3-2 边缘计算系统中云、边协同逻辑架构

Kubernetes控制节点沿用云部分原有的数据模型,保持原有的控制、数据流程不变,即KubeEdge所运行的节点在Kubernetes上呈现出来的是一个普通节点。Kubernetes可以像管理普通节点一样管理KubeEdge所运行的节点。

KubeEdge之所以能够运行在资源受限、网络质量不可控的边缘节点上,是因为KubeEdge在Kubernetes控制节点的基础上通过云部分的CloudCore和边缘部分的EdgeCore实现了对Kubernetes云计算编排容器化应用的下沉。

云部分的CloudCore负责监听Kubernetes控制节点的指令和事件下发到边缘部分的EdgeCore,同时将边缘部分的EdgeCore上报的状态信息和事件信息提交给Kubernetes的控制节点;边缘部分的EdgeCore负责接收云部分CloudCore的指令和事件信息,并执行相关指令和维护边缘负载,同时将边缘部分的状态信息和事件信息上报给云部分的CloudCore。

除此之外,EdgeCore是在Kubelet组件基础上裁剪、定制而成的,即将Kubelet在边缘上用不到的富功能进行裁剪,针对边缘部分资源受限、网络质量不佳的现状在Kubelet的基础上增加了离线计算功能,使EdgeCore能够很好地适应边缘环境。

3.边、端协同

边、端协同的具体实现如图3-3所示。

0395dc358795a67922c1474ec42d9c60ea2e85.png

▲图3-3 边缘计算系统中边、端协同逻辑架构

KubeEdge作为运行在边缘节点的管理程序,负责管理在边缘节点上应用负载的资源、运行状态和故障等。在一些的边缘计算系统中,KubeEdge为EdgeX Foundry服务提供所需的计算资源,同时负责管理EdgeX Foundry端服务的整个生命周期。

EdgeX Foundry是由KubeEdge管理的一套IoT SaaS平台。该平台以微服务的形式管理多种物联网终端设备。同时,EdgeX Foundry可以通过所管理的微服务采集、过滤、存储和挖掘多种物联网终端设备的数据,也可以通过所管理的微服务向多种物联网终端设备下发指令来对终端设备进行控制。

由图3-4可知,KubeEdge的解决方案由MQTT代理和对接支持各种协议设备的服务组成。

685567702ea50b2cdd83971d16de84b0babede.png

▲图3-4 KubeEdge端解决方案逻辑架构

MQTT代理:作为各种物联网终端设备和KubeEdge节点之间的一个通信管道,负责接收终端设备发送的数据,并将接收到的数据发送到已经订阅MQTT代理的KubeEdge节点上。

对接支持各种协议设备的服务:负责与支持相应协议的设备进行交互,能够采集设备的数据并发送给MQTT代理,能够从MQTT代理接收相关指令并下发到设备。

通过上述分析可知,KubeEdge的端解决方案还比较初级。

KubeEdge的端解决方案支持的负载类型还比较单一,目前只能通过MQTT代理支持一些物联网终端设备,对视频处理和使用AI模型进行推理的应用负载还不支持。

对接支持各种协议设备的服务目前还比较少,只支持使用Bluetooth和Modbus两种协议的设备。

基于上述原因,我们的边缘计算系统的端解决方案没有使用KubeEdge的端解决方案,而是使用EdgeX Foundry这款功能相对完善的IoT SaaS平台。

4.云、边、端协同

边缘计算系统中云、边、端协同的理想效果如图3-5所示。

7496d61533e5b0374551362355f2cbd7d102e7.png

▲图3-5 边缘系统中云、边、端协同的理想效果

由图3-5可知,云、边、端协同包括两层,即云、边协同和云、边、端协同。

云、边协同:云作为控制平面,边作为计算平台。

云、边、端协同:在云、边协同的基础上,管理终端设备的服务作为边上的负载。云可以通过控制边来影响端,从而实现云、边、端协同。

云、边、端协同是通过Kubernetes的控制节点、KubeEdge和EdgeX Foundry共同实现的,Kubernetes的控制节点下发指令到KubeEdge的边缘集群,操作EdgeX Foundry的服务,从而影响终端设备。目前,我们还不能通过Kubernetes的控制节点与终端设备直接交互。

本文对整个边缘计算系统的逻辑架构及云、边、端之间的逻辑关系和现状进行了系统梳理。

从云、边协同的架构切入,对目前云、边协同的架构和原理进行了梳理,同时对边解决方案的一些特性进行了说明。

从边、端协同的架构切入,对目前边、端协同的架构和原理进行了系统梳理,并对KubeEdge自有的端解决方案的架构、原理和现状进行了说明。

从云、边、端协同的架构切入,主要对云、边、端协同的理想效果进行了说明。

关于作者:崔广章,之江实验室高级研究专员,资深云计算和边缘计算技术工程师。从2014年接触云计算以来,参与过多个云计算生产项目,其中代表性的项目有基于OpenStack进行定制开发的运营商私有云、政务云,基于开源容器云方案定制开发的面向运营商的数据中心操作系统(DCOS),2018年开始从事边缘计算相关研究与开发。

本文摘编自《深入理解边缘计算:云、边、端工作原理与源码分析》(ISBN:978-7-111-68422-0),经出版方授权发布。


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK