下载安卓APP箭头
箭头给我发消息

客服QQ:3315713922

边缘计算与云原生相结合

作者:匿名     来源: 互联网点击数:661发布时间: 2021-10-18 10:39:32

标签: 边缘计算与云原生云计算

  在前面的文章里,小编给大家介绍了边缘计算相关的知识,并留下了一个问题,接下来的文章里,大家跟随小编一起来看看边缘计算与云原生相结合的模式。

  本地设备中边缘计算的云原生化

  云原生模式的关键技术是切换底层设施。通过将Docker切换到Kubernetes,它改变了边缘主程序的运行模式,使其成为Kubernetes中具有管理特权的容器实例,带来了更精细的应用组织能力,从而直接引入微服务和服务网格。

  下面是LFEdgeBaetyl2.0的架构图,显示了一个典型的云原生边缘计算系统:

  

 

  从上图可以看出,Baetyl1.0到2.0的升级将原来的主程序、容器服务和远程管理简化为服务+远程管理,所有本地程序都运行在Kubernetes中。这种变化会给开发者带来很多好处,包括:

  l主程序可以更新。Baetyl系统本身yl系统本身需要使用手动或操作系统包管理器进行更新,这必然要求操作者获得控制台。新模式将系统更新视为BaetylOTA的一部分,这将使边缘计算设备在第一时间得到安全更新和Bug修复。

  l多容器应用可以独立更新。在原模式下,虽然每个容器都是完全独立运行的服务,但升级需要统一进行,管理员无法定义服务之间的依赖关系。新模式充分利用Kubernetes丰富的应用定义,使每项服务都能独立部署和升级,这将使边缘计算具有更加多样化的功能。

  l支持边缘集群。基于Kubernetes的编排能力,新个Baetyl实例可以分布在多个不同的计算节点上,这不仅可以提高总计算能力,而且可以获得更高的可用性。

  远程管理中边缘计算的云原生化

  根据LFEdge的定义,边缘计算将覆盖各种网络区域,实现与云的无缝融合。

  

 

  从图中可以看出,不同网络之间没有绝对的边缘和云的区别,而是根据各自的特点承担不同程度的计算负载,双方都有广泛的应用和数据交换。因此,边缘计算需要与云计算共享同一套控制面机制,即全部纳入云原始形态范围,统一使用Kubernetes进行管理。

  Kubernetes将应用程序安排的操作转换成etcd中的数据条目,工作节点通过读取etcd获得需要执行的工作负载。该方法已被证明是数据中心安全高效的模式。但是,边缘计算和云数据中心通常是由不稳定的网络连接的。如果边缘计算设备直接用于Kubernetes工作节点,Kubernetes将网络通信错误用于工作节点失败,从而频繁出现错误的工作负载迁移。

  云原生化管理的核心问题是如何在不稳定的网络下实现一套保证Kubernetes稳定排列的机制。根据行业的不同实现,解决安排稳定性问题一般分为三个流派。

  虚拟节点模式

  虚拟节点是为每个边缘计算设备创建一个逻辑和虚拟的Kubernetes工作节点,称为virtual-kubelet。虚拟节点本身和Kubernetes位于同一个网络中,可以接受到稳定的工作负载编排。随后,虚拟节点将其工作负载的配置发送到真实的边缘设备上,从而实现间接稳定的排列。

  虚拟节点的缺点是隔离了云和边缘的实际状态。云很难根据边缘的实际情况随时调整负载,边缘只能被动接受排列结果。即使边缘计算有多个节点,在云中的Kubernetes看来也只是一个单独的虚拟节点,这使得在本地很难实现真正的自动负载平衡和故障转移。

  复制同步状态

  改造虚拟节点的一个思路是将本地边缘计算系统视为单独的Kubernetes集群。这种方法可以保证当地有足够的安排灵活性。云只需要向下同步工作负载的内容,不需要注意具体的安排。其技术要点在于如何保证发布数据的一致性,即如何正确同步复制etcd状态数据库的内容。

  同步状态复制的缺点是引入了多套Kubernetes集群,需要新的数据同步协议,etcd数据属于Kubernetes的内部数据,可能会带来更高的开发和管理成本。

  ShadowCRD

  CustomResourceDefinition是Kubernetes社区推荐的功能扩展机制。通过CRD,可以引入特殊资源。例如,具有自编排能力的边缘计算节点可以被视为新的CRD资源。CRD提供标准的编程接口,可以在不破坏Kubernetes内部封装的情况下改变其编排行为,如有序启动服务、绑定服务和存储等。

  DeviceShadow是一个来自物联网的概念,即每个物理设备(Device)都有对等的影子对象(Shadow),设备在不同时期对应不同版本的影子。应用程序可以通过阅读当前版本的数据状态来获得设备的当前状态。通过设置新的影子版本,可以反向控制设备改变状态,实现各种功能调整和能力升级。由于物联网设备在不稳定的网络环境中普遍运行,影子协议自然优先考虑最终一致性,并内置了各种数据丢失和数据重复的处理策略。此外,物联网底层广泛使用的MQTT协议对低带宽、低功耗设备进行了良好的处理。基于以上两点,使用数字孪生技术可以满足边云同步对一致性和网络质量的要求。

  Baetyl2.0结合上述两项技术,实现了单个Kubernetes集群中全局边缘的稳定排列。Baetyl-Cloud组件将对资源的声明转化为对影子设备状态的期望,然后通过MQTT协议向Baetyl设备发送通知。后一种影子状态解码后可以得到Kubernetes的资源定义,同时可以通过MQTT协议向上报告新的影子设备状态。通过这种方法,Baetyl可以在弱网络条件下正确同步云和边缘。

  ShadowCRD是一种灵活、高效、不损失信息的边云同步技术。未来,与Operator的结合将进一步提高全局自动化管理能力。

  好了,就介绍这么多,在过去的几年里,边缘计算经历了非常快速的技术演进,这是工业数字化需求的强大推动。与云原始模式的结合将使边缘计算更好地吸收云、大数据和人工智能的结果,并进一步扩大后者的应用范围。

    >>>>>>点击进入计算专题

赞(8)
踩(0)
分享到:
上一篇:边缘计算介绍
华为认证网络工程师 HCIE直播课视频教程