作者王继罗,腾讯云专家工程师,腾讯边缘 Kubernetes 管理平台 TKE Edge 技术负责人,SuperEdge 边缘容器开源项目发起人之一。
本文整理自腾讯云专家工程师王继罗在 2020年12月深圳 Qcon 大会上的分享内容——边缘计算场景下云边端一体化的挑战与实践 。
边缘计算想必大家都已经听过了,但是如何将业务扩展到边缘,从而实现更大的业务价值呢?
关于这个问题,腾讯云早在几年前就已开始进行思考,并且着手打造了云边端一体化的超融合平台,目的是希望能够让业务可以更容易落地到边缘。
今天,我们就从以下三个部分展开,跟大家分享腾讯云在建设超融合平台时的一些经验:
- 第一部分:主要介绍边缘计算有什么作用、业务落地边缘存在哪些挑战、以及为什么要有云边端一体化;
- 第二部分:主要介绍腾讯云在打造超融合平台时的一些实战经验和进展;
- 第三部分:介绍 3 个边缘业务落地案例。
云计算发展趋势
提到云计算,大家第一时间就会想起中心云计算。
中心云计算是一种集中式架构,计算资源位于中心机房,由云厂商统一维护。那么,这种模式有什么好处呢?
- 业务方不再需要管理底层资源,更能聚焦于业务本身,降低了管理成本;
- 业务方可以灵活高效地申请、使用、退还底层资源,从整体上提高了资源利用率,降低了资源的使用成本。
而边缘计算,是一种分布式计算,计算资源分散在离数据源比较近的地方,达到就近提供服务的目的。从时间维度上看,边缘计算的发展可以分为 3 个阶段:
- 技术形成期,1998 - 2013。 最早可以追溯到内容分发网络(CDN),主要用途把数据缓存在离用户近的位置,达到缩短数据下载时间,提高用户体验的目的。
- 快速发展期,2014 - 2017。 由于满足万物互联的需求,引起国内外学术界和产业界的密切关注,各机构纷纷出台相关的白皮书。
- 实际落地期,2018 - ? 随着 5G 的发展,出现越来越多的落地场景,进入政府工作指导报告,基本上可以预见边缘计算会开始爆发。
边缘计算有什么用
前面我们讲了边缘计算是什么,有些人就会有这样一个疑问:既然我们已经有了中心云计算,为什么还需要边缘计算?边缘计算能带来什么价值呢?
其实随着技术不断地发展,云计算的范畴已经从中心不断地向边缘扩展,演变成了中心云-边缘云-端设备协同工作的架构模式。
为什么会发生这样变化呢? 主要是因为需求和场景在不断变化,尤其是许多传统行业在信息化改造过程中提出来更多新需求,如:工业制造、港口物流、交通能源等等。
以智能制造为例,智能制造的本质就是设备智能化、信息化,整个系统的工作流程是:采集数据、处理数据、指导生产。这带来了两个方面的问题:
- 高实时性要求。 很多工业数据具有极强的实时性,过期时间非常短,往往只有几毫秒,这就要求采集数据、数据处理、指导生产的整个过程需要在几毫秒内完成。如果上传到云端处理,然后从云端返回控制指令,整个过程就会耗时比较长,显然不能满足时效性要求,会造成严重的后果,比如制造出的产品精度不够,或者次品率比较高,所以就近处理数据是智能制造的核心。
- 海量数据如何处理。 智能工控设备、传感器源源不断地产生工业产品及环境方面的数据,带来很高的传输和存储成本,这些成本甚至超过智能化带来的利润,反而成了工业往智能化转型的阻碍。另一方面,这些数据 90% 以上都是无效数据,如果可以尽可能早地筛选出有用数据,去除无效数据,就可以很好地降低传输和存储成本。
再举一个高清视频的例子,4K的高清视频需要至少 40M 带宽,带宽容量和成本是我们必须考虑的重要因素,相对于中心机房,边缘机房的总带宽容量要大,单价也更便宜,因此这类服务很适合部署在边缘。
总的来说,边缘计算可以带来 4 个方面的好处:容量更大、时延更低、成本更低、支持本地化处理。
边缘计算架构
前面我们讲了云计算在逐步演变成中心云-边缘云-端设备协同工作的模式,那新模式下的架构如何呢?
以腾讯云为例,中心云通常指的是 IDC 机房,边缘云依次会是 ec、oc、mec 机房,现场设备一般位于数据源附近,比如:家庭网关、交通灯路口、港口/园区/矿山内部。
通常物联设备与边缘端设备之间的时延可以控制在 2 ms内,适合处理实时性要求极高的业务数据,比如工业控制类的业务。
与边缘云之间的时延可以控制在 10ms 内,可以满足实时音视频、ARVR、云游戏的业务场景。
这就是边缘计算的大致架构情况。
带来的挑战
下面我们一起看一下边缘计算场景会带来哪些新挑战。
- 异构严重。 在软硬件两方面都有体现,像中心云和边缘云通常采用x86和linux 标准发行版,而边缘资源由于需要考虑成本以及业务的特殊要求很可能是采用成本更便宜或者是定制化的软硬件方案。
- 规模庞大。 根据各种权威机构预测,2025年全球物联设备数量会突破千亿,分布在全球各地。如何去管理这么大规模的设备也是一项很有挑战的任务
- 环境复杂。 位于云机房的设备还好,很多终端设备常常位于恶劣的环境,你比如炼钢厂的很多设备长期处于高温环境、水利监测方面的设备部署环境往往都比较潮湿。设备网络环境也是各种各样,有线的、无线的,无线又有 WIFI、4G5G网络、zigbee等等。
- 标准不统一。很多地方还处于没有标准,或者是有很多标准但没有一种公认标准,尤其是在管理方式上极其不统一。
这些挑战带来的后果就是:
- 效率下降。影响范围包括研发测试、交付部署、升级运维等等。
- 管理困难。规模很大,各方面环境很复杂,标准也很多,想要管好我们的资源也变得困难重重。
- 可靠性降低。边缘环境很恶劣,如何在恶劣的环境下保证服务质量也是一个难题。
云边端一体化的意义
边缘场景有如此多的挑战,带来的影响就是业务落地非常困难,这个问题直接阻碍了行业的发展。为了降低业务落地门槛,促进行业顺利发展,云边端一体化的就显得很有必要。
一体化体现在多个方面:
- 统一管理。首先,我们要把复杂多变底层资源管理方案统一起来,尽量减少业务对底层细节的不必要感知,比如硬件架构、操作系统、网络环境等等。其次是提供的管理能力要尽可能与中心云保持统一,比如监控告警、发布运维等等各种业务常用的基础能力。
- 云边协同。在边缘计算场景下,把业务从中心下沉到边缘是很自然的事情,但是还不够。通常都需要让边缘和云协同工作起来,比如:把边缘的有用数据收集到中心进行分析处理,然后继续反馈到边缘也是非常有必要的。以AI场景为例,我们可以把推理放到边缘进行,然后从边缘收集数据在中心进行训练,训练好的模型又下发到边缘。另外,云上的能力也需要形成联动,比如把边缘的有用数据收集上来,在云上做呈现和再加工。
- 资源调度。边缘计算场景下资源很分散,负载随着时空不同而差异很大,如何根据时空差异对资源做合理有效的调节,使资源使用达到最佳效果也是一件很有意义的事情。合理的资源调度可以让系统变得更高效、稳定、低成本。
超融合平台的使命
上面我们一起探讨了边缘计算的挑战和云边端一体化的意义,腾讯云几年前就开始往这方面投入资源,经过多年沉淀逐步建设了囊括方方面面的超融合平台,接下来再和大家分享下腾讯云在超融合平台建设方面的实践。
在建设初期,大家思考得最多的问题就是什么是超融合平台,我们希望超融合平台给业务带来什么样的好处。经过长时间的摸索,我们确定了超融合平台的使命:让边缘资源像中心云资源一样容易管理。
简单来说就是,从平台层面屏蔽底层的复杂性,所有的基础能力尽可能与中心云对齐,从而让业务使用起来感受不到太多差异,业务方可以更加聚焦,把精力集中于具体业务研发,最终让所有的事情都变得简单高效。
如何达成这种效果
方向:
- 完全自研。 从零开始,代价很高;不具有普适性,难以推广。
- 拥抱云原生。 云原生是一种生态,囊括了方方面面的能力,我们可以基于这些能力,而不是重复造轮子,更聚焦于解决边缘场景的特殊性,达到事半功倍的效果。
方案:
- 使用原生 Kubernetes。 并非针对边缘计算场景,直接在边缘使用会有一些问题。
- 魔改 Kubernetes。 门槛高,代价大,兼容性问题不可忽视。
- 增强 Kubernetes。 遵守 Kubernetes 标准,灵活,开放,学习成本低,使用起来容易。
TKE Edge
TKE Edge[1]是腾讯云基于原生 Kubernetes 研发的边缘计算容器系统,它的主要目的是屏蔽错综复杂的边缘计算物理环境,为业务提供一种统一的、标准的资源管理和调度方案。其部分能力已经开源为 SuperEdge[2] 项目。
TKE Edge 有多个特点:
- Kubernetes 原生。以无侵入的方式将 Kubernetes 强大的容器编排、调度能力拓展到边缘端,其原生支持 Kubernetes,完全兼容 Kubernetes 所有 API 及资源,无额外学习成本。
- 边缘自治。提供 L3 级边缘自治能力,当边缘节点与云端网络连接不稳定或处于离线状态时,边缘节点可以自主工作,化解了网络不可靠所带来的不利影响。
- 分布式节点健康监测。是业内首个提供边缘侧健康监测能力的开源容器管理系统。SuperEdge 能在边缘侧持续守护进程,并收集节点的故障信息,实现更加快速和精准的问题发现与报告。此外,其分布式的设计还可以实现多区域、多范围的监测和管理。
- 内置边缘编排能力。能够自动部署多区域的微服务,方便管理运行于多个地区的微服务。同时,网格内闭环服务可以有效减少运行负载,提高系统的容错能力和可用性。
- 内网穿透。能够保证 Kubernetes 节点在有无公共网络的情况下都可以连续运行和维护,并且同时支持传输控制协议(TCP)、超文本传输协议(HTTP)和超文本传输安全协议(HTTPS)。
超融合平台
超融合平台是以底层 IaaS 为基础,以 TKE Edge 为粘接,集成大量腾讯云上能力和业务的边云联动平台,平台有三大特点:
- 开放性。在 IaaS 资源侧,除了可以接入腾讯的资源,还可以很方便地接入用户已有的计算资源:如其他云厂商服务器、用户自建机房、智能设备等等。
- 集成性。平台集成大量云上基础服务能力,云监控、云日志、云运维等,能满足大部分使用需求;另外还打通了腾讯云资源,边缘计算机器、腾讯云智能网关设备等等。
- 易用性。功能使用方式基本与中心云使用方式保持一致,无须学习额外的使用知识。
边缘资源建设情况
- 边缘计算机器[3](Edge Computing Machine,ECM)。该产品通过将计算能力从中心节点下沉到靠近用户的边缘节点,提供低时延、高可用、低成本的边缘计算服务,目前已开放 300+ 节点,全国覆盖。
- 一体化中心。该产品以腾讯云自研的 Mini T-Block 的移动数据中心基础设施为载体,融合 5G、边缘计算、物联网等技术能力,以及引入腾讯云边缘计算 IaaS/PaaS/SaaS 平台产品能力,支持云游戏、4K 直播、机器人等 5G 2C 和 2B 业务,提供全面创新、可交付型的 5G 边缘计算整体解决方案。
- 边缘智能网关。该产品是腾讯面对物联网边缘应用场景的工业级设备,提供 IoT 设备接入、AI 本地分析、边云协同等功能,具有小体积、高可靠、多网络、超静音、易管理等特性,适用于园区安防、智慧零售、电力巡检、智慧路灯、智能交通、水利监测、工业质检等场景。
边缘业务落地案例
音视频业务实践
- 资源量极大,分布极广,异构很严重。开发时需要考虑适配不同的硬件环境,测试的工作量成倍增加,发布上线更是相当麻烦。
- 如果是每个机房部署一套 K8s,一则是带来的额外资源开销成本不可忽视,二则会出现上千个集群基本上已经无法管理。
- 接入超融合平台后,通过容器化技术最大程度屏蔽掉底层资源异构,集群数量可以从上千个减少到几十套。开发、测试、发布运维成本下降明显。
工业云
工业云的底层是一个私有云机房,上面部署许多工业领域方面的管理系统。其中交付和运维是他们最头痛的两个问题。以往都是派遣交付团队去客户现场部署,交付一套系统少则半个月,日常运维、扩容等基本都需要去现场实施,效率很低,成本极高。
对接到超融合平台后,他们的交付精简成只需在用户环境中执行一条命令,日常运维等操作全部在云上完成。
另一个是工业增值业务,以往都是用户选中需要的增值业务,签合同,去现场部署,客户付钱,流程繁琐,周期很长。现在做出了云上工业电商模式,用户把业务加到购物车,自行下单后业务实时生效。
混合资源管理
这个场景的特点是资源类型很多,有云主机、自建机房、边缘智能设备,网络环境也很复杂:4/5G、单向网络,两者都有。
以车路协同为例,通常在一个区域有一个云中心,上面运行车路协同相关的系统管理服务;云中心之下是边缘云小机房,数量从几个到上百个不等,主要做数据存储;再下面是路口智能设备,运行 AI 推理方面的服务,负责处理路口摄像头视频数据;
以前的管理方式是在中心云和边缘云均部署一套 K8s,路口智能设备由于资源有限不足以部署完整的 Kubernetes 集群,未容器化。这场景两大主要痛点是:
- 集群数量太多,管理起来是一个沉重的负担。另一个是服务更新和配置升级很麻烦,需要一个一个集群操作,很容易遗漏。
- 路口智能设备由于未容器化,无论是服务升级还是线上 debug 均不方便。
由于超融合平台不要求边缘资源在同一内网,很方便就在同一个集群内同时管理中心云、边缘云、路口设备,很好地解决了上面提到的两个痛点。
参考资料
[1]
TKE Edge: https://cloud.tencent.com/document/product/457/42889
[2]
SuperEdge: https://github.com/superedge/superedge
[3]
边缘计算机器: https://console.cloud.tencent.com/ecm
插播福利!!!
一份3万字的云原生路线图手册待你打开
腾讯云原生后台回复关键字“手册”即可获取
《腾讯云原生路线图手册》和《腾讯云原生最佳实践》