SuperEdge边缘容器架构与原理
分类:知识集锦 发布时间:2024/6/6 16:16:45

一文读懂 SuperEdge 边缘容器架构与原理

随着边缘计算的飞速发展,各大厂商纷纷推出了自家的边缘计算管理框架。其中,腾讯的SuperEdge凭借其独特的架构和强大功能,在边缘计算领域崭露头角。

SuperEdge是基于Kubernetes的原生边缘计算管理框架,它不仅具备Kubernetes的零侵入和边缘自治特性,还引入了分布式健康检查、边缘服务访问控制等高级功能,极大地提升了边缘计算场景下的服务稳定性和发布治理效率。


一、特性解析

1. Kubernetes-native:SuperEdge在原生Kubernetes的基础上进行了边缘计算的扩展,这意味着它完全兼容Kubernetes的API和操作方式,无需对Kubernetes进行任何修改。通过在边缘集群中部署SuperEdge的核心组件,就可以轻松开启边缘计算功能。此外,由于其对Kubernetes的零侵入特性,用户可以在边缘集群上部署任何Kubernetes原生的工作负载,如Deployment、StatefulSet、DaemonSet等。

2. 边缘自治:SuperEdge提供了L3级别的边缘自治能力。当边缘节点与云端的网络连接不稳定或断开时,边缘节点依然可以正常运行,不影响已部署的边缘服务。这种自治能力确保了边缘计算的连续性和可靠性。

3. 分布式健康检查:为了应对边缘计算场景中复杂的网络环境,SuperEdge引入了分布式健康检查机制。每个边缘节点都会部署edge-health组件,用于执行健康检查操作。同一边缘集群中的节点会相互进行状态投票,以确保节点状态的准确性。即使云边网络存在问题,只要边缘节点之间的连接正常,就不会对该节点进行驱逐。此外,分布式健康检查还支持分组功能,可以将集群节点分成多个组(如同一机房的节点分到同一组中),以减少节点之间的数据交互量,提高系统的可扩展性。

4. 服务访问控制:SuperEdge通过自研的ServiceGroup实现了基于边缘计算的服务访问控制。用户只需定义DeploymentGrid和ServiceGrid两种自定义资源(CR),就可以轻松地在不同机房或区域中部署一组服务,并实现服务间的闭环访问。这种访问控制方式避免了服务跨地域访问带来的延迟和带宽消耗问题,提高了边缘集群服务的发布与治理效率。

5. 云边隧道:为了解决不同网络环境下的云边连接问题,SuperEdge支持自建隧道(目前支持TCP、HTTP和HTTPS协议)。通过隧道技术,用户可以实现对无公网IP边缘节点的统一操作和维护,进一步降低了边缘计算的管理难度。


二、整体架构

SuperEdge的整体架构包括云端组件和边缘组件两部分。云端组件主要负责整个边缘集群的管理和控制,而边缘组件则负责在边缘节点上执行具体的计算任务和服务。

1. 云端组件:

tunnel-cloud:负责维持与边缘节点tunnel-edge的网络隧道,支持多种协议(TCP/HTTP/HTTPS),确保云边之间的稳定通信。

application-grid controller:作为ServiceGroup的Kubernetes控制器,负责管理DeploymentGrids和ServiceGrids自定义资源,并生成对应的Kubernetes deployment和service。同时,它还实现了服务拓扑感知功能,使得服务能够在闭环内访问。

edge-admission:根据边端节点分布式健康检查的状态报告来判断节点是否健康,并协助cloud-kube-controller执行相关处理动作(如打taint)。

2. 边缘组件:

lite-API" target="_blank">apiserver:边缘自治的核心组件,作为cloud-kube-API" target="_blank">apiserver的代理服务。它缓存了边缘节点对apiserver的部分请求,当遇到这些请求且与cloud-kube-apiserver网络通信存在问题时,会直接返回给客户端,确保边缘节点的自治运行。

edge-health:负责执行边端分布式健康检查的具体操作,包括监控、探测和投票选举等,以判断节点是否健康。

tunnel-edge:在边缘节点上建立与云端tunnel-cloud的网络隧道,接受API请求并转发给边缘节点组件(如kubelet),确保云边之间的顺畅通信。

application-grid wrapper:与application-grid controller协同工作,实现ServiceGrid内的闭环服务访问和服务拓扑感知功能。


三、功能概述

1. 应用部署&服务访问控制:SuperEdge支持Kubernetes原生的所有工作负载类型的应用部署,如Deployment、StatefulSet、DaemonSet等。同时,针对边缘计算场景的特点,SuperEdge引入了ServiceGroup概念,方便用户在不同机房或区域中部署一组有业务逻辑联系的服务,并实现服务间的闭环访问。通过NodeUnit、NodeGroup和ServiceGroup的灵活组合和配置,用户可以轻松实现边缘计算的服务部署和访问控制需求。

2. 分布式健康检查:在原生Kubernetes集群中,当节点与apiserver的连接中断时,会导致节点状态异常、pod被驱逐和endpoint缺失等问题。为了解决这些问题,SuperEdge引入了分布式健康检查机制。该机制综合考虑了apiserver和节点评估因素对节点状态的判定结果,从而避免了由于云边网络不稳定造成的大量pod迁移和重建现象,保证了服务的稳定性。

SuperEdge作为基于Kubernetes的原生边缘计算管理框架,通过引入分布式健康检查、边缘服务访问控制等高级特性以及优化的整体架构设计,为边缘计算场景下的服务稳定性和发布治理效率提供了有力保障。

体验创新云技术带来核心业务效率显著提升
立即预约,加速企业数字化转型进程
Copyright ⓒ 2022 苏州博纳讯动软件有限公司 国徽 苏ICP备13004761号 法律声明及隐私政策