After a node pool is created in the cluster, Container Service for Kubernetes (ACK) allows you to modify its configuration in the ACK console. For example, you can change the billing method, vSwitches, instance types, and system disks that are used by a node pool. You can also enable or disable auto scaling for a node pool. This topic describes how to modify the configurations of a node pool.
Precautions
After you modify a node pool, the modifications generally apply to new nodes, and to existing nodes only in specific cases such as changing their labels and taints. If you perform O&M operations on a node pool, such as node pool upgrades, node repairing, Common Vulnerabilities and Exposures (CVE) patching, and kubelet configuration customization, the configurations of the existing nodes in the node pool are also modified.
Modifications to a node pool do not affect existing nodes or applications in the node pool.
Procedure
Log on to the ACK console. In the left-side navigation pane, click Clusters.
On the Clusters page, find the cluster that you want to manage and click its name. In the left-side navigation pane, choose .
On the Node Pools page, find the node pool that you want to modify and click Edit in the Actions column.
In the dialog box that appears, modify the parameters of the node pool.
NoteIn the following table, indicates that the parameter cannot be modified, and indicates that the parameter can be modified.
Parameter
Modifiable
Description
Region
The region where the cluster resides.
Container Runtime
For more information about container runtimes, see Comparison of Docker, containerd, and Sandboxed-Container.
Auto Scaling
Specify whether to enable auto scaling. This feature provides cost-effective computing resource scaling based on resource demand and scaling policies. For more information, see Auto scaling overview. Before you enable this feature, you can configure node auto scaling for the node pool. For more information, see Step 1: Enable node auto scaling.
VPC
The virtual private cloud (VPC) in which the cluster resides is automatically selected.
vSwitch
You can select up to three vSwitches that are deployed in different zones. If no vSwitch is available, click Create vSwitch. For more information, see Create and manage vSwitches.
When the node pool is scaled out, nodes in the zones in which the selected vSwitches reside are added to the node pool. Node pools are scaled based on the Scaling Policy that you select in the Advanced Options section of the node pool.
Billing Method
The following billing methods are supported for nodes in a node pool: Pay-As-You-Go, Subscription, and Preemptible Instance. To ensure that all nodes in a node pool use the same billing method, ACK does not allow you to switch the billing method of a node pool between Pay-As-You-Go or Subscription and Preemptible Instance. For example, you cannot change the billing method of a node pool from Preemptible Instance to Pay-As-You-Go or Subscription.
If you select the Pay-As-You-Go billing method, you are charged for the Elastic Compute Service (ECS) instances in the node pool on a pay-as-you-go basis. You are not charged for using the node pool.
If you select the Subscription billing method, you must configure the Duration and Auto Renewal parameters.
If you select the Preemptible Instance billing method, you must configure the following parameter at the same time.
Upper Price Limit of Current Instance Spec: If the real-time market price of an instance type that you select is lower than the value of this parameter, a preemptible instance of this instance type is created. After the protection period (1 hour) elapses, the system checks the spot price and resource availability of the instance type every 5 minutes. If the real-time market price exceeds your bid price or if the resource inventory is insufficient, the preemptible instance is released.
ACK supports only preemptible instances with a protection period. For more information, see What are preemptible instances and Best practices for preemptible instance-based node pools.
NoteIf you change the billing method of a node pool, the change takes effect only on newly added nodes. The existing nodes in the node pool still use the original billing method. For more information about how to change the billing method of existing nodes in a node pool, see Change the billing method of an instance from pay-as-you-go to subscription.
ACK supports only preemptible instances with a protection period. For more information, see Best practices for preemptible instance-based node pools.
Instance Type
Select the ECS instances used by the worker node pool based on instance types or attributes. You can filter ECS instances by attributes such as vCPU, memory, instance family, and architecture.
When the node pool is scaled out, ECS instances of the selected instance types are created. The scaling policy of the node pool determines which instance types are used to create new nodes during scale-out activities. Select multiple instance types to improve the success rate of node pool scale-out operations.
If the node pool fails to be scaled out because the instance types are unavailable or the instances are out of stock, you can specify more instance types for the node pool. The ACK console automatically evaluates the scalability of the node pool. You can view the scalability level when you create the node pool or after you create the node pool.
For more information about ECS instance types, see Overview of instance families.
For more information about node pool scalability, see Check the scalability of a node pool.
NoteARM-based ECS instances support only ARM images. For more information about ARM-based node pools, see Configure an ARM-based node pool.
If you select only GPU-accelerated instances, you can select Enable GPU Sharing on demand. For more information, see cGPU overview.
Operating System
Public Image: ContainerOS, Alibaba Cloud Linux 3, Ubuntu, and Windows public images provided by Container Service for Kubernetes. For more information, see OS images.
Custom Image: Use custom OS images. For more information, see How do I create a custom image based on an existing ECS instance and use it to create nodes?
NoteAfter you change the OS image of the node pool, the change takes effect only on newly added node. The existing nodes in the node pool still use the original OS image. For more information about how to update the OS images of existing nodes, see Node pool updates.
To ensure that all nodes in the node pool use the same OS image, ACK allows you to only update the node OS image to the latest version. ACK does not allow you to change the type of OS image.
System Disk
ESSD AutoPL, Enterprise SSD (ESSD), ESSD Entry, Standard SSD, and Ultra Disk are supported.
The types of system disks that you can select depend on the instance types that you select. Disk types that are not displayed in the drop-down list are not supported by the instance types that you select. For more information about disks, see Overview of Block Storage. For more information about disk types supported by different instance types, see Overview of instance families.
NoteIf you select Enterprise SSD (ESSD) as the system disk type, you can set a custom performance level for the system disk. You can select higher PLs for ESSDs with larger storage capacities. For example, you can select PL 2 for an ESSD with a storage capacity of more than 460 GiB. You can select PL 3 for an ESSD with a storage capacity of more than 1,260 GiB. For more information, see Capacities and performance levels.
You can select Encryption only if you set the system disk type to Enterprise SSD (ESSD). By default, the default service CMK is used to encrypt the system disk. You can also use an existing CMK generated by using BYOK in KMS.
You can select More System Disk Types and select a disk type other than the current one in the System Disk section to improve the success rate of system disk creation. The system will attempt to create a system disk based on the specified disk types in sequence.
Mount Data Disk
ESSD AutoPL, Enterprise SSD (ESSD), ESSD Entry, SSD, and Ultra Disk are supported. The disk types that you can select depend on the instance types that you select. Disk types that are not displayed in the drop-down list are not supported by the instance types that you select. For more information about disks, see Overview of Block Storage. For more information about disk types supported by different instance types, see Overview of instance families.
ESSD AutoPL disks provide the following features:
Performance provision: The performance provision feature allows you to configure provisioned performance settings for ESSD AutoPL disks to meet storage requirements that exceed the baseline performance without the need to extend the disks.
Performance burst: The performance burst feature allows ESSD AutoPL disks to burst their performance when spikes in read/write workloads occur and reduce the performance to the baseline level at the end of workload spikes.
ESSDs provide the following features:
Custom Performance. You can select higher PLs for ESSDs with larger storage capacities. For example, you can select PL 2 for an ESSD with a storage capacity of more than 460 GiB. You can select PL 3 for an ESSD with a storage capacity of more than 1,260 GiB. For more information, see Capacity and PLs.
You can select Encryption for all disk types when you specify the type of data disk. By default, the default service CMK is used to encrypt the data disk. You can also use an existing CMK generated by using BYOK in KMS.
You can also use snapshots to create data disks in scenarios where container image acceleration and fast loading of large language models (LLMs) are required. This improves the system response speed and enhances the processing capability.
Make sure that a data disk is mounted to
/var/lib/container
on each node, and/var/lib/kubelet
and/var/lib/containerd
are mounted to the/var/lib/container
. For other data disks on the node, you can perform the initialization operation and customize their mount directories. For more information, see Can I mount a data disk to a custom directory in an ACK node pool?
NoteYou can attach up to 64 data disks to an ECS instance. The maximum number of disks that can be attached to an ECS instance varies based on the instance type. To query the maximum number of disks that you can attach to an ECS instance of a specific instance type, call the DescribeInstanceTypes operation and check the DiskQuantity parameter in the response.
Auto Scaling
Specify whether to enable auto scaling. This feature provides cost-effective computing resource scaling based on resource demand and scaling policies. For more information, see Auto scaling overview. Before you enable this feature, you can configure node auto scaling for the node pool. For more information, see Step 1: Enable node auto scaling.
Click the first Advanced Options (Optional) to configure Scaling Policy.
Parameter
Modifiable
Description
Scaling Policy
Priority: The system scales the node pool based on the priorities of the vSwitches that you select for the node pool. The vSwitches that you select are displayed in descending order of priority. If Auto Scaling fails to create ECS instances in the zone of the vSwitch with the highest priority, Auto Scaling attempts to create ECS instances in the zone of the vSwitch with a lower priority.
Cost Optimization: The system creates instances based on the vCPU unit prices in ascending order. Preemptible instances are preferentially created when multiple preemptible instance types are specified in the scaling configurations. If preemptible instances cannot be created due to reasons such as insufficient stocks, the system attempts to create pay-as-you-go instances.
When Billing Method is set to Preemptible Instance, you can configure the following parameters in addition to the Enable Supplemental Preemptible Instances parameter:
Percentage of Pay-as-you-go Instances: The node pool will allocate a specified ratio of pay-as-you-go (non-preemptible) instances. Any requests exceeding this ratio will be handled by preemptible instances.
Enable Supplemental Pay-as-you-go Instances: After you enable this feature, Auto Scaling attempts to create pay-as-you-go ECS instances to meet the scaling requirement if Auto Scaling fails to create preemptible instances for reasons such as that the unit price is too high or preemptible instances are out of stock.
Distribution Balancing: The even distribution policy takes effect only when you select multiple vSwitches. This policy ensures that ECS instances are evenly distributed among the zones (the vSwitches) of the scaling group. If ECS instances are unevenly distributed across the zones due to reasons such as insufficient stocks, you can perform a rebalancing operation.
ImportantYou cannot change the scaling policy of a node pool after the node pool is created.
When Billing Method is set to Preemptible Instance, you can specify whether to turn on Enable Supplemental Preemptible Instances. After this feature is enabled, when a system message that indicates preemptible instances are reclaimed is received, the node pool with auto scaling enabled attempts to create new instance to replace the reclaimed the preemptible instances.
Click the second Advanced Options (Optional) to configure other advanced settings, such as the resource group, ECS tags, and taints.
Click Confirm. On the Node Pools page, check the state of the node pool. If Updating is displayed in the Status column, the node pool is being modified. After the node pool is modified, Active is displayed in the Status column.