首页
学习
活动
专区
圈层
工具
发布
50 篇文章
1
图文并茂VLAN详解,让你看一遍就理解VLAN
2
做了几年的网工也未必了解VLAN和VXLAN的区别,今天我来告诉你!
3
全网内容最全,质量最高的MPLS及MPLS VPN技术详解,瑞哥力荐!
4
Google BBR拥塞控制算法背后的数学解释 | 深度
5
QUIC 0-RTT实现简析及一种分布式的0-RTT实现方案
6
AGPS定位基本原理浅析
7
Golang语言情怀-第56期 Go 语言标准库翻译 crypto/cipher
8
神锁离线版插件端到端加密比HTTPS更安全
9
基于 TLS 1.3的微信安全通信协议 mmtls 介绍(上)
10
基于 TLS 1.3的微信安全通信协议 mmtls 介绍(下)
11
24位腾讯云专家精彩演讲,4万字《腾讯云技术实践精选集 2021》发布!(附合集下载)
12
浅谈VPC二三,秒懂秒透
13
提速 30%!腾讯TQUIC 网络传输协议
14
25 张图,一万字,拆解 Linux 网络包发送过程
15
nginx http模块数据存储结构
16
多机房多活,多机房平滑迁移架构方案全集(上+中+下)
17
小孩都看得懂的多臂老虎机和汤姆森采样
18
什么是 Go runtime.KeepAlive?
19
Rust 热点| Discord 为什么从 Go 切换到了 Rust
20
用户态 tcpdump 如何实现抓到内核网络包的?
21
一文读懂 | coredump文件是如何生成的
22
网工知识大扫盲——三层交换技术
23
聊聊 top 命令中的 CPU 使用率
24
什么是HDFS的纠删码
25
Linux ptrace 的实现
26
天天讲路由,那 Linux 路由到底咋实现的!?
27
Linux系统研究 - 操作系统是如何管理tcp连接的 (2)
28
一个有关tcp的非常有意思的问题
29
对上一篇文章中tcp问题的进一步思考
30
epoll和shutdown使用不当可能导致死循环
31
socket的SO_REUSEADDR参数全面分析
32
多进程可以监听同一端口吗
33
golang | 是返回struct还是返回struct的指针
34
​TCP 拥塞控制详解
35
C|网络|TCP-BBR拥塞控制剖析
36
如何使用 Go 语言写游戏服务器?
37
Nginx 日志 worker_connections are not enough while connecting to upstream
38
如何用九条命令在一分钟内检查Linux服务器性能?
39
服务器病了吗? Linux 服务器的那些性能参数指标
40
边缘计算比云计算强在哪里?终于有人讲明白了
41
详解边缘计算系统逻辑架构:云、边、端协同
42
边缘计算成为下一个爆发点,云计算巨头和CDN巨头谁会赢?
43
告知你不为人知的 UDP:连接性和负载均衡
44
为什么需要智能网卡?
45
从CDN到边缘计算,近水楼台是否先得月?
46
经典网络还是VPC,开发者作何选择?
47
Linux内核网络udp数据包发送(二)——UDP协议层分析
48
有没有人告诉你—写时拷贝的真相
49
[linux][network]net bridge技术分析
50
软硬件融合技术内幕 进阶篇 (1) —— 从小霸王到云计算

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

导读:本文将对整个边缘计算系统的逻辑架构及云、边、端之间的逻辑关系进行系统梳理。

作者:崔广章

来源:大数据DT

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

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

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

  1. 云、边协同:通过云部分Kubernetes的控制节点和边部分KubeEdge所运行的节点共同实现。
  2. 边、端协同:通过边部分KubeEdge和端部分EdgeX Foundry共同实现。
  3. 云、边、端协同:通过云解决方案Kubernetes的控制节点、边缘解决方案KubeEdge和端解决方案EdgeX Foundry共同实现。

02 云、边协同

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

▲图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能够很好地适应边缘环境。

03 边、端协同

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

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

  1. KubeEdge作为运行在边缘节点的管理程序,负责管理在边缘节点上应用负载的资源、运行状态和故障等。在一些的边缘计算系统中,KubeEdge为EdgeX Foundry服务提供所需的计算资源,同时负责管理EdgeX Foundry端服务的整个生命周期。
  2. EdgeX Foundry是由KubeEdge管理的一套IoT SaaS平台。该平台以微服务的形式管理多种物联网终端设备。同时,EdgeX Foundry可以通过所管理的微服务采集、过滤、存储和挖掘多种物联网终端设备的数据,也可以通过所管理的微服务向多种物联网终端设备下发指令来对终端设备进行控制。

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

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

  1. MQTT代理:作为各种物联网终端设备和KubeEdge节点之间的一个通信管道,负责接收终端设备发送的数据,并将接收到的数据发送到已经订阅MQTT代理的KubeEdge节点上。
  2. 对接支持各种协议设备的服务:负责与支持相应协议的设备进行交互,能够采集设备的数据并发送给MQTT代理,能够从MQTT代理接收相关指令并下发到设备。

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

  1. KubeEdge的端解决方案支持的负载类型还比较单一,目前只能通过MQTT代理支持一些物联网终端设备,对视频处理和使用AI模型进行推理的应用负载还不支持。
  2. 对接支持各种协议设备的服务目前还比较少,只支持使用Bluetooth和Modbus两种协议的设备。

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

04 云、边、端协同

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

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

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

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

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

05 小结

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

  1. 从云、边协同的架构切入,对目前云、边协同的架构和原理进行了梳理,同时对边解决方案的一些特性进行了说明。
  2. 从边、端协同的架构切入,对目前边、端协同的架构和原理进行了系统梳理,并对KubeEdge自有的端解决方案的架构、原理和现状进行了说明。
  3. 从云、边、端协同的架构切入,主要对云、边、端协同的理想效果进行了说明。

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

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

下一篇
举报
领券