Skip to main content
Account

OpenYurt

OpenYurt extends upstream Kubernetes to edge nodes. Learn how YurtHub gives edge autonomy, and how NodePool and YurtAppSet manage remote sites.

Status
Stable
Category
Provisioning
Subcategory
Automation & Configuration
License
Apache-2.0
Technology matrix Skip Just not for me See the matrix

OpenYurt is a Kubernetes extension that turns a standard cluster into an edge cluster, allowing nodes spread across unreliable networks and remote sites to be managed from a single, unmodified control plane. It was started by Alibaba and is now a CNCF incubating project.

The main architectural trick is the YurtHub agent, which runs on every edge node and sits between the kubelet and the API server. YurtHub caches watch results and object state on the node’s local disk, so if the link to the cloud control plane drops, the kubelet keeps reading from its local cache and pods continue running with their current configuration — a property OpenYurt calls “edge autonomy”. The YurtTunnel and Yurt-manager components handle inbound reachability (log fetches, exec, port-forward) across NAT and asymmetric network paths from cloud to edge. On top of this, the NodePool and YurtAppSet CRDs let you describe groups of geographically co-located nodes and schedule workloads per-pool without inventing custom affinity rules.

OpenYurt is Apache-2.0 and competes with KubeEdge (a more invasive fork-style approach where the edge runs a reduced control plane), SuperEdge, and k3s plus custom tooling. OpenYurt’s defining trade-off is staying as close to upstream Kubernetes as possible: any standard cluster can be converted to OpenYurt with yurtadm and converted back, and workloads need no changes.

Automation & Configuration

Email signup loads here. You can also manage email preferences in account settings.

Build OpenYurt? I'll show you where engineers get stuck with it → Back free content for the community →