Cloud Native 7 min read

How OpenYurt Enables Edge Autonomy on Native Kubernetes

This article explains OpenYurt’s non‑intrusive architecture that extends native Kubernetes to edge scenarios, detailing its edge‑autonomy features, the challenges it solves, and the two main design approaches—kubelet reconstruction and the YurtHub proxy—along with their trade‑offs and implementation details.

Alibaba Cloud Native
Alibaba Cloud Native
Alibaba Cloud Native
How OpenYurt Enables Edge Autonomy on Native Kubernetes

OpenYurt Overview

OpenYurt is an open‑source project that extends a native Kubernetes cluster to edge nodes without modifying the core kubelet. It provides edge‑autonomy capabilities such as local caching, workload continuity during network partitions, and seamless reconnection.

Edge‑Autonomy Requirements

Edge nodes must keep workloads running when the network is unstable or disconnected. The following three problems must be addressed:

Node or kubelet restart loses in‑memory container state, preventing workload recovery during a disconnection.

Prolonged network loss triggers the cloud‑side controller to evict edge pods.

After network restoration, the state of edge resources must be reconciled with the cloud control plane.

Solution 1 – Rebuilding kubelet

One approach is to modify the kubelet to reuse its checkpoint mechanism. Container status and pod specifications are persisted to a local file (e.g., /var/lib/kubelet/pod-checkpoint). When the node restarts while offline, the kubelet reads the checkpoint and recreates the pods from the cached data.

Advantages

Direct integration of device‑management logic into kubelet.

Lightweight customisation of the kubelet binary.

Drawbacks

Invasive changes make future Kubernetes upgrades difficult.

Other edge components cannot reuse the autonomy logic.

Couples the solution tightly to specific IoT use‑cases, increasing architectural complexity.

Solution 2 – YurtHub (OpenYurt) Architecture

OpenYurt introduces a transparent proxy called YurtHub (also known as edge‑hub) that runs alongside the kubelet on each edge node. YurtHub intercepts all kubelet API calls to the apiserver, caches the responses locally, and forwards them to the cloud when connectivity is available.

Key behaviours:

If the kubelet or node restarts during a partition, YurtHub serves the cached pod and node status, allowing the kubelet to recreate workloads without contacting the cloud.

When the network is restored, YurtHub synchronises any pending updates (e.g., pod status, node conditions) back to the apiserver.

Benefits

No modification of the upstream kubelet; upgrades remain seamless.

Cache and proxy logic are reusable by other edge components.

Design aligns with Kubernetes extension principles, simplifying future feature additions.

Recommended minimum node resources: 2 CPU and 4 GB RAM (additional CPU/memory may be required for heavy workloads).

Addressing Problem 2 – Pod Eviction

The open‑source component yurt-controller-manager includes a custom Node Controller that disables automatic pod eviction while the edge node reports a “NetworkUnavailable” condition. This prevents the cloud‑side kube-controller-manager from deleting edge workloads during a prolonged disconnection.

Addressing Problem 3 – State Consistency After Reconnection

YurtHub’s cache is immutable during a network outage; it does not accept new updates from the cloud. Upon reconnection, YurtHub pushes the locally cached state to the apiserver and then pulls the latest cluster state, ensuring that edge resources converge with the cloud control plane.

Repository

OpenYurt source code: https://github.com/alibaba/openyurt

Original Source

Signed-in readers can open the original source through BestHub's protected redirect.

Sign in to view source
Republication Notice

This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactadmin@besthub.devand we will review it promptly.

Cloud NativeEdge ComputingKubernetesOpenYurtYurtHub
Alibaba Cloud Native
Written by

Alibaba Cloud Native

We publish cloud-native tech news, curate in-depth content, host regular events and live streams, and share Alibaba product and user case studies. Join us to explore and share the cloud-native insights you need.

0 followers
Reader feedback

How this landed with the community

Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.