OpenYurt v1.2 新版本深度解读(一): 聚焦边云网络优化

本文涉及的产品
Serverless 应用引擎 SAE,800核*时 1600GiB*时
可观测可视化 Grafana 版,10个用户账号 1个月
EMR Serverless StarRocks,5000CU*H 48000GB*H
简介: 云原生边缘计算智能开源平台 CNCF OpenYurt 于近期发布了 v1.2 版本。OpenYurt 是业界首个对云原生体系无侵入智能边缘计算平台,具备全方位的“云、边、端一体化”能力,能够快速实现海量边缘计算业务和异构算力的高效交付、运维及管理。


本文作者:

李志信,OpenYurt Member,Apache dubbo PMC,专注于云原生边缘计算的系统架构和解决方案

张逸飞,OpenYurt Member,浙江大学 SEL 实验室


云原生边缘计算智能开源平台 CNCF OpenYurt 于近期发布了 v1.2 版本。OpenYurt 是业界首个对云原生体系无侵入智能边缘计算平台,具备全方位的“云、边、端一体化”能力,能够快速实现海量边缘计算业务和异构算力的高效交付、运维及管理。


在 v1.2 版本中,OpenYurt 遵循社区提出的“节点池治理”理念,新增组件 Pool-Coordinaotr,提出了一套针对云边场景的资源、网络、应用、监控等角度的边缘治理方案。本文首先聚焦云边场景下的网络优化问题的解决进行解读,敬请持续关注。


Pool-Coordinator 节点池治理及其对云边网络的优化


组件背景


早在去年年初,社区就提出了 “节点池治理” 的概念。节点池为 OpenYurt 生态概念,表示集群内一组网络互通的边缘机器节点。在云边协同场景,边缘 IOT 设备与算力往往依赖多台机器节点工作,节点池概念为 OpenYurt 生态在边缘算力的管控粒度方面增加了一个维度。而“节点池治理”,专注于边缘机器的资源、网络、生命周期、可观测指标等等角度,提供了边缘测视角与管理思路。


Pool-Coordinator 在社区内首次践行了这一概念,提出了一套针对云边场景的资源、网络、应用、监控等角度的边缘治理方案,具备高可用能力。


边缘基础组件对云边网络的需求与挑战


边缘基础组件对于边云网络的要求,驱使着 OpenYurt 为开发者提供更合理、更优化的解决方案。


首先是云边网络带宽基础条件的问题。在云原生边缘计算的场景中,云边网络通路带宽往往受到各个方面的限制,例如机器资源,物理距离,资金成本等,这就导致对于部分厂商和用户,其云边网络条件带宽较低,甚至在各别特定环境的节点池带宽极低。


其次是集群资源数据量的问题。边缘集群往往覆盖较多地域、机器节点与物理设备,相比于普通集群,其覆盖地域广阔,规模较大,集群整体资源量也就相对较多。对于部分集群基础组件,例如代理组件、CNI 组件、DNS 组件,甚至部分业务组件,例如设备驱动程序,边缘基础架构中间件等,需要在启动时通过 K8S List/Watch 机制来拉取全量资源并监听,这个过程对网络要求较高。


再者是边缘基础组件的重要性,在新节点纳管入边缘集群时,初始化程序会拉起一系列 OpenYurt 边缘基础组件与配置,待顺利初始化,才会调度业务程序至节点。一旦边缘基础组件由于带宽原因,拉取依赖资源失败,会导致边缘机器业务应用无法启动,边缘节点算力扩容失败。另一方面,处于运行中的边缘基础组件,如果长时间拉取资源失败,可能造成网络、代理、存储资源与中心不同步,造成业务风险。


能力、架构实现与工作方式


3.1 Pool-Scope(节点池维度)资源缓存


Pool-Coordinator 会为节点池维度的资源提供边缘侧缓存,从而降低因为这些资源的大量 list/watch 请求造成的云边网络带宽问题。


在部署阶段,开发者可以通过安装 Chart 包的方式,将 Pool-Coordinator 组件安装至集群,该过程利用了 OpenYurt 生态的 YurtAppDaemon 资源,将这一组件以节点池粒度部署至所有的边缘节点池,每个节点池一个实例。


待 Pool-Coordinator 实例启动,会由选主机制选出的 Leader YurtHub 将 Pool-Scope 资源,例如 endpoints/endpointslice 拉取至边缘,进而同步至 Pool-Coordinator 组件,缓存起来,以供节点池内全部节点使用。


1.png


节点池内全部节点上运行的 YurtHub,将 Pool-Scope 资源读请求代理至 Pool-Coordinator。理论上,针对一个资源的全量请求,一个节点池只需要一条云边长链接即可,节点池内的这些资源的读请求,都交由 Pool-Coordinator 向下提供服务,从而极大程度降低云边网络消耗。特别是在具有带宽要求的弱网络场景,Pool-Coordinator 可以削弱由于边缘基础容器启动/重建导致的大量请求,以及减少运行时期的云边资源下发量。


Pool-Scope 资源默认定义为 endpoints 和 endpointslices 两种资源。这两种资源在 YurtHub 代理的云边流量中占比较高,这在规模较大集群中体现的更为明显;另外 Pool-Scope 资源要求为节点池内公用的资源,与调用方所属节点无关,这也适配于上述两者。Pool-Scope 资源可由用户配置其他资源,例如 Pods,Node,以及 CR,以应对在特定资源量大的网络优化场景。


3.2 YurtHub 的初始化、选主与容灾机制


当新的节点池创建并添加算力时,YurtHub 作为边缘机器节点的底层进程将最先启动。其优先直连 APIServer,执行正常的初始化逻辑。待节点加入集群,OpenYurt 组件 Yurt-App-Manager 将按需调度边缘节点池组件 Pool-Coordinator 至该机器。等到 Pool-Coordinator 成功启动,YurtHub 将探知其可用状态,与之建联交互。YurtHub 提供 --enable-coordinator 启动参数,将该参数置为true时,YurtHub 会对节点池 Pool-Coordinator 组件进行探知,为节点池内灵活的切流、按需启动提供了支持。


一个节点池内的全部 YurtHub 实例存在读写冲突问题,我们指定这些 YurtHub 通过 Pool-Coordinator 内的分布式锁执行选主,只有 Leader YurtHub 负责缓存资源写操作。其他 Follower 将时刻监听 Pool-Coordinator 内保存的 Leader Lease 资源,从而确定是否 Leader 存活,只有存活的 Leader 才能保证缓存资源的正确性和时效性。当 Leader YurtHub 因为某些原因,例如和中心网络断开,以及自身原因而退出,将由其他 Follower YurtHub 中重新选主,保证边缘缓存的可用性。


这个过程我们提供了 Grace Period 机制,即当短暂的云边网络故障导致的 Leader YurtHub 不健康状态,不会导致边缘节点池切流至云端,当超过一定时间之后再进行切流,以防网络抖动和大量节点切流导致带宽彻底打满。


2.png


当 Pool-Coordinator 因异常原因退出后,边缘 YurtHub 将感知,并将代理请求转发至云端,从而获得正确响应。待 Pool-Coordinator 重建后,会重启选主机制,重建边缘缓存,降低云边带宽消耗。


证书与鉴权


Pool-Coordinator 套件提供完备的证书管理机制,并保证在流量转发过程的权限正确。


在系统初始化阶段,会由 Yurt-Controller-Manager 签发证书,该证书被 YurtHub 和 Pool-Coordinator 获取,保证 YurtHub 有权限,并可以安全读写缓存。


对于 Pool-Scope 资源请求转发缓存的过程中,会进行 Token 替换,保证这次请求带有缓存读写权限。


3.png


展望


随着 v1.2 版本的发布,Pool-Coordinator 在后续将继续着重于稳定性建设和生态组件建设,包括可观测能力、网络抖动的鲁棒性优化、断网自制能力、Pool-Coordinator 容器运维能力等。Pool-Coordinator 组件也将会工业生产中的大规模落地实践,并像其他 OpenYurt 生态组件一样在生产过程中迭代和优化,提升系统稳定性。


欢迎有更多的贡献者与用户参与 Pool-Coordinator 的建设!如果您对于 OpenYurt 有任何疑问,欢迎使用钉钉扫描二维码或者搜索群号(12640034121)加入钉钉交流群。


4.png


此处,立即了解 OpenYurt 项目

相关文章
|
3天前
|
缓存 网络协议 CDN
在网页请求到显示的过程中,如何优化网络通信速度?
在网页请求到显示的过程中,如何优化网络通信速度?
157 59
|
15天前
|
缓存 监控 网络协议
移动端常见白屏问题优化之网络优化篇
本文将要分享的是得物技术团队针对移动端最常见的图片加载导致的端侧白屏问题,而进行的的移动网络方向的技术优化实践,希望能带给你启发。
19 1
移动端常见白屏问题优化之网络优化篇
|
6天前
|
机器学习/深度学习 安全 网络安全
利用机器学习优化网络安全威胁检测
【9月更文挑战第20天】在数字时代,网络安全成为企业和个人面临的重大挑战。传统的安全措施往往无法有效应对日益复杂的网络攻击手段。本文将探讨如何通过机器学习技术来提升威胁检测的效率和准确性,旨在为读者提供一种创新的视角,以理解和实施机器学习在网络安全中的应用,从而更好地保护数据和系统免受侵害。
|
29天前
|
安全 网络安全 网络虚拟化
优化大型企业网络架构:从核心到边缘的全面升级
大型企业在业务运作中涉及多种数据传输,涵盖办公应用、CRM/ERP系统、数据中心、云环境、物联网及安全合规等多个方面。其复杂的业务生态和全球布局要求网络架构具备高效、安全和可靠的特性。网络设计需全面考虑核心层、汇聚层和接入层的功能与冗余,同时实现内外部的有效连接,包括广域网连接、远程访问策略、云计算集成及多层次安全防护,以构建高效且可扩展的网络生态系统。
优化大型企业网络架构:从核心到边缘的全面升级
|
23天前
|
算法
基于GA遗传优化的离散交通网络双层规划模型设计matlab仿真
该程序基于GA遗传优化设计了离散交通网络的双层规划模型,以路段收费情况的优化为核心,并通过一氧化碳排放量评估环境影响。在MATLAB2022a版本中进行了验证,显示了系统总出行时间和区域排放最小化的过程。上层模型采用多目标优化策略,下层则确保总阻抗最小,实现整体最优解。
|
28天前
|
机器学习/深度学习 安全 算法
利用机器学习优化网络安全防御策略
【8月更文挑战第30天】在信息技术迅猛发展的今天,网络安全问题日益突显,传统的安全防御手段逐渐显得力不从心。本文提出一种基于机器学习的网络安全防御策略优化方法。首先,通过分析现有网络攻击模式和特征,构建适用于网络安全的机器学习模型;然后,利用该模型对网络流量进行实时监控和异常检测,从而有效识别潜在的安全威胁;最后,根据检测结果自动调整防御策略,以提升整体网络的安全性能。本研究的创新点在于将机器学习技术与网络安全防御相结合,实现了智能化、自动化的安全防御体系。
|
9天前
|
机器学习/深度学习 算法 数据安全/隐私保护
基于PSO粒子群优化的GroupCNN分组卷积网络时间序列预测算法matlab仿真
本项目展示了一种结合粒子群优化(PSO)与分组卷积神经网络(GroupCNN)的时间序列预测算法。该算法通过PSO寻找最优网络结构和超参数,提高预测准确性与效率。软件基于MATLAB 2022a,提供完整代码及详细中文注释,并附带操作步骤视频。分组卷积有效降低了计算成本,而PSO则智能调整网络参数。此方法特别适用于金融市场预测和天气预报等场景。
|
1月前
|
监控 算法 网络协议
在Linux中,如何进行网络资源的优化?
在Linux中,如何进行网络资源的优化?
|
1月前
|
运维 安全 SDN
网络拓扑设计与优化:构建高效稳定的网络架构
【8月更文挑战第17天】网络拓扑设计与优化是一个复杂而重要的过程,需要综合考虑多方面因素。通过合理的拓扑设计,可以构建出高效稳定的网络架构,为业务的顺利开展提供坚实的支撑。同时,随着技术的不断进步和业务需求的不断变化,网络拓扑也需要不断优化和调整,以适应新的挑战和机遇。
|
1月前
|
算法
基于多路径路由的全局感知网络流量分配优化算法matlab仿真
本文提出一种全局感知网络流量分配优化算法,针对现代网络中多路径路由的需求,旨在均衡分配流量、减轻拥塞并提升吞吐量。算法基于网络模型G(N, M),包含N节点与M连接,并考虑K种不同优先级的流量。通过迭代调整每种流量在各路径上的分配比例,依据带宽利用率um=Σ(xm,k * dk) / cm来优化网络性能,确保高优先级流量的有效传输同时最大化利用网络资源。算法设定收敛条件以避免陷入局部最优解。