边缘计算,云服务向多元化应用场景的延伸
编者按:随着大数据、人工智能和物联网时代的到来,网络边缘设备和各式移动终端产生的数据的增速已远远超过了网络带宽,带来了更高的数据传输带宽需求,同时新型应用也对数据处理的实时性提出了更高要求,传统云计算模型已经无法有效应对,边缘计算因在贴近数据源的网络边缘进行数据处理,绕过了网络带宽和延迟问题,迅速成为近几年的研究热点。基于5G边缘计算的全场景智慧校园建设助力新的教育场景的应用,更使得教育教学进入跨界融合、创新教育的新阶段。本期我们将围绕边缘计算及其应用维度展开分析,希望能给读者带来切实的帮助。
主持人:
金 琦 浙江师范大学附属中学
嘉 宾:
刘宗凡 广东省肇庆市四会中学
邱元阳 河南省安阳县职业中专
倪俊杰 浙江省桐乡市凤鸣高中
杨 磊 天津市第五中学
我们在上一期对CDN的工作原理及主要技术知识点进行了介绍,CDN是一种基于互联网的缓存网络,依靠部署在各地的缓存服务器,通过中心平台的负载均衡、内容分发、调度等功能模块,将用户的访问指向距离最近的缓存服务器,以此降低网络拥塞,提高用户访问响应速度和命中率。CDN强调数据的备份和缓存,并没有对计算有特别的要求,但随着大数据和物联网的广泛应用,边缘的外延和内涵不断扩展,网络边缘已经延伸到我们生活的各个方面,而边缘计算的基本思想则是将现在的计算能力边缘化。
2006年亚马逊推出Amazon Web Services,接着,国内的阿里、腾讯、华为等巨头也紧随其后进入云计算市场,这使得我们可以便捷地尝试和体验各种类型的云服务,开始接受云计算服务对我们生活的改变,正如互联网已经成为我们生活的一部分一样,云计算架构日臻完善,越来越多的产品也登上了云!使用云计算服务已经如同使用水电一样方便。但现阶段云计算依然会存在计算延迟、拥塞、低可靠性、安全攻击等问题,云计算需要新的搭档,基于此,边缘计算的概念得以提出并实施以弥补云计算存在的短板问题。让云计算服务更加靠近边缘,让计算、存储、网络延伸到互联网的边缘,这也是云计算发展的未来。
边缘计算为何而生?
邱元阳:随着万物互联时代的到来和无线网络的不断发展,网络边缘的设备数量和产生的数据都快速增长。预计到2025年,全球数据总量将超过175ZB,预计物联网(IoT,Internet of Things)产生的超过一半的数据都将在网络边缘处理。以云计算模型为核心的集中式处理模式将无法高效处理边缘设备产生的数据,集中式处理模型将所有数据通过网络传输到云计算中心,利用云计算中心超强的计算能力来集中式解决计算和存储问题。云计算给世界带来的变革大家有目共睹,但有了云计算为什么还需要边缘计算呢?这就需要一起来了解集中式的云计算中遇到的不足。
1.实时性不够。传统云计算模型在应对实时性要求极高的万物互联场景应用时会产生系统延迟的问题。例如,在无人驾驶汽车场景下,汽车需要精确到毫秒级别的反应时间,一旦出现延迟则有可能酿成涉及人身、财产安全的严重后果。
2.带宽不足。边缘设备实时产生大量数据,这样庞大的数据集传至集中式的数据中心,将会造成巨大的网络带宽压力。
3.能耗较大。数据中心消耗极多能源,2021年,全国数据中心能源消耗达到2166亿千瓦时,照此趋势,预计到2025年,全国数据中心能源消耗总量将达到3500亿千瓦时,约占全社会用电量的4%。随着用户应用程序越来越多、处理的数据量越来越大,能耗将会成为限制云计算中心发展的瓶颈。
4.不利于数据安全和隐私。万物互联中的数据与用户生活密切相关,智能终端设备如室内智能网络摄像头,将数据传输到云端会增加泄露用户隐私的风险。
金琦:为了解决以上问题,面向边缘设备所产生的海量数据计算的边缘计算模型应运而生。为了更容易理解边缘计算,不妨想象这样一个实例:用于计费的收费公路摄像头。在云计算架构中,摄像头拍摄汽车牌照照片,并将整个照片传输到云端,在云端,程序处理图像,识别牌照号码,并将该号码记录到计费系统中,以向车主收取通行费用。在这种安排下,由于传送了所有图像,因此大量数据通过网络得以传输。在边缘计算应用中,摄像头会立即处理图像,识别车牌号,然后只将该号码传回云端,以开始计费过程。这样做使得流经网络的数据非常少,从而为其他应用程序释放了带宽。此外,如果由于某种原因导致摄像头与服务器的连接中断,它还允许摄像头继续分析数据。边缘计算采用了一种分散式运算架构,将之前由网络中心节点处理的数据资源与服务、各种应用程序的计算切成更小且很容易管理的部分并分散到网络逻辑上的边缘节点处理。而边缘节点更接近用户终端或业务直接使用终端,这一特质可以明显地提高数据处理和传送速度,进而降低延时。
通过对以上实例的分析,我们可以把边缘计算看作云计算模型的延伸,它针对了目前集中式云计算模型自身的短板,具有缓解网络带宽压力、提高服务响应能力、保护数据隐私等特点。所以,可以发现边缘计算对我们身边的众多新兴业务应用起到了显著性能提升作用。在智慧城市、智慧校园、智能制造、智能家居等相关领域,边缘计算都在扮演着驱动者新形象,推动传统的“云-端”递进到“云-边-端”的新一代计算架构。这种架构无疑更匹配今天万物互联时代各种类型的智能业务。可以总结一下概念,边缘计算是指数据或任务能够在数据源头的网络边缘侧进行计算和执行计算的一种新型服务模型,允许在网络边缘存储和处理数据,和云计算协作,在数据源端提供智能服务。网络边缘侧可以理解为数据源到云计算中心之间的任意功能实体,这些实体搭载着融合网络、计算、存储、应用等核心能力的边缘计算平台。再用一个较形象的比喻,如“章鱼”就拥有“概念思维”能力,章鱼有两个强大的记忆系统:一个是大脑记忆系统,章鱼的神经元有40%分布在它的头部;另一个是八条爪子上的触角,其60%的神经元分布在它的触角上,也就是说,章鱼的八条爪子可以思考并解决问题。章鱼在捕猎时八条爪子动作非常灵巧迅速,腕足之间高度配合,从来不会缠绕和打结。这是因为它是“多个小脑+一个大脑”的构造,类似于分布式计算。而边缘计算也是一种分布式计算,这种分布的好处就是大部分重复的、低级的操作,都由触角来完成,减轻了中央章鱼大脑的功耗,让中央大脑只处理一些核心的数据。我们可以把云计算看作是大脑,那么边缘计算就像是大脑输出的神经触角,这些触角连接到各个终端运行各种动作。在万物互联时代,随着5G的到来,整个网络设备接入的数量,以及靠近设备端产生的数据会爆发式增长。如果所有数据处理都放到集中式数据中心,带宽、实时性、能耗、隐私等都会面临很大的挑战。但采用边缘计算,就可以就近处理海量数据,大量设备可以实现高效协同工作,诸多问题迎刃而解。
边缘计算基本架构
倪俊杰:边缘计算中的“边缘”是一个相对的概念,指从数据源到云计算中心路径之间的任意计算、存储以及网络相关资源。边缘计算允许终端设备将存储和计算任务转移到网络边缘节点(如基站、无线接入点、边缘控制器和传感器)上。这在满足终端设备计算能力扩展需求的同时,又能够有效地节约计算任务在云服务器和终端设备之间的传输链路资源。核心基础设施提供核心网络接入和用于移动边缘设备的集中式云计算服务和管理功能。其中,核心网络主要包括互联网络、移动核心网络、集中式云服务和数据中心等。而云计算核心服务通常包含基础设施服务(IaaS)、平台即服务(PaaS)和软件即服务(PaaS)三种服务模式。通过引入边缘计算架构,多个云服务提供商可同时为用户提供集中式的存储和计算服务,实现多层次的异构服务器部署,改善由集中式云业务大规模计算器安装带来的挑战,同时还能够为不同位置的用户提供实时服务和移动代理。边缘网络通过融合多种通信网络实现物联网设备和传感器的互联。从无线网络到移动中心网络再到互联网络边缘计算设施,通过无线网络、数据中心网络和互联网实现了边缘设备、边缘网关、核心设施之间的连接。所有类型的边缘设备除了数据消费者外,还可以作为数据生产者参与到边缘计算所有的四个功能结构层中。基于“云-边-端”协同的边缘计算基本框架如图1所示。
这里着重说明一下移动边缘计算MEC(Mobile Edge Computing)的概念,其在移动设备网络边缘进行数据的计算、存储与保存,减少了云计算中心集中处理请求的延时,也降低了网络带宽和云计算数据中心的压力。MEC节点大部分位于大型基站或无线网络控制器处,与用户处于同一个无线局域网中,这种贴近于用户的数据处理方式,使得响应服务更加高效、快捷。移动边缘计算平台架构主要采用“网络层—移动边缘主机层—移动边缘系统层”三层架构模型。移动边缘系统层是MEC最重要的一层,由运营商网络内的移动边缘主机以及管理移动边缘应用必需的移动边缘组件构成,负责管控MEC的任务分配和系统运行。移动边缘主机层由虚拟化基础设施、移动边缘应用、移动边缘平台和移动边缘主机层管理设施组成。网络层代表移动边缘计算支持的连接方式,由蜂窝移动网络、本地网络、无线WIFI和外部网络组成。MEC基本框架如图2所示。
Cloudlet是2013年美国卡内基梅隆大学提出的概念,源于移动计算、IoT与云计算的融合,代表“移动设备/IoT设备—Cloudlet—云”三层体系架构的中间层,Cloudlet是一个可信且资源丰富的主机,部署在网络边缘,与互联网连接,可以被移动设备访问,能实时为直接连接局域网的用户提供服务。由于Cloudlet可以像云计算中心一样为用户提供服务,所以也被称为微云。虽然Cloudlet不是以边缘计算的名义提出的,但其在架构和设计理念上与边缘计算相契合,所以可用来搭建边缘计算平台。与云计算的计算模型相似,Cloudlet将用户数据直接保存在云端,当移动设备向云端请求服务时集中对数据进行处理,并通过高带宽的一跳路由返回用户请求,尽可能降低网络延时。Cloudlet平台架构主要包括三层(如图3):第一层由虚拟机组成,运行用户卸载至边缘节点的应用程序,通过虚拟机弥补与用户可执行环境的差异;第二层由Cloudlet边缘计算平台组成,实现主机资源虚拟化并编排管理应用虚拟机;第三层由用户数据缓存器组成,主要用于接收用户云端数据。Cloudlet的主要优势有:对开发者没有任何约束,现有程序基本不需要修改即能在Cloudlet中运行;由于在移动设备网络边缘提供服务,最大限度地降低了网络时延。
刘宗凡:在对基本的架构概念有所了解后,我再来讲一下边缘计算的具体软件架构,相对于硬件架构设计,在“云-边-端”系统的软件架构主要包括与设备无关的微服务、容器及虚拟化技术、云端无服务化套件等。这些技术应用统一了云端和边缘的服务运行环境,减少了因硬件基础设施的差异而带来的部署及运维问题。而这些技术背后依靠的是云原生软件架构在边缘侧的演化。典型的边缘系统软件架构如图4所示。
云端数据中心根据实时性、安全性和边缘侧异构计算的需求,将微服务灵活地部署到边缘的用户设备、网关设备或小型数据中心。这说明分布式边缘计算比传统集中式云计算拥有更大的优势,而微服务是算力和应用功能部署的载体和最小单位。在边缘设备注册到云服务器后,这种微服务的部署对于终端用户来说是非常容易乃至无感的。目前,主要云服务商都给出了使用边缘计算加快机器学习中神经网络推理的案例。机器学习根据现有数据所学习(该过程称为训练)的统计算法,对新数据做出决策。在训练期间,将识别数据中的模式和关系以建立模型。该模型让系统能够对之前从未遇到过的数据做出明智的决策。在优化模型过程中压缩模型大小,以便快速运行。训练和优化机器学习模型需要大量的计算资源,因此与云是天然良配。相对来说,推理需要的计算资源要少得多,并且往往有新数据可用时能实时完成。要想确保物联网应用程序能够快速响应本地事件,必须能够以非常低的时延获得推理结果。
传统云计算是将微服务部署于虚拟机中,OpenStack提供了云平台的基础设施。边缘计算是云平台的延伸,但缺少云数据中心的高性能服务器物理设施来部署和运行完整的虚拟化环境。于是轻量级的容器取代了虚拟机成了边缘计算平台标准技术之一,以Docker为主的容器技术是边缘设备上微服务的运行环境,同时硬件虚拟化可以为Docker提供更加安全的隔离。相比物理机和虚拟机,容器技术具有如下优点:部署简单、支持多环境、启动时间更短、易扩容、易迁移。但是在管理主机数量规模较大的业务场景时,单机容器管理方案往往力不从心。谷歌的Kubernetes是当前最流行的容器编排和管理系统,它实现了一套高效的应用管理、应用自修复、资源管理、线上运维和排障机制,并且形成了监控告警、服务网格、日志及调用链分析、CI/CD等方面的一系列生态,但Kubernetes原本是针对云端集中式资源管理场景设计,简单地应用到边缘计算场景会遇到诸多不适应,导致系统不稳定甚至在某些场景下运行不起来。业界目前有多种边缘容器管理的解决方案,为此产生了基于Kubernetes的开源边缘容器计算项目,如K3S、Microk8s、KubeEdge等。边缘容器的功能就是通过解决Kubernetes所有不适应边缘计算场景的点,实现使用边缘容器计算项目来管理分散的边缘设备。一个简化的边缘系统由边缘硬件、边缘平台软件系统和边缘容器系统组成,如图5所示。