边缘计算云原生开源方案选型比较( 三 )


上述的架构设计 , 对比Kubernetes的能力增强点主要有:

  • 边缘单元化:通过Yurt App Manager组件 , 从单元化的视角 , 管理分散在不同地域的边缘资源 , 并对各地域单元内的业务提供独立的生命周期管理 , 升级 , 扩缩容 , 流量闭环等能力 。且业务无需进行任何适配或改造 。
  • 边缘自治: 因为每个边缘节点增加了具备缓存能力的透明代理YurtHub , 从而可以保障云边网络断开 , 如果节点或者业务重启时 , 可以利用本地缓存数据恢复业务 。
  • 云边协同(运维监控):通过Tunnel Server/Tunnel Agent的配合 , 为位于防火墙内部的边缘节点提供安全的云边双向认证的加密通道 , 即使边到云网络单向连通的边缘计算场景下 , 用户仍可运行原生kubernetes运维命令(如kubectl proxy/logs/exec/port-forward/attach等) 。同时中心式的运维监控系统(如prometheus, metrics-server等)也可以通过云边通道获取到边缘的监控数据 。
  • 云原生生态兼容:
  1. 所有功能均是通过Addon或者controller形式来增强Kubernetes , 因此保证来对Kubernetes以及云原生社区生态的100%兼容 。
  2. 另外值得一提的是:OpenYurt项目还提供了一个YurtCtl工具 , 可以用于原生Kubernetes和OpenYurt集群的一键式转换 , 
架构差异可能带来的影响
  • 原生Kubernetes带来的系统稳定性挑战:因为OpenYurt没有修改Kubernetes , 所以这个问题也是原生Kubernetes在边缘场景下的问题 。当云边长时间断网再次恢复时 , 边缘到云端会产生大量的全量List请求 , 从而对kube-apiserver造成比较大的压力 。边缘节点过多时 , 将会给系统稳定性带来不小的挑战 。
  • 边缘无轻量化解决方案: 虽然OpenYurt没有修改Kubernets , 但是在边缘节点上增加YurtHub和Tunnel Agent组件 。目前在最小的1C1G的系统上运行成功 , 更小规格机器待验证 。
边缘计算场景
  • 无设备管理能力:OpenYurt目前没有提供设备管理的相关能力 , 需要用户以workload形式来运行自己的设备管理解决方案 。虽然不算是架构设计的缺点 , 但是也算是一个边缘场景的不足点 。
2.3SuperEdge(1)开源状况 SuperEdge是腾讯云于2020年12月底开源的 , 目前还是开源初期阶段 。其架构如下:

边缘计算云原生开源方案选型比较


(2)与Kubernetes的架构差异 SuperEdge的架构设计比较简洁 , 也是采用的无侵入式对Kubernetes进行增强 。在云端(K8s Master)上增加Application-Grid Controller, Edge-Health Admission以及Tunnel Cloud组件 。而在边缘端(K8s Worker)上增加了Lite-Apiserver和Tunnel Edge , Application-Grid Wrapper组件 。从架构上看主要增加了如下能力来适配边缘场景: