一. 边缘计算
随着互联网智能终端设备数量的急剧增加,以及5G和物联网时代的到来,传统云计算中心集中存储、计算的模式已经无法满足终端设备对于时效、容量、算力的需求,将云计算的能力下沉到边缘侧、设备侧,并通过中心进行统一交付、运维、管控,将是云计算的重要发展趋势。IDC预计,到2020年全球将有超过500亿的终端与设备联网,超过40%的数据要在网络边缘侧进行分析、处理与存储,这对边缘计算提供了充分的场景和想象空间。
边缘计算按功能角色主要分为三个部分:
云 – 传统云计算的中心节点,有丰富的云计算产品形态和资源,是边缘计算的管控端,负责全网算力和数据的统一管理、调度、存储。
边 – 云计算的边缘侧,又分为基础设施边缘(Infrastructure Edge)和设备边缘(Device Edge)。基础设施边缘通常位于IDC内,拥有充足的算力和存储容量,和中心有专线或骨干网连接,如CDN节点等;设备边缘通常指非传统IT基础设施的边缘节点,这类资源更靠近设备和数据源,比较常见的一般是数据网关。
端 – 终端设备,如手机、智能家电、各类传感器、摄像头等。
边缘计算目前面临的主要挑战有:
- 云边端协同:缺少统一的交付、运维、管控标准。
- 安全:边缘服务和边缘数据的安全风险控制难度较高。
- 网络:边缘网络的可靠性和带宽限制。
- 异构资源:对不同硬件架构、硬件规格、通信协议的支持,以及基于异构资源、网络、规模等差异化提供标准统一的服务能力的挑战。
二. 边缘计算 + 云原生
另一方面,以kubernetes为代表的云原生技术(Cloud native)是最近几年云计算领域发展最快的方向之一,k8s也已经成为容器应用编排的事实标准,并以非常快的发展速度扩大在云计算领域的覆盖范围,云原生技术和边缘计算相结合,可以大大提升云技术向边缘拓展的效率。
以Kubernetes为基础的云原生技术,核心价值之一是通过统一的标准实现在任何基础设施上提供和云上一致的功能和体验,借助云原生技术,可以实现云-边-端一体化的应用分发,解决在海量边、端设备上统一完成大规模应用交付、运维、管控的诉求;在安全方面,云原生技术可以提供容器等更加安全的工作负载运行环境,以及流量控制、网络策略等能力,能够有效提升边缘服务和边缘数据的安全性;在边缘网络环境下,基于云原生技术的边缘容器能力,能保证弱网、断网的自治性,提供有效的自恢复能力,同时对复杂的网络接入环境有良好的兼容性;依托云原生领域强大的社区和厂商支持,云原生技术对异构资源的适用性逐步提升,在物联网领域,云原生技术已经能够很好的支持多种CPU架构(x86-64/arm/arm64)和通信协议,并实现较低的资源占用。
三. 边缘容器
从2018下半年开始,我们和IoT、CDN等兄弟团队开展了边缘容器方面的合作,在大家的共同努力下推出了edge kubernetes,目前已经有智慧楼宇等项目成功接入,开创了云原生技术在阿里云边缘场景的首次落地。
今年我们通过ACK对Edge kubernetes进行了产品化,4月已经在ACK的所有Region中上线,并且在ENS团队的大力支持下完成了ENS资源的接入,欢迎大家试用。之后的发展规划也和众兄弟团队一起进行了设计和讨论:
四. 主要功能
Edge kubernetes在设计上一直秉持对原生k8s不进行大改的策略,所有边缘相关的特性均通过Addon实现。
在当前的设计中,边缘集群形态上主要存在下面两种:
- 云端管控集群:master在云端,node在边缘端,适用于边缘资源较少的情况,是目前的主力形态
- 边缘自治集群:master和node均在边缘端,云端针对多集群进行管控,适用于边缘node规模较大的情况
目前ACK上已经提供的是云端管控集群,所以下面的feature介绍主要针对这一集群形态。
主要特性:
- 边缘自治:断网或弱网环境下,边缘node、边缘网络均可正常运行,即使节点重启也可恢复服务。
- 边缘网络:支持多种方案供选择:公网vxlan/公网ipsec/内网vxlan/主机网络
- 边缘监控:两种监控和日志方案:a. 边缘存储+云端查询;b. 云端存储+云端查询
- armhf/arm64设备支持(experimental)
- 安全沙箱容器:Daishu/Nanovisor
- Edge unit:为了解决边缘场景下的资源调度、应用部署、容灾、网络规划等需求,引入了Edge unit概念,设计细节见下图:
五. 适用场景
Edge kubernetes适用于需要通过中心统一管控远端机房、服务器、设备的场景,轻松实现云、边、端一体的应用交付、运维、管控能力。
在IOT领域,可用于工厂、仓库、楼宇、园区、高速收费站等场景。
在CDN领域,可以支持视频直播、视频监控、在线教育等行业客户就近计算和存储的需求。
在ENS边缘计算产品上,提供了针对ENS边缘实例的DevOps能力,方便针对边缘的应用分发及部署运维。
本文仅作为引子,后续团队同学会陆续推出一系列ata文章分享边缘容器的相关技术实现。
最后,感谢一直以来紧密合作的IoT、CDN、ENS等兄弟团队的同学们。