All Products
Search
Document Center

Container Service for Kubernetes:Add an edge node

Last Updated:Oct 25, 2024

You can add different types of resources to the edge node pool in a Container Service for Kubernetes (ACK) Edge cluster. These resources include Elastic Compute Service (ECS) instances from different regions, on-premises nodes, nodes from other cloud providers, and servers distributed in factories, stores, vehicles, and ships. This topic describes how to add an edge node to an edge node pool in an ACK Edge cluster.

Prerequisites

An ACK Edge cluster is created. For more information, see Create an ACK Edge cluster in the console.

Limits

  • Make sure that your cluster has a sufficient node quota. To add more nodes, submit an application in the Quota Center console. For more information about the quota limits of ACK Edge clusters, see Quotas and limits.

  • Some endpoints are accessed when you add edge nodes. You must configure the network security group for edge nodes to access required endpoints. For more information, see Configure endpoints and IP routing for edge nodes.

  • To add edge nodes, the nodes must run operating systems that are listed in the following table.

    Architecture

    Operating system version

    System kernel version

    ACK Edge version

    AMD64/x86_64

    Anolis7.9 and Anolis8.6

    4.19.X

    1.22.15-aliyunedge.1 and later

    AMD64/x86_64

    Alibaba Cloud Linux 2.1903

    4.19.X

    1.20.11-aliyunedge.1 and later

    AMD64/x86_64

    Alibaba Cloud Linux 3

    5.10.X

    1.20.11-aliyunedge.1 and later

    AMD64/x86_64

    CentOS 7.4, CentOS 7.5, CentOS 7.6, CentOS 7.7, CentOS 7.8, and CentOS 7.9

    3.10.X

    1.12.6-aliyunedge.1 and later

    AMD64/x86_64

    CentOS 8.0 and CentOS 8.2

    4.18.X

    1.18.8-aliyunedge.1 and later

    AMD64/x86_64

    Ubuntu 16.04

    4.4.X

    1.18.8-aliyunedge.1 and later

    AMD64/x86_64

    Ubuntu 18.04

    4.15.X

    1.12.6-aliyunedge.1 and later

    AMD64/x86_64

    Ubuntu 18.04

    5.4.X

    1.16.9-aliyunedge.1 and later

    AMD64/x86_64

    Ubuntu 18.04

    5.11.X

    1.18.8-aliyunedge.1 and later

    AMD64/x86_64

    Ubuntu 20.04

    5.4.X

    1.18.8-aliyunedge.1 and later

    AMD64/x86_64

    Ubuntu 20.04 and Ubuntu 22.04

    5.15.X

    1.26.3-aliyun.1 and later

    AMD64/x86_64

    Red Hat Enterprise Linux 8.8

    4.18.X

    1.26.3-aliyun.1 and later

    AMD64/x86_64

    Kylin V10

    4.19.X

    1.26.3-aliyun.1 and later

    AMD64/x86_64

    UnionTech OS Server 20

    4.19.X

    1.26.3-aliyun.1 and later

    Arm64

    CentOS 8.0

    4.19.X

    1.14.8-aliyunedge.1 and later

    Arm64

    Ubuntu 18.04

    4.9.X

    1.14.8-aliyunedge.1 and later

    Arm64

    Ubuntu 18.04

    4.19.X

    1.14.8-aliyunedge.1 and later

    Arm64

    Ubuntu 20.04

    5.10.X

    1.22.15-aliyunedge.1 and later

  • When you add GPU-accelerated nodes, you must select the following GPU models. For more information about how to connect a GPU-accelerated node to the cloud, see FAQ about edge nodes.

    Architecture

    GPU model

    ACK Edge version

    AMD64/x86_64

    Nvidia_Tesla_T4

    1.16.9-aliyunedge.1 and later

    AMD64/x86_64

    Nvidia_Tesla_P4

    1.16.9-aliyunedge.1 and later

    AMD64/x86_64

    Nvidia_Tesla_P100

    1.16.9-aliyunedge.1 and later

    AMD64/x86_64

    Nvidia_Tesla_V100

    1.18.8-aliyunedge.1 and later

    AMD64/x86_64

    Nvidia_Tesla_A100

    1.20.11-aliyunedge.1 and later

    AMD64/x86_64

    Nvidia_Tesla_A10

    1.20.11-aliyunedge.1 and later

    AMD64/x86_64

    Nvidia_L20

    1.26.3-aliyun.1 and later

    AMD64/x86_64

    Nvidia_L40

    1.26.3-aliyun.1 and later

Add a node

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

  2. On the Clusters page, find the cluster that you want to manage and click its name. In the left-side navigation pane, choose Nodes > Node Pools.

  3. On the Node Pools page, find the node pool that you want to manage and choose More > Add Existing Node in the Actions column.

  4. On the page that appears, click Manual to manually add existing instances.

    Note

    In manual mode, you can add ECS instances, ENS instances, and edge nodes.

    1. Click Next Step to go to the Instance Information wizard page. You can set the parameters that are used to add the node. For more information, see Parameters.

      Note

      The default value of Script Validity Period is 1 hour. If you want to use the script for more than 1 hour, you can set the validity period to meet your requirement. If you set Script Validity Period to 0 hours, the script is permanently valid.

    2. After you set the parameters, click Next Step. On the Complete wizard page, click Copy to copy the script to the edge node that you want to add. Then, execute the script on the node.

    If the following result is returned, the edge node is added to the cluster.

    接入成功

Parameters

Parameters

Parameter

Description

Usage notes

flannelIface

The name of the network interface controller (NIC) that is used by the Flannel plug-in.

The name of the NIC that is recorded in the default route entry of the node.

对

enableIptables

Specifies whether to enable iptables.

false

对

quiet

Specifies whether to answer all questions with yes when you add nodes.

true

对

manageRuntime

Specifies whether to use edgeadm to install and manage the runtime.

true

对

nodeNameOverride

The name of the node.

  • "". This is the default value. This value indicates that the hostname is used as the node name.

  • "XXX": This value indicates that the specified node name is XXX.

  • "*". This value indicates that a random string that contains six characters is used as the node name.

  • "*.XXX". This value indicates that a random string that is appended with a suffix is used as the node name. The random string contains six characters.

对

allowedClusterAddons

The list of components to be installed. By default, this parameter is left empty, which indicates that no component is installed. For a regular node, set this parameter to ["kube-proxy","flannel","coredns"].

["kube-proxy","flannel","coredns"]

对

gpuVersion

Specifies whether the node to be added is a GPU-accelerated node. By default, this parameter is empty.

For more information about the supported GPU models, see GPU model.

"". This is the default value. This value indicates that the node to be added is not a GPU-accelerated node.

对

labels

Specifies the labels to be added to the node.

{}

对

annotations

Specifies the annotations to be added to the node configurations.

{}

对

taints

Specifies the taints to be added to the node.

[]

对

nodeIface

This parameter specifies the following information:

  • This parameter specifies that kubelet retrieves the node IP address from the specified network interface. If you do not set this parameter, kubelet attempts to retrieve the node IP address in the following order:

    • Searches /etc/hosts for the node whose name is the same as the specified hostname.

    • Retrieves the IP address of the network interface that is specified in the default route entry of the node.

  • This parameter specifies the name of the NIC that is used by Flannel. In this case, this parameter is equivalent to the flannelIface parameter. This parameter will replace the flannelIface parameter in the future.

""

对

runtimeRootDir

This parameter specifies the working directory of the runtime. The parameter takes effect only when manageRuntime is set to true.

  • The default directory is /var/lib/docker when Docker is used.

  • The default directory is /var/lib/containerd when containerd is used.

对

imageRepoType

Specifies the source of system component images on the node.

  • "": This is the default value. This value indicates that images are downloaded over a private network if nodes in the node pool are connected to ACK in private network mode and images are downloaded over the Internet if nodes in the node pool are connected to ACK in public network mode.

  • public: This value indicates that images are downloaded over the Internet.

  • private: This value indicates that images downloaded over a private network. Nodes in the node pool are connected to ACK in private network mode.

对

selfHostNtpServer

Specifies whether to manually synchronize the time.

  • false: This is the default value. This value indicates that edgeadm automatically synchronizes the time.

  • true:This value indicates that the time is manually synchronized.

对

References

  • If you have any problems when you add edge nodes, see FAQ about edge nodes.

  • For more information about how to remove an edge node, see Remove edge nodes.

  • ACK Edge clusters support edge node autonomy. Edge node autonomy ensures that applications on an edge node can still run as expected when the edge node is disconnected from the cloud. For more information, see Configure edge node autonomy.