KubeEdge v1.16.0 版本发布!集群升级部署易用性大幅提升

💡 原文中文,约10700字,阅读约需26分钟。
📝

内容提要

华为云发布了KubeEdge v1.16.0版本,新增了集群升级、易用性、边缘设备管理等功能。

🔎

延伸解读

升级兼容性注意事项

从老版本升级到 v1.16.0 时,需注意 MQTT 服务管理方式的变化。新版本使用 DaemonSet 管理边端 MQTT,而旧版本使用静态 Pod,同时运行会导致端口冲突。文章提供了兼容操作步骤,包括为旧节点打标签、修改 DaemonSet 节点亲和性、调整边端配置等。此外,云边版本差异不应超过 2 个版本,以避免升级期间的不一致问题。

边缘节点升级的批量操作与预检查

v1.16.0 支持通过 NodeUpgradeJob API 对边缘节点进行一键化、批量升级,并具备预检查、并发升级、失败阈值和超时处理等功能。用户可指定升级版本、检查项(如 CPU、内存、磁盘)、并发数等参数。这降低了大规模边缘节点升级的复杂度和风险,但需确保节点满足预检查条件,并合理设置并发和超时以避免升级失败。

镜像预下载减少部署失败

新版本引入 ImagePrePullJob API,允许用户在批量边缘节点或节点组中提前下载镜像。这有助于减少应用部署或更新时因镜像加载导致的失败率高、效率低等问题,尤其在大规模场景下效果明显。用户可指定镜像列表、目标节点、检查项、并发数等参数,但需注意磁盘空间等预检查项,以避免预下载失败。

Mapper 升级与数据面集成简化开发

基于 Mapper-Framework 的 Mapper 升级能力,通过依赖引用方式简化了升级流程,用户无需手动修改大量代码。同时,DMI 数据面内置集成 Redis 与 TDEngine 数据库,支持自动推送设备数据,用户只需在 device-instance 配置文件中定义相关字段即可。此外,USB-Camera Mapper 样例提供了 helm chart 包,方便用户参考开发具体业务 Mapper。

❓

Q&A

KubeEdge v1.16.0 在集群升级方面有哪些新功能?

KubeEdge v1.16.0 支持云边组件自动化升级。用户可以通过 Keadm 工具一键化升级云端,并通过创建 NodeUpgradeJob API 批量升级边缘节点,支持预检查、并发升级、失败阈值和超时处理。

如何升级 KubeEdge 云端组件?

使用 Keadm 工具执行命令:keadm upgrade cloud --advertise-address=<init时设置的值> --kubeedge-version=v1.16.0。升级完成后会打印 ConfigMap 历史配置,如果手动修改过 ConfigMap,可通过历史配置还原。

KubeEdge v1.16.0 的镜像预下载功能有什么作用?

镜像预下载允许用户通过 ImagePrePullJob API 提前在边缘节点上加载镜像,支持批量节点或节点组预下载多个镜像,减少应用部署或更新时因加载镜像导致的失败率高、效率低的问题。

KubeEdge v1.16.0 如何简化 Windows 边缘节点的安装?

新版本支持使用 Keadm 工具直接安装 Windows 边缘节点,操作命令与 Linux 边缘节点相同,简化了安装步骤。

KubeEdge v1.16.0 在易用性方面有哪些提升?

易用性提升包括:支持在 Keadm join 时通过 --hub-protocol 配置云边通信协议(websocket 或 quic);keadm join 与 CNI 插件解耦,无需提前安装 CNI 插件;升级 K8s 依赖到 v1.27.7。

从老版本升级到 KubeEdge v1.16.0 时,MQTT 服务管理有哪些注意事项?

新版本使用 DaemonSet 管理边端 MQTT 服务,可通过云端 Helm Values 配置是否开启。从老版本升级需考虑兼容问题,避免静态 Pod 和 DaemonSet 管理的 MQTT 端口冲突。操作步骤包括:给旧边缘节点打标签、修改 MQTT DaemonSet 节点亲和性、将节点 MQTT 改为 DaemonSet 管理。

🏷️

标签

➡️

继续阅读