Skip to main content

KubeEdge v1.22 is live!

· 4 min read

On Nov 4, 2025, KubeEdge released v1.22.

1.22 What's New

Release Highlights

Add Hold/Release Mechanism for Controlling Edge Resource Updates

In applications such as autonomous driving, drones, and robotics, we want to control when updates to edge resources occur, ensuring that these resources cannot be updated without the permission of the edge administrator. In v1.22.0, we introduced a hold/release mechanism to control updates to edge resources.

On the cloud side, users can indicate that the corresponding Pod should be held on the edge by adding the annotation edge.kubeedge.io/hold-upgrade: "true" to resources like Deployment, StatefulSet, and DaemonSet.

On the edge, Pods marked with edge.kubeedge.io/hold-upgrade: "true" will be temporarily held and not processed. Edge administrators can release the lock on the Pod to complete the resource update by executing the following command:

keadm ctl unhold-upgrade pod <pod-name>

Alternatively, they can execute the following command to unlock all held edge resources on the edge node:

keadm ctl unhold-upgrade node
note

Using the keadm ctl command requires the DynamicController and MetaServer switches to be enabled.

Refer to the link for more details.(#6348, #6418)

Beehive Framework Upgrade, Supporting Configurable Submodule Restart Policies

In release 1.17, we implemented auto-restart for the EdgeCore modules, allowing global configuration of edge modules restarts. In release 1.22, we optimized the Beehive framework to support restart policy configurations for edge submodules. We also standardized the error handling for starting Beehive submodules.

Refer to the link for more details.(#6444, #6445)

Device Model Update Based On Thing Model and Product Concept

The current Device Model is designed based on the thing model concept. In traditional IoT, devices are usually designed with a three-tier structure: thing model, product, and device instance, which can lead to user confusion during actual use.

In release 1.22, we upgraded the device model design by integrating the concepts of thing models and actual products. We extracted the protocolConfigData and visitors fields from existing device instances into the device model, allowing device instances to share these model configurations. Additionally, to reduce the cost of separating models, device instances can override these configurations.

Refer to the link for more details.(#6457, #6458)

Add Featuregates for Pod Resources Server and CSI Plugin in EdgeCore Integrated Lightweight Kubelet

In previous versions, we removed the Pod Resources Server capability from the integrated lightweight Kubelet in EdgeCore. However, in some use cases, users wish to restore this capability for monitoring Pods. Additionally, the default activation of the CSI Plugin in Kubelet can lead to failures in offline environments due to failed CSINode creation when starting EdgeCore.

In v1.22.0, we added featuregates for the Pod Resources Server and CSI Plugin in the lightweight Kubelet. If you need to enable the Pod Resources Server or disable the CSI Plugin, you can add the following feature gates to your EdgeCore configuration:

apiVersion: edgecore.config.kubeedge.io/v1alpha2
kind: EdgeCore
modules:
edged:
tailoredKubeletConfig:
featureGates:
KubeletPodResources: true
DisableCSIVolumePlugin: true
...

Refer to the link for more details.(kubeedge/kubernetes#12, kubeedge/kubernetes#13, #6452)

C language Mapper-Framework Support

In v1.20.0, we added a Java version of the Mapper-Framework based on the existing Go language version. Due to the diversity of communication protocols for edge IoT devices, many edge device driver protocols are implemented in C. Thus, in the new release, KubeEdge offers a C language version of the Mapper-Framework. Users can access the feature-multilingual-mapper-c branch in the KubeEdge main repository to generate custom Mapper projects in C using the Mapper Framework.

Refer to the link for more details.(#6405, #6455)

Upgrade Kubernetes Dependency to v1.31.12

Upgrade the vendored kubernetes version to v1.31.12, users are now able to use the feature of new version on the cloud and on the edge side.

Refer to the link for more details.(#6443)