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