导语 | 中心云计算正如火如荼竞争着,边缘云竞争又开始了。本文主要内容是介绍掌握业务上云必备知识云计算及服务模式;以及基于边缘计算“云-边-端”的框架,理解软硬一体解决方案;再结合在自动驾驶场景下的交付落地,了解“边缘计算+5G+AI”能做什么。
引言
(一)云计算定义
云计算的概念是Google CEO埃里克于2006年提出的,同年AWS成立云计算落地。根据美国国家标准与技术研究院NIST定义,云计算是一种按需使用,按量付费的服务模式,提供可用的、便捷的、按需的网络访问,可配置的计算资源共享池。
(二)服务模式
我们都知道云计算服务模式包括基础设施即服务IaaS(Infrastructure as a Service)、平台即服务PaaS(Platform as a Service)、软件即服务SaaS(Software as a Service)。为了更好地理解三种服务模式的区别,分享一个比较通俗的角度,请停留10秒钟,设想你是一个吃货,想吃到披萨有什么办法呢?
首先,我们可以去必某客、达某乐等店里买自己喜欢口味的披萨,或者点外卖购买披萨,可以去提供披萨制作服务的店里自己做,也可以在家自行制作等。那么,将吃到披萨的几种方法映射到云计算服务模式来看,IaaS层理解为他人提供厨房、炉子、煤气,你使用这些基础设施,来烤你的披萨。PaaS层理解为除了基础设施,他人还提供披萨饼皮。你只要把自己的配料洒在饼皮上,让他帮你烤出来就行了,也就是使用Paas层提供平台服务,实现你自己的设计;SaaS层理解为他人直接做好了披萨,不用你的介入,到手的就是一个成品。从用户的角度来看,从IaaS、PaaS到SaaS层,具有成本越来越低,运维管理更简单,用户租用范围变小,上线更快等特点。不同服务模式的区别如下:
具体来看云计算的技术架构与服务模式之间的对应关系。自下往上看来,Iaas层指的是服务器主机、存储、网络设备以及其他一些机房里的设备,通过虚拟化技术把底层物理资源虚拟化成上层对应的资源池;中间一层叫Paas层,这一层有数据库、中间件、负载均衡等服务;再往上就是Saas层提供给用户的各种应用。可以看到不同层次的服务提供的内容是不相同的,如果客户购买的是Iaas层的服务,那么上层的Paas、Saas资源需要客户自建。如果购买的是Saas应用层,则服务提供商已经把应用搭建好,用户只需要在上面使用即可。
基于云计算的服务模式和技术架构,各云厂商提供种类繁多的云服务,但建设思路都是类似的。以腾讯云产品矩阵为例,结合云计算服务模式,整体上看来腾讯云分别在计算、容器与中间件、存储、数据库、网络、cdn加速、视频、安全、大数据、人工智能、物联网、企业应用等类别,提供了几百种服务。
一、边缘计算
(一)什么是边缘计算
边缘云计算构筑在位于中心云与终端之间的边缘基础设施之上,是云计算能力由中心向边缘的下沉,强调通过云边的一体化、协同管理来解决在集中式云计算模式下所无法满足的业务需求。边缘云计算出现的背景是为了弥补集中式云计算能力的不足,因而讨论边缘云时往往不能独立于中心云,应当放在云-边-端的整体框架之下,将边缘云视作中心云在靠近用户侧的下沉。在边缘计算领域有一个形象的比喻——章鱼说,章鱼的浑身布满神经元,其脑部仅有40%的神经元,而剩下的60%则分布在章鱼的八条腿上。章鱼“1个大脑+N个小脑”结构和中心云+边缘云的分布式架构极为相似,各式各样的终端采集到海量数据后,将需要实时处理的小规模、局部数据就近在边缘云上完成,而复杂、大规模的全局性任务则交由中心云汇总和深入分析,中心云与边缘云统一管控、智能调度,进而实现算力的优化分配。
(二)驱动因素
随着万物互联时代到来,互联网智能终端设备数量急剧增加;随着5G通信网络普及,互联网数据规模呈现指数级增长。在传统云计算的中心化架构下,数据从终端到云中心的传输、存储、计算,已经无法满足终端用户对于时效、容量、算力的需求。超低时延、海量数据、边缘智能、数据安全及云边协同的价值是促使企业选择边缘云的主要因素。计算资源模式由单一的集中化变成了往集中化和边缘化两个方向的分化。
(三)市场规模
据权威机构IDC报告显示2020年中国边缘云市场规模总计23.4亿元。边缘云计算作为新兴领域尚处在发展的萌芽期,未来成长空间非常广阔,预计到2030年中国边缘云计算市场规模将突破1000亿级别。而边缘云的爆发既有赖于行业自身的发展成熟,也需要关注下游重点场景的规模化商用,预计2020年到2030年将会是边缘云计算从兴起到繁荣的关键十年。
(四)挑战
在实现边缘计算解决方案中,面临的挑战如下:
运维部署难,海量边缘节点统一纳管:应用升级、运维监控难,应用部署在边缘端,没有链路实现远程对应用、主机进行各种操作,且各应用的部署运维都不尽相同。
云边弱网络:云边网络不稳定会导致K8S集群内的应用不稳定。控制中心和边缘设备之间网络较复杂,因特网、以太网、5G、WIFI等形态均有可能。
边缘设备算力有限:边缘计算设备的硬件资源能力有限,其中用户现场单设备内存有可能不到1G,因此有强烈的轻量化需求。
边缘设备异构问题,监控运维机制:边缘节点形态众多,需要处理多种异构问题;边缘节点网络状况复杂,传统的CI/CD、监控运维等机制已经不适用了。
云边集成难:对于云端+边缘站点的客户,需要将站点部署的本地边缘应用与总部控制的云端平台去做打通。传统的架构下只能实现边到云的服务请求,但是无法做到云到边缘的服务,即边缘应用无法提供服务给外部用户。由于没有对边缘侧应用的数据和服务管理通道、以及登录账号的统一管理,部署到客户现场的应用常常无法互通,从而造成一个个信息孤岛。
针对这些难题,关键的技术方案是边缘计算底座云边集群。
二、云边集群
云边集群作为边缘计算的底座,与云原生解决方案一致,也是基于容器技术和K8S的编排管理能力实现。容器相比物理机和虚拟机,具有轻量级、部署简单、支持多环境、启动时间短、易扩容、易迁移等特点,能解决边缘设备异构严重的问题。在云边集群中,为了适配边缘设备做到更轻量,在边端使用containerd代替docker,K3S替代K8S。在容器编排上,K8S原本是针对集中式资源管理场景设计,简单地应用到边缘计算场景会遇到诸多不适应,云边集群在技术设计上和K8S扁平的二层结构截然不同,在技术架构上设计ServiceGroup作为抽象资源,ServiceGroup可以便捷地在共属同一个集群的不同机房或区域中各自部署一组服务,并且使得各个服务间的请求在本机房或本地域内部即可完成,避免服务跨地域访问。
下面来看看云边集群的定义,云边集群包括云端Master和边端工作节点 Node,在云端控制层面使用Kubernetes原生方式,实现边缘节点的资源分配调度和应用部署运维,支持云边协同、边缘节点自治、单元化部署、应用下发、服务拓扑等能力。
各家云厂商均有自己的云边集群容器底座,均是开源方案,阿里云提供ACK@Edge,腾讯云提供TKE Edge,百度云提供CCE@Edge,华为云提供IEF。经过竞品调研得知其技术方案和架构设计在具体实现上各有不同,核心区别之一在于对单元化部署能力实现上,下面以单元化部署的场景为例介绍云边集群能解决的问题。
解决了什么问题
在边缘计算场景下,往往需要在同一个集群中管理多个边缘站点,每个边缘站点内有一个或多个计算节点。同时需要在每个边缘站点中都运行一组有业务逻辑联系的服务,每个站点内的服务具备一套完整的功能,可以为用户提供服务。但由于网络限制,有业务联系的服务之间不希望或者不能跨站点访问。原生Kubernetes无法控制Deployment的Pod创建的具体节点位置,需要通过统筹规划节点的亲和性来间接完成。当边缘站点数量以及需要部署的服务数量过多时,管理和部署方面的极为复杂,甚至仅存在理论上的可能性。与此同时,为了将服务间的相互调用限制在一定范围,业务方需要为各个Deployment分别创建专属的Service,管理方面的工作量巨大且极容易出错并引起线上业务异常。目前,已有常规方案应对上述问题,但是仍有运维部署难,海量边缘节点统一纳管难等痛点无法解决。为此,边缘容器服务提供ServiceGroup特性,可通过yaml或者通过控制台使用单元化部署功能,轻松实现上百地域的服务部署,且无需进行应用适配或改造。方便用户便捷地在共属同一个集群的不同机房或区域中各自部署一组服务,并且使得各个服务间的请求在本机房或本地域内部即可完成,避免服务跨地域访问。
边缘计算解决方案不是单独一个产品,涉及到的领域比较多,例如云计算、5G、AI、视频等等。下文将以某厂商的边缘计算解决方案展开介绍。
三、边缘计算解决方案
某厂商19年开始在边缘云领域进行布局,经过1年多的时间,已经形成了云-边-端三位一体的产品矩阵,发布了边缘计算节点、智能移动边缘、边缘服务器等产品。从边缘计算生态布局来看,按照距中心从近到远,可划分为云边缘、移动边缘、物边缘三类。云边缘常分布于城域网内,由传统CDN节点构成,时延10~50ms;移动边缘常分布于园区街道旁,5G MEC和运营商基站,时延2ms~10ms;物边缘可分布在更小的区域,例如家中、IOT端、园区或厂房私有节点,时延2ms以内。
在云边缘层,边缘计算节点产品将公有云核心计算、存储、网络服务,分布式部署在更靠近用户的数据机房,和公有云资源使用方式对齐,提供客户按需付费、弹性扩展的边缘IAAS资源;移动边缘层旨在与运营商合作,在5G网络边缘的运营商数据中心,嵌入更轻量化的计算、存储、网络等服务,为5G场景交付超低延迟网络能力和更加下沉的计算资源;物边缘层边缘计算服务器将更适配边缘极端工况的非标准服务器资源,直接放到客户现场本地机房,支持端侧接入云端一键管控,支持边缘AI运行环境,解决低时延和本地数据处理需求。
(一)产品架构
智能移动边缘立足5G,以AI和视频为抓手,借助软硬一体的边缘计算平台能力,构建行业解决方案底座,屏蔽产业转型期的典型问题。通过开放合作和协同创新,支撑企业快速构建各种行业的解决方案,助力产业快速智能化转型。从产品架构整体上看,通过布局在Iass、Pass、Saas层的服务提供了一整套的解决方案。
其中,在Iaas层的基础设施资源有自研的边缘服务器、边缘计算节点、和运营商合作的移动智能边缘MEC、与第三方厂商合作的硬件资源等;在Paas层依托边缘计算平台作为私有化交付平台,以云边集群作为云上的云边集群形态提供边缘应用托管、边缘智能运维、边缘设备管理等能力。依托边缘AI平台提供AI算法一键托管、算力最优调度、资源弹性能力;在Saas层提供边缘应用增强套件,针对不同应用场景,为私有化客户定制化开发可视化管理的系统。下面主要介绍边缘容器底座的设计架构。
(二)边缘容器底座技术架构
在边缘计算解决方案中,边缘容器底座定位为边缘基础套件,提供Paas层的服务。主要解决中心统一管控、海量异构节点管理、复杂网络环境、设备地域分散、边缘应用全生命周期托管、远程自动化交付、云边协同需求带来的挑战。
(三)有什么亮点
边缘容器底座设计原则是中心管控,边缘自治,云边协同。支持以下几个特性:
纳管海量边缘节点:集群以树形的方式级联起来,理论上可以无限扩展。
边缘节点自治:提供了K8S/K3S agent的缓存和代理,在弱网环境下当云端节点和边端node节点失联时,能够保证node节点不被K8S驱逐,服务正常运行。
云边协同:边缘集群和边缘节点皆可被纳管,使得可以在云端一键部署,便能下发至海量的边缘节点。
边缘集群轻量化:引入了K3S轻量化集群,替代原docker方案,剔除不必要的插件,使得容器底座可以在更小的内存空间中正常运行。
自动化集成交付:自研组件使得在边缘项目中能够迅速完成私有化整体环境的交付。
屏蔽底层异构:通过云原生技术K8S及Docker完成底层资源差异的屏蔽,边缘节点上完成GPU适配,在CPU架构上完成X86和ARM的适配。
四、边缘计算在车联网中的应用
边缘计算应用于车联网,旨在把单车解决不了的问题移到路端去解决。车联网是以V2X为核心,实现车与车、车与人、车与路和车与网的全方位网络连接,从而进行智能信息的共享与交换,推动自动驾驶和智能交通发展。边缘云计算应用于车联网也同样是基于云边端模式,在靠近网络接入的路侧基础设施上进行边缘计算。通过路侧设备和车辆之间的V2X消息交互来进一步辅助自动驾驶,提升交通安全能力,提升道路出行效率,形成“聪明的车”和“聪明的路”。
在私有园区的自动驾驶场景中,某项目以园区作为中心去放置中心机房,开放道路灯杆下面放置小型服务器rscu (road site compute unit) ,将感知算法部署在这个小型服务器上跟车做通信,园区机房做统一的rscu服务器的管理。把边缘计算平台的master中心节点部署在园区机房,agent部署在边端rscu上提供统一的容器环境供感知算法运行,园区机房也会通过边缘计算平台部署一些中心服务组件,作为管理平台给用户提供服务。
边缘计算依托5G和AI的能力助力智慧交通的实现。其中,汽车集成激光雷达、摄像头等感应装置,将采集到的数据与道路边缘节点和周边车辆进行交互从而扩展感知能力,实现车与车、车与路的协同。边缘云计算通过节点下沉的方式,可以在距离车辆最近的基站进行计算,缩短计算距离,还可实时提供实时车辆位置,利用附近基站传送给临近区域的其他联网车辆,在区域范围内快速完成传递,帮助驾驶员及时做出决策。云计算中心则负责收集来自分布广泛的边缘节点的数据,感知交通系统的运行状况,通过大数据和人工智能算法,为边缘节点、交通信号系统和车辆下发合理的调度指令,从而提高交通系统的运行效率。
边缘计算是云计算领域一个很新的方向,充满了机会和挑战。
作者简介
杨丽秦
腾讯智慧出行产品测试组员工
腾讯智慧出行产品测试组员工,毕业于华中科技大学。目前负责腾讯自动驾驶云业务的专项测试工作,在云计算产品质量保障领域有丰富的经验。
推荐阅读