All Products
Search
Document Center

Container Service for Kubernetes:Configure edge node autonomy

Last Updated:Mar 26, 2026

In edge computing environments, cloud-edge network connectivity is often intermittent. By default, Kubernetes marks a node as Not Ready and evicts its Pods after the node stops sending heartbeats—deleting the Pods and rescheduling them on other nodes. Node autonomy overrides this behavior: when an autonomous edge node loses connectivity to the control plane, its Pods continue running without interruption and recover automatically when the connection is restored.

Prerequisites

Before you begin, ensure that you have:

How it works

Node autonomy is disabled by default for all edge nodes added to a cluster.

State Behavior when cloud-edge network disconnects
Autonomy enabled Pods continue running; applications automatically recover
Autonomy disabled Node status changes to Not Ready; Pods are evicted or migrated to other nodes after the toleration time ends

Enable node autonomy

ACK console

  1. Log on to the ACK console. In the left-side navigation pane, click Clusters.

  2. On the Clusters page, click the name of the target cluster. In the left-side navigation pane, choose Nodes > Nodes.

  3. On the Nodes page, find the edge node you want to configure, and choose More > Node Autonomy Settings in the Actions column.

    Node Autonomy Settings appears only for edge nodes.
  4. In the Node Autonomy Settings dialog box, click OK.

kubectl

  1. Add the node autonomy annotation to an edge node:

    kubectl annotate node <node-name> node.beta.openyurt.io/autonomy=true --overwrite
  2. (Optional) Set an autonomy duration. If not set, autonomy is permanent.

    • Within the autonomy duration: Pods continue to run with zero service interruption.

    • After the autonomy duration expires: Pods are forcibly evicted from the edge node.

    kubectl annotate node <node-name> node.alibabacloud.com/autonomy-duration=500s --overwrite

    When the cloud-edge network disconnects:

Verify node autonomy

  1. On the Clusters page, click the name of the target cluster. In the left-side navigation pane, choose Nodes > Nodes.

  2. Find the node, and choose More > Details in the Actions column.

  3. Under the Overview tab, scroll to the Status section. Autonomy is enabled when the type Autonomy shows status True.

    Node autonomy status

Configure the EdgeHub cache component

EdgeHub caches data exchanged between node components and the API server—such as Pod and ConfigMap resource information—to the local disk at /etc/kubernetes/cache. When node autonomy is enabled, components read from this cache during network disconnections instead of reaching the API server.

The cache covers only API server data (Pod specs, ConfigMaps, and similar resources). It does not include business data.

If your components rely on API server data during disconnections, register their User-Agent with EdgeHub:

  1. Get the User-Agent string for your component from your browser's Developer Tools or the API server logs.

  2. Log on to the ACK console. In the left-side navigation pane, click Clusters.

  3. On the Clusters page, find the target cluster and click its name. In the left-side pane, choose Configurations > ConfigMaps.

  4. Select kube-system from the Namespace drop-down list, find the ConfigMap named edge-hub-cfg, and click Edit YAML in the Actions column.

  5. Add your User-Agent to the cache_agents key, then click OK.

  6. Log on to the node, go to /etc/kubernetes/cache, and confirm a directory named after your User-Agent exists.

After this configuration, component data is persisted to the node's local disk. When the network disconnects, components retrieve data from the local cache and continue to operate normally.

Usage notes

  • Node autonomy and the autonomy duration configuration apply only to edge nodes, not cloud nodes.

  • Autonomy duration (node.alibabacloud.com/autonomy-duration) requires ACK Edge clusters running Kubernetes 1.28 or later.

  • Autonomy duration can only be configured through kubectl, not through the ACK console.

  • If autonomy duration is not configured, autonomous edge nodes maintain permanent autonomy with no Pod eviction regardless of how long the disconnection lasts.

What's next