写点什么

KubeEdge 1.6 发布:可靠的 K8s 原生边云 API

发布于: 2021 年 03 月 05 日
KubeEdge 1.6发布:可靠的K8s原生边云API

北京时间 2 月 27 日,KubeEdge 发布了新的特性版本 v1.6.0。


本次发布的 1.6 版本在系统可扩展性、生态兼容性等方面带来了重大升级,包括:新增可靠、自治的边缘 Kube-API 原生接口支持,自定义边云消息路由支持,自动配置边缘离线应用不迁移,OPC-UA 设备协议驱动 OPC-UA Mapper,并修复了 24 处问题。


可靠的 K8s 原生边云 API 接口支持


KubeEdge 1.6 版本在边缘端新增了可靠、自治的 Kube-API 接口,为依赖于 Kubernetes API、CRD 的第三方插件和应用在边缘节点运行提供原生 API 访问支持,包括 List、Watch、Create、Update、Patch 等操作。


原生的 K8s 中,KubeClient 与 Kube-Apiserver 通过 list-watch 机制通信,在节点位于高时延网络、边缘频繁与云断链场景中,大量的 re-list 请求会给云边的通信链路造成额外的负担,影响系统的性能与稳定性。


本次新增的 Kube-API 接口基于 KubeEdge 的可靠性云边消息通信和边缘离线自治能力,在保证对原生 API 访问支持兼容的同时,避免了上述 re-list 的问题。云边网络断开重连时,边缘不会发送 re-list 请求。而这个过程中,边缘运行 KubeClient 一直保持与本地的 Kube-API 接口连接,不会受到任何影响。


对希望集成使用特定版本 Kubelet、Kube-Proxy、CNI、CSI 的用户来说,这一特性的引入无疑是激动人心的。值得一提的是,该版本提供的 Kube-API 接口也提供了对边缘访问 CRD 的可靠支持,用户可以轻松的将各类 Operator、插件在边缘运行。


注:该特性目前是 alpha 特性,欢迎大家试用。


用户自定义边云消息传输支持


边缘计算不仅仅是将应用部署在边缘,并对其进行自动化的监控和运维。在许多应用场景里,边缘和云上应用需要进行特定的消息传输、数据交换等,以完成边云协同的业务处理。例如,用户需要从云端发送命令至边缘的应用来触发特定的业务,或者边缘设备需要将采集的业务信息上传至云端处理。


KubeEdge v1.6 版本增加了自定义边云消息传输的支持,用户可以根据场景,借助 Rule 和 RuleEndpoint 两个新增 API 来自定义的边云消息传输设置,为需要边云通信的业务组件或第三方插件屏蔽底层网络环境差异。

 

后续计划:v1.6 版本支持自定义云端 REST 与边缘 MQTT 的双向消息传输,1.7 版本将提供对边云双向 REST 消息传输的支持。


自动配置边缘离线应用不迁移


原生 K8s 中,如果节点出现离线状态并超过容忍时间,node controller 默认会将节点上的应用驱逐,以重新运行在其他正常节点上。


驱逐的本质原理为,节点离线后 node controller 会将如下 taints 添加到节点上:



其中 effect 为 NoExecute 的 taint 会触发驱逐该节点上运行的应用(Pod)。但如果应用(Pod)容忍该 taint,则不会被驱逐。


对于每个 Pod,系统会默认添加如下两个 toleration:



Key 为”node.kubernetes.io/unreachable”的 toleration 可以容忍上述 taint,但其容忍时间为 300s,超时之后仍然会被驱逐。如果用户希望在断开与云端连接后将应用(Pod)长时间保留在边缘节点上,只需将容忍时间延长或置空(无限长)即可。


在 KubeEdge 1.6 版本中,用户只需为 pod 添加如下标签:

app-offline.kubeedge.io=autonomy


KubeEdge 将自动配置应用的 tolerations,使得节点离线后应用不被迁移。


OPC-UA 设备协议驱动 OPC-UA Mapper


OPCUA 是一个工业软件接口规范,是企业制造模型的统一对象和架构定义,具有跨平台、增强命名空间、 支持复杂数据内置、大量通用服务等新特点,被看作是面向未来的下一代工业通讯规范。


KubeEdge v1.5 版本发布了新的 Mapper 参考架构设计,继 Bluetooh、Modbus 协议支持后,本次发布了 Go 语言版本的 OPC-UA Mapper,进一步丰富了设备接入生态。


OPC-UA Mapper 地址:https://github.com/kubeedge/mappers-go/tree/main/pkg/opcua


结语


随着 v1.6 版本的发布,KubeEdge 提供了更好的系统可扩展性、生态兼容性,未来 KubeEdge 将持续以云原生生态为基础,围绕边缘计算独特场景不断升级!


感谢华为、谐云科技、浙江大学 SEL 实验室、中国移动、中国联通、KubeSphere、旷世科技、时速云、ARM 等组织的贡献,也感谢每一位社区贡献者!


附:KubeEdge 社区贡献和技术交流地址

网站: https://kubeedge.io

Github 地址: https://github.com/kubeedge/kubeedge

Slack 地址: https://kubeedge.slack.com

邮件列表: https://groups.google.com/forum/#!forum/kubeedge

每周社区例会: https://zoom.us/j/4167237304

Twitter: https://twitter.com/KubeEdge

文档地址: https://docs.kubeedge.io/en/latest/


用户头像

还未添加个人签名 2020.02.11 加入

还未添加个人简介

评论

发布
暂无评论
KubeEdge 1.6发布:可靠的K8s原生边云API