cloud-container-engine/umn/source/nodes/creating_a_node.rst

40 KiB

original_name

cce_10_0363.html

Creating a Node

Prerequisites

  • At least one cluster has been created.
  • A key pair has been created for identity authentication upon remote node login.

Notes and Constraints

  • The node has 2-core or higher CPU, 4 GB or larger memory.
  • To ensure node stability, a certain amount of CCE node resources will be reserved for Kubernetes components (such as kubelet, kube-proxy, and docker) based on the node specifications. Therefore, the total number of node resources and assignable node resources in Kubernetes are different. The larger the node specifications, the more the containers deployed on the node. Therefore, more node resources need to be reserved to run Kubernetes components. For details, see Formula for Calculating the Reserved Resources of a Node <cce_10_0178>.
  • The node networking (such as the VM networking and container networking) is taken over by CCE. You are not allowed to add and delete NICs or change routes. If you modify the networking configuration, the availability of CCE may be affected. For example, the NIC named gw_11cbf51a@eth0 on the node is the container network gateway and cannot be modified.
  • During the node creation, software packages are downloaded from OBS using the domain name. You need to use a private DNS server to resolve the OBS domain name, and configure the subnet where the node resides with a private DNS server address. When you create a subnet, the private DNS server is used by default. If you change the subnet DNS, ensure that the DNS server in use can resolve the OBS domain name.
  • Once a node is created, its AZ cannot be changed.

Procedure

After a cluster is created, you can create nodes for the cluster.

  1. Log in to the CCE console. In the navigation pane, choose Clusters. Click the target cluster name to access its details page.

  2. In the navigation pane on the left, choose Nodes. On the page displayed, click Create Node. In the Node Settings step, set node parameters by referring to the following table.

    Compute Settings

    You can configure the specifications and OS of a cloud server, on which your containerized applications run.

    Table 1 Configuration parameters
    Parameter Description
    AZ

    AZ where the node is located. Nodes in a cluster can be created in different AZs for higher reliability. The value cannot be changed after the node is created.

    You are advised to select Random to deploy your node in a random AZ based on the selected node flavor.

    An AZ is a physical region where resources use independent power supply and networks. AZs are physically isolated but interconnected through an internal network. To enhance workload availability, create nodes in different AZs.

    Node Type

    CCE clusters support Elastic Cloud Servers (ECSs).

    CCE Turbo clusters support Elastic Cloud Servers (ECSs) and bare metal servers (BMSs).

    Container Engine

    CCE clusters support Docker and containerd in some scenarios.

    • VPC network clusters of v1.23 and later versions support containerd. Container tunnel network clusters of v1.23.2-r0 and later versions support containerd.
    • For a CCE Turbo cluster, both Docker and containerd are supported. For details, see Mapping between Node OSs and Container Engines <cce_10_0462__section159298451879>.
    Specifications Select the node specifications based on service requirements. The available node specifications vary depending on AZs.
    OS

    Select an OS type. Different types of nodes support different OSs.

    Public image: Select an OS for the node.

    Private image: You can use private images.

    Node Name

    Name of the node. When nodes (ECSs) are created in batches, the value of this parameter is used as the name prefix for each ECS.

    The system generates a default name for you, which can be modified.

    A node name must start with a lowercase letter and cannot end with a hyphen (-). Only digits, lowercase letters, and hyphens (-) are allowed.

    Login Mode
    • Key Pair

      Select the key pair used to log in to the node. You can select a shared key.

      A key pair is used for identity authentication when you remotely log in to a node. If no key pair is available, click Create Key Pair.

    Storage Settings

    Configure storage resources on a node for the containers running on it. Set the disk size according to site requirements.

    Table 2 Configuration parameters
    Parameter Description
    System Disk

    System disk used by the node OS. The value ranges from 40 GB to 1,024 GB. The default value is 50 GB.

    Encryption: Data disk encryption safeguards your data. Snapshots generated from encrypted disks and disks created using these snapshots automatically inherit the encryption function. This function is available only in certain regions.

    • Encryption is not selected by default.
    • After you select Encryption, you can select an existing key in the displayed dialog box. If no key is available, click View Key List to create a key. After the key is created, click the refresh icon.
    Data Disk

    Data disk used by the container runtime and kubelet on the node.

    At least one data disk is required for the container runtime and kubelet. The data disk cannot be deleted or uninstalled. Otherwise, the node will be unavailable.

    Click Expand to set the following parameters:

    • Allocate Disk Space: Select this option to define the disk space occupied by the container runtime to store the working directories, container image data, and image metadata. For details about how to allocate data disk space, see Data Disk Space Allocation <cce_10_0341>.
    • Encryption: Data disk encryption safeguards your data. Snapshots generated from encrypted disks and disks created using these snapshots automatically inherit the encryption function. This function is available only in certain regions.
      • Encryption is not selected by default.
      • After you select Encryption, you can select an existing key in the displayed dialog box. If no key is available, click View Key List to create a key. After the key is created, click the refresh icon.

    Adding Multiple Data Disks

    A maximum of four data disks can be added. By default, raw disks are created without any processing. You can also click Expand and select any of the following options:

    • Default: By default, a raw disk is created without any processing.
    • Mount Disk: The data disk is attached to a specified directory.

    Local Disk Description

    If the node flavor is disk-intensive or ultra-high I/O, one data disk can be a local disk.

    Local disks may break down and do not ensure data reliability. It is recommended that you store service data in EVS disks, which are more reliable than local disks.

    Network Settings

    Configure networking resources to allow node and containerized application access.

    Table 3 Configuration parameters
    Parameter Description
    Node Subnet The node subnet selected during cluster creation is used by default. You can choose another subnet instead.
    Node IP Address IP address of the specified node. By default, the value is randomly allocated.

    Advanced Settings

    Configure advanced node capabilities such as labels, taints, and startup command.

    Table 4 Advanced configuration parameters
    Parameter Description
    Kubernetes Label

    Click Add Label to set the key-value pair attached to the Kubernetes objects (such as pods). A maximum of 20 labels can be added.

    Labels can be used to distinguish nodes. With workload affinity settings, container pods can be scheduled to a specified node. For more information, see Labels and Selectors.

    Resource Tag

    You can add resource tags to classify resources.

    You can create predefined tags in Tag Management Service (TMS). Predefined tags are visible to all service resources that support the tagging function. You can use these tags to improve tagging and resource migration efficiency.

    CCE will automatically create the "CCE-Dynamic-Provisioning-Node=node id" tag.

    Taint

    This parameter is left blank by default. You can add taints to set anti-affinity for the node. A maximum of 10 taints are allowed for each node. Each taint contains the following parameters:

    • Key: A key must contain 1 to 63 characters, starting with a letter or digit. Only letters, digits, hyphens (-), underscores (_), and periods (.) are allowed. A DNS subdomain name can be used as the prefix of a key.
    • Value: A value must start with a letter or digit and can contain a maximum of 63 characters, including letters, digits, hyphens (-), underscores (_), and periods (.).
    • Effect: Available options are NoSchedule, PreferNoSchedule, and NoExecute.

    For details, see Managing Node Taints <cce_10_0352>.

    Note

    For a cluster of v1.19 or earlier, the workload may have been scheduled to a node before the taint is added. To avoid such a situation, select a cluster of v1.19 or later.

    Max. Pods

    Maximum number of pods that can run on the node, including the default system pods.

    This limit prevents the node from being overloaded with pods.

    This number is also decided by other factors. For details, see Maximum Number of Pods That Can Be Created on a Node <cce_10_0348>.

    ECS Group

    An ECS group logically groups ECSs. The ECSs in the same ECS group comply with the same policy associated with the ECS group.

    Anti-affinity: ECSs in an ECS group are deployed on different physical hosts to improve service reliability.

    Select an existing ECS group, or click Add ECS Group to create one. After the ECS group is created, click the refresh button.

    Pre-installation Command

    Enter commands. A maximum of 1,000 characters are allowed.

    The script will be executed before Kubernetes software is installed. Note that if the script is incorrect, Kubernetes software may fail to be installed.

    Post-installation Command

    Enter commands. A maximum of 1,000 characters are allowed.

    The script will be executed after Kubernetes software is installed and will not affect the installation.

    Agency

    An agency is created by the account administrator on the IAM console. By creating an agency, you can share your cloud server resources with another account, or entrust a more professional person or team to manage your resources.

    If no agency is available, click Create Agency on the right to create one.

  3. Click Next: Confirm. Confirm the configured parameters, specifications.

  4. Click Submit.

    The node list page is displayed. If the node status is Running, the node is created successfully. It takes about 6 to 10 minutes to create a node.

  5. Click Back to Node List. The node is created successfully if it changes to the Running state.