北京时间 1 月 30 号发布的 OpenYurt v1.2.0 版本,社区呼声最高的几大特性终于落地,OpenYurt 的特点更加鲜明,主要特点包括:Kubernetes 无侵入,云边端全协同,可编程的资源访问控制,以及声明式云原生设备管理。
v1.2 版本聚焦在节点池治理,重点打造 OpenYurt 系统的差异化技术竞争力,主要特性有降低云边通信的流量成本,边缘自治能力增强,更丝滑的跨地域通信能力等。
大幅降低云边通信流量成本
在云边协同场景下,边缘通过公网和云端连接,当集群中部署了大量的业务 Pod 和微服务系统(引入大量 Service 和 Endpointslices),边缘节点和云端之间需要消耗大量带宽,给用户带来极大的公网流量成本压力。
社区对降低云边通信流量一直有比较强的诉求,如何在不侵入修改 Kubernetes 的基础上满足需求,首先大家比较容易考虑到的方案是在节点池内增加一个 sync 组件,实时同步云端的数据,然后再分发给节点池中的各个组件。但是这个方案落地将面临不小的挑战,首先数据访问请求都是边缘主动向云端发起的,sync 如何拦截这些请求并分发数据呢?同时如果 sync 组件故障,边缘的请求将面临中断,而保障 sync 组件的高可用会非常棘手。
OpenYurt 社区首创基于 pool-coordinator+YurtHub 的云边流量复用机制,既与原生 Kubernetes 的云边通信链路无缝融合,又优雅的保障了通信链路的高可用(YurtHub Leader 选举),实现云边通信成本的消减。
在节点池内,节点从云端获取的数据,可以分为两种类型:
- pool scope data: 组件从云端获取的数据完全一致,如每个节点的 kube-proxy 获取到的 endpointslices
- node scope data: 组件从云端获取的数据和自身节点相关,如每个节点的 kubelet 获取到的 pods
同时通过测试[1]发现,真正占用云边带宽的数据是 pool scope data。OpenYurt v1.2 中通过在节点池中复用 pool scope data,从而大幅降低云边的数据通信量。如下图:
完整内容请点击下方链接查看:
https://developer.aliyun.com/article/1162895?utm_content=g_10...
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。