| object | The details of the node pools. | |
nodepools | array<object> | | |
nodepools | object | The information about the node pool. | |
nodepool_info | object | The information about the node pool. | |
nodepool_id | string | | np615c0e0966124216a0412e10afe0**** |
name | string | The name of the node pool. | default-nodepool |
type | string | The type of node pool. Valid values:
ess : regular node pool, which supports the managed node pool feature and the auto scaling feature.
edge : edge node pool
lingjun : Lingjun node pool.
| ess |
is_default | boolean | Indicates whether the node pool is a default node pool. An Container Service for Kubernetes (ACK) cluster usually has only one default node pool. Valid values:
true : The node pool is a default node pool.
false : The node pool is a non-default node pool.
| true |
resource_group_id | string | | rg-acfmyvw3wjm**** |
region_id | string | | cn-beijing |
created | string | The time when the node pool was created. | 2020-09-27T19:14:09.156823496+08:00 |
updated | string | The time when the node pool was last updated. | 2020-09-27T20:37:46+08:00 |
status | object | The status of the node pool. | |
state | string | The status of the node pool. Valid values:
active : The node pool is active.
scaling : The node pool is being scaled.
removing : The nodes are being removed from the node pool.
deleting : The node pool is being deleted.
updating : The node pool is being updated.
| active |
healthy_nodes | long | The number of healthy nodes. | 3 |
initial_nodes | long | The number of nodes that are being created. | 0 |
failed_nodes | long | The number of failed nodes. | 0 |
offline_nodes | long | The number of offline nodes. | 0 |
removing_nodes | long | The number of nodes that are being removed. | 0 |
serving_nodes | long | The number of running nodes. | 3 |
total_nodes | long | The total number of nodes in the node pool. | 3 |
auto_scaling | object | The configurations about auto scaling. | |
enable | boolean | Indicates whether auto scaling is enabled. Valid values:
true : Auto scaling is enabled for the node pool. When the capacity planning of the cluster cannot meet the requirements of pod scheduling, ACK automatically scales out nodes based on the configured minimum and maximum number of instances. Node instant scaling is enabled by default for clusters that run Kubernetes 1.24 or later. Node auto scaling is enabled for clusters that run Kubernetes 1.24 and earlier. For more information, see Node auto scaling.
false : does not enable auto scaling. ACK adjusts the number of nodes in the node pool based on the value of the Expected Nodes parameter. The number of nodes is always the same as the value of the Expected Nodes parameter.
If you set this parameter to false, other parameters of auto_scaling do not take effect. | true |
type | string | The instance types that can be used for the auto scaling of the node pool. Valid values:
cpu : regular instance.
gpu : GPU-accelerated instance.
gpushare : shared GPU-accelerated instance.
spot : preemptible instance.
| cpu |
max_instances | long | The maximum number of scalable instances in the node pool. Your existing instances are not included. | 10 |
min_instances | long | The minimum number of scalable instances in the node pool, excluding your existing instances. | 2 |
eip_internet_charge_type | string | The billing method of the EIP. Valid values:
PayByBandwidth : pay-by-bandwidth.
PayByTraffic : pay-by-data-transfer.
| PayByBandwidth |
is_bond_eip | boolean | Specifies whether to associate an EIP with the node pool. Valid values:
| true |
eip_bandwidth | long | The maximum bandwidth of the elastic IP address (EIP).
Valid values: 1 to 100. Unit: Mbit/s. | 5 |
management | object | The configuration of the managed node pool feature. The configuration takes effect only for ACK Pro managed clusters. | |
enable | boolean | Specifies whether to enable the managed node pool feature. Valid values:
true
false : If you set this parameter to false, other parameters of management do not take effect.
| true |
auto_repair | boolean | Specifies whether to enable auto repair. This parameter takes effect only if enable is set to true. Valid values:
| true |
auto_repair_policy | object | The auto node repair policy. | |
restart_node | boolean | Specifies whether to allow node restart. This parameter takes effect only when auto_repair=true is specified.
true : allows node restart.
false : does not allow node restart.
| true |
auto_vul_fix | boolean | Indicates whether auto Common Vulnerabilities and Exposures (CVE) patching is enabled. This parameter takes effect only when enable=true is specified.
true : enables auto CVE patching.
true : disables auto CVE patching.
| true |
auto_vul_fix_policy | object | The auto CVE patching policy. | |
restart_node | boolean | Specifies whether to allow node restart. This parameter takes effect only if auto_vul_fix is set to true. Valid values:
true : allows node restart.
false : does not allow node restart.
| true |
vul_level | string | The severity level of CVEs that can be automatically patched. Multiple severity levels are separated by commas (,).
asap : high.
later : medium.
nntf : low.
| asap,nntf |
auto_upgrade | boolean | Specifies whether to enable auto node upgrade. This parameter takes effect only if enable is set to true.
true : Auto update is enabled.
false : Auto update is disabled.
| true |
auto_upgrade_policy | object | | |
auto_upgrade_kubelet | boolean | Specifies whether to allow the auto upgrade of the kubelet. This parameter takes effect only if auto_upgrade is set to true. Valid values:
true : allows the auto upgrade of the kubelet.
false : no.
| true |
upgrade_config | object | The configurations of auto update. The configurations take effect only if enable is set to true. | |
auto_upgrade | boolean | Specifies whether to enable auto update. Valid values:
| true |
surge | long | The number of nodes that are temporarily added to the node pool during an auto update. You must specify this parameter or surge_percentage . | 5 |
surge_percentage | long | The percentage of additional nodes to the total nodes in the node pool. You must specify this parameter or the surge parameter.
The number of additional nodes = The percentage of additional nodes × The number of nodes in the node pool. For example, if the percentage of additional nodes is 50% and the number of nodes in the node pool is 6, the number of additional nodes is 3. | 50 |
max_unavailable | long | The maximum number of unavailable nodes. Valid values: 1 to 1000.
Default value: 1 | 1 |
scaling_group | object | The configurations of the scaling group that is used by the node pool. | |
scaling_group_id | string | | asg-2ze8n5qw4atggut8**** |
vswitch_ids | array | | |
vswitch_ids | string | | vsw-2ze3ds0mdip0hdz8i**** |
instance_types | array | The list of instance types. You can select multiple instance types. When the system needs to create a node, it starts from the first instance type until the node is created. The instance type that is used to create the node varies based on the inventory. | |
instance_types | string | The instance types of the nodes in the node pool. | ecs.n4.large |
instance_charge_type | string | The billing method of the nodes in the node pool. Valid values:
PrePaid : subscription.
PostPaid : pay-as-you-go.
| PostPaid |
period | long | The subscription duration of the nodes in the node pool. This parameter is available and required only when instance_charge_type is set to PrePaid .
- If
period_unit is set to Week, the valid values of period are 1, 2, 3, and 4.
- If
period_unit is set to Month, the valid values of period are 1, 2, 3, 4, 5, 6, 7, 8, 9, 12, 24, 36, 48, and 60.
| 1 |
period_unit | string | The billing cycle of the nodes in the node pool. This parameter is required if you set instance_charge_type to PrePaid . Valid values:
Month : The subscription duration is measured in months.
Week : The subscription duration is measured in weeks.
| Month |
auto_renew | boolean | Specifies whether to enable auto-renewal for the nodes in the node pool. This parameter takes effect only if instance_charge_type is set to PrePaid . Valid values:
| false |
auto_renew_period | long | The auto-renewal period. Valid value:
- Valid values when PeriodUnit is set to Week: 1, 2, and 3.
- Valid values when PeriodUnit is set to Month: 1, 2, 3, 6, 12, 24, 36, 48, and 60
| 0 |
spot_strategy | string | The bidding policy of preemptible instances. Valid values:
- NoSpot: non-preemptible.
- SpotWithPriceLimit: specifies the highest bid.
- SpotAsPriceGo: automatically submits bids based on the up-to-date market price.
For more information, see Create a preemptible elastic container instance. | NoSpot |
spot_price_limit | array<object> | The bid configurations of preemptible instances. | |
spot_price_limit | object | | |
instance_type | string | The instance type of preemptible instances. | ecs.c6.large |
price_limit | string | The price cap for a single preemptible instance.
Unit: USD/hour. | 0.39 |
image_type | string | The type of the OS image.
AliyunLinux : Alibaba Cloud Linux 2.
AliyunLinuxSecurity : Alibaba Cloud Linux 2 (UEFI).
AliyunLinux3 : Alibaba Cloud Linux 3
AliyunLinux3Arm64 : Alibaba Cloud Linux 3 (ARM).
AliyunLinux3Security : Alibaba Cloud Linux 3 (UEFI).
CentOS : CentOS.
Windows : Windows.
WindowsCore : Windows Core.
ContainerOS : ContainerOS.
AliyunLinux3ContainerOptimized : Alibaba Cloud Linux 3 Container-optimized.
| AliyunLinux |
image_id | string | The ID of the custom image. You can call the DescribeKubernetesVersionMetadata operation to query the images supported by ACK. | aliyun_2_1903_x64_20G_alibase_20200529.vhd |
system_disk_category | string | The type of system disk. Valid values:
cloud_efficiency : ultra disk
cloud_ssd : SSD
cloud_essd : Enterprise ESSD (ESSD).
cloud_auto : ESSD AutoPL disk.
cloud_essd_entry : ESSD Entry disk.
| cloud_efficiency |
system_disk_categories | array | The categories of system disks. The system creates system disks of a disk category with a lower priority if the disk category with a higher priority is unavailable. | |
system_disk_categories | string | The system disk category.
Valid values:
cloud_efficiency : ultra disk
cloud_ssd : SSD
cloud_essd : ESSD.
cloud_auto : ESSD AutoPL disk.
cloud_essd_entry : ESSD Entry disk.
| ESSD |
system_disk_size | long | The size of the system disk in GiB.
Valid values: 20 to 2048. | 120 |
system_disk_performance_level | string | The performance level (PL) of the system disk. This parameter takes effect only for an ESSD. You can specify a higher PL if you increase the size of a data disk. For more information, see ESSDs .
- PL0: moderate maximum concurrent I/O performance and low I/O latency.
- PL1: moderate maximum concurrent I/O performance and low I/O latency.
- PL2: high maximum concurrent I/O performance and low I/O latency.
- PL3: ultra-high maximum concurrent I/O performance and ultra-low I/O latency.
| PL1 |
system_disk_encrypted | boolean | Specifies whether to encrypt the system disk. Valid values:
| false |
system_disk_kms_key_id | string | The ID of the Key Management Service (KMS) key that is used to encrypt the system disk. | 0e478b7a-4262-4802-b8cb-00d3fb40**** |
system_disk_encrypt_algorithm | string | The encryption algorithm that is used to encrypt the system disk. The value is aes-256. | aes-256 |
system_disk_bursting_enabled | boolean | Specifies whether to enable the burst feature for the system disk. Valid values:
- true: enables the burst feature.
- false: disables the burst feature.
This parameter is effective only when system_disk_category is set to cloud_auto . For more information, see ESSD AutoPL disks. | true |
system_disk_provisioned_iops | long | The predefined read and write IOPS of the system disk when the disk type is cloud_auto. | 1000 |
data_disks | array | The configurations of the data disks that are mounted to the nodes in the node pool. The configurations include the disk category and disk size. | |
data_disks | data_disk | The configurations of the node data disks. | |
security_group_ids | array | The IDs of security groups for the node pool. | |
security_group_ids | string | The IDs of security groups for the node pool. | sg-2ze1iuk12m2sb4c4**** |
key_pair | string | The name of the key pair. You must specify this parameter or the login_password parameter.
You must specify the key_pair parameter if the node pool is a managed node pool. | pro-nodepool |
login_password | string | The password for SSH logon. You must specify this parameter or the key_pair parameter. The password must be 8 to 30 characters in length, and must contain at least three of the following character types: uppercase letters, lowercase letters, digits, and special characters.
The returned password is encrypted to ensure security. | ****** |
login_as_non_root | boolean | Indicates whether a non-root user can log on to an Elastic Compute Service (ECS) instance added to the node pool.
- true: Logs in as a non-root user (ecs-user).
- false: Logs in as the root user.
| true |
cis_enableddeprecated | boolean | This parameter is deprecated.
Use security_hardening_os instead. | false |
soc_enabled | boolean | Specifies whether to enable reinforcement based on classified protection. You can enable reinforcement based on classified protection only if Alibaba Cloud Linux 2 or Alibaba Cloud Linux 3 is installed on nodes. Alibaba Cloud provides standards for baseline check and a scanner to ensure the compliance of Alibaba Cloud Linux 2 and Alibaba Cloud Linux 3 images with the level 3 standards of classified protection. | false |
security_hardening_os | boolean | Indicates whether Alibaba Cloud Linux Security Hardening is enabled. Valid values:
true : Alibaba Cloud Linux Security Hardening is enabled.
false : Alibaba Cloud Linux Security Hardening is disabled.
Default value: false . | false |
internet_charge_type | string | The metering method of the public IP address.
- PayByBandwidth: pay-by-data-transfer.
- PayByTraffic: pay-by-data-transfer.
| PayByBandwidth |
internet_max_bandwidth_out | long | The maximum outbound bandwidth of the public IP address. Unit: Mbit/s. Valid values: 1 to 100. | 10 |
tags | array | The label to be added to the ECS instances. | |
tags | tag | | |
desired_size | long | The expected number of nodes in the node pool. | 2 |
multi_az_policy | string | The ECS instance scaling policy for the multi-zone scaling group. Valid values:
-
PRIORITY : ECS instances are created based on the VSwitchIds.N parameter. If Auto Scaling fails to create an ECS instance in the zone of the vSwitch that has the highest priority, Auto Scaling attempts to create the ECS instance in the zone of the vSwitch that has a lower priority.
-
COST_OPTIMIZED : ECS instances are created based on the vCPU unit price in ascending order. Preemptible instances are preferably created when preemptible instance types are specified in the scaling configuration. You can specify CompensateWithOnDemand to specify whether to automatically create pay-as-you-go instances if preemptible instances cannot be created due to insufficient resources.
**
Note COST_OPTIMIZED takes effect only if multiple instance types are specified or at least one preemptible instance type is specified.
-
BALANCE : ECS instances are evenly distributed across multiple zones specified by the scaling group. If the distribution of ECS instances across zones is not balanced due to reasons such as insufficient inventory, you can call the RebalanceInstances operation to evenly distribute the ECS instances across zones. For more information, see RebalanceInstances .
| COST_OPTIMIZED |
scaling_policy | string | The scaling mode of the scaling group. Valid values:
release : the standard mode. ECS instances are created and released based on the resource usage.
recycle : the swift mode. ECS instances are created, stopped, or started during scaling events. This reduces the time required for the next scale-out event. When the instance is stopped, you are charged only for the storage service. This does not apply to ECS instances that are attached to local disks.
| release |
on_demand_base_capacity | long | The minimum number of pay-as-you-go instances that must be kept in the scaling group. Valid values: 0 to 1000. If the number of pay-as-you-go instances is smaller than the value of this parameter, Auto Scaling preferably creates pay-as-you-go instances | 0 |
on_demand_percentage_above_base_capacity | long | The percentage of pay-as-you-go instances among the extra instances that exceed the number specified by on_demand_base_capacity . Valid values: 0 to 100. | 20 |
spot_instance_pools | long | The number of instance types that are available for creating preemptible instances. Auto Scaling creates preemptible instances of multiple instance types that are available at the lowest cost. Valid values: 1 to 10. | 5 |
spot_instance_remedy | boolean | Specifies whether to enable the supplementation of preemptible instances. If the supplementation of preemptible instances is enabled, when the scaling group receives a system message that a preemptible instance is to be reclaimed, the scaling group attempts to create a new instance to replace this instance. Valid values:
| false |
compensate_with_on_demand | boolean | Specifies whether to automatically create pay-as-you-go instances to meet the required number of ECS instances if preemptible instances cannot be created due to reasons such as the cost or insufficient inventory. This parameter takes effect if you set multi_az_policy to COST_OPTIMIZED Valid values:
| true |
deploymentset_id | string | | ds-bp1d19mmbsv3jf6xxxxx |
rds_instances | array | The ApsaraDB RDS instances. If you specify the list of ApsaraDB RDS instances, ECS instances in the cluster are automatically added to the whitelist of the ApsaraDB RDS instances. | |
rds_instances | string | The ApsaraDB RDS instance. | rm-xxx |
private_pool_options | object | The configurations of the private node pool. | |
id | string | The private pool ID, which is the same as the ID of the elasticity assurance or capacity reservation for which the private pool is generated. | eap-bp67acfmxazb4**** |
match_criteria | string | The type of the private node pool. This parameter specifies the type of the private node pool that is used to create instances. A private node pool is generated when an elasticity assurance or a capacity reservation service takes effect. The system selects a private node pool to launch instances. Valid values:
Open : uses open private pool. The system selects an open private node pool to launch instances. If no matching open private node pool is available, the resources in the public node pool are used.
Target : uses the specified private node pool. The system uses the resources of the specified private node pool to launch instances. If the specified private node pool is unavailable, instances cannot be launched.
None : No private node pool is used. The resources of private node pools are not used to launch instances.
| Open |
security_group_id | string | This parameter is deprecated.
The ID of the security group to which the node pool is added. If the node pool is added to multiple security groups, the first ID in the value of security_group_ids is returned. | sg-2ze1iuk12m2sb4c4**** |
platform | string | This parameter is deprecated.
The OS distribution that is used. Valid values:
CentOS
AliyunLinux
Windows
WindowsCore
| AliyunLinux |
ram_policy | string | This field is deprecated and replaced by the ram_role_name parameter. | KubernetesWorkerRole-021dc54f-929b-437a-8ae0-34c24d3e**** |
instance_patterns | array | The attribute configurations of the instance. | |
instance_pattern | instance_patterns | | |
ram_role_name | string | | KubernetesWorkerRole-4a4fa089-80c1-48a5-b3c6-9349311f**** |
node_config | object | The configurations of nodes. | |
kubelet_configuration | kubelet_config | The parameter settings of the kubelet. | |
kubernetes_config | object | The configurations of the cluster. | |
labels | array | | |
labels | tag | The configurations of the labels. | |
taints | array | The taint. Taints can be used together with tolerations to avoid scheduling pods to specified nodes. For more information, see taint-and-toleration. | |
taints | taint | | |
runtime | string | The name of the container runtime. The following types of runtime are supported by ACK:
- containerd: containerd is the recommended runtime and supports all Kubernetes versions.
- Sandboxed-Container.runv: The Sandbox-Container runtime provides improved isolation and supports Kubernetes 1.31 and earlier.
- Docker (deprecated): supports Kubernetes 1.22 and earlier.
| docker |
runtime_version | string | The version of the container runtime. | 19.03.5 |
cpu_policy | string | The CPU management policy of the nodes in the node pool. The following policies are supported if the version of the cluster is Kubernetes 1.12.6 or later:
static : allows pods with specific resource characteristics on the node to be granted enhanced CPU affinity and exclusivity.
none : specifies that the default CPU affinity is used.
| none |
user_data | string | | IyEvYmluL3NoCmVjaG8gIkhlbGxvIEFD**** |
unschedulable | boolean | Specifies whether the nodes are unschedulable after a scale-out activity is performed.
- true: The node cannot be scheduled.
- false: The node can be scheduled.
| true |
cms_enabled | boolean | Specifies whether to install the CloudMonitor agent on ECS nodes. After the CloudMonitor agent is installed on ECS nodes, you can view the monitoring information about the instances in the CloudMonitor console. We recommend that you install the CloudMonitor agent. Valid values:
| true |
node_name_mode | string | The name of the custom node.
The custom node name. A custom node name consists of a prefix, an IP substring, and a suffix.
- The prefix and suffix can contain multiple parts that are separated by periods (.). Each part can contain lowercase letters, digits, and hyphens (-). A custom node name must start and end with a digit or lowercase letter.
- The IP substring length specifies the number of digits to be truncated from the end of the node IP address. The IP substring length ranges from 5 to 12.
For example, if the node IP address is 192.168.0.55, the prefix is aliyun.com, the IP substring length is 5, and the suffix is test, the node name will aliyun.com00055test. | customized,test.,5,.com |
pre_user_data | string | | IyEvYmluL3NoCmVjaG8gIkhlbGxvIEFD |
tee_config | object | The configurations of confidential computing. | |
tee_enable | boolean | Specifies whether to enable confidential computing for the cluster. Valid values:
| false |
interconnect_config | object | This parameter is discontinued.
The network configurations of the edge node pool. This parameter takes effect only on edge node pools. | |
cen_id | string | This parameter is discontinued.
The ID of the Cloud Enterprise Network (CEN) instance that is associated with the enhanced edge node pool. | cen-ey9k9nfhz0f******* |
ccn_id | string | This parameter is discontinued.
The ID of the Cloud Connect Network (CCN) instance that is associated with the enhanced edge node pool. | ccn-qm5i0i0q9yi******* |
ccn_region_id | string | This parameter is discontinued.
The region in which the CCN instance that is with the enhanced edge node pool resides. | cn-shanghai |
bandwidth | long | This parameter is discontinued.
The bandwidth of the enhanced edge node pool. Unit: Mbit/s. | 10 |
improved_period | string | This parameter is discontinued.
The subscription duration of the enhanced edge node pool. Unit: months. | 1 |
max_nodes | long | The maximum number of nodes that can be created in the edge node pool. The value of this parameter must be greater than or equal to 0. A value of 0 indicates that the number of nodes in the node pool is limited only by the quota of nodes in the cluster. In most cases, this parameter is set to a value larger than 0 for edge node pools. This parameter is set to 0 for node pools whose types are ess or default edge node pools. | 10 |
interconnect_mode | string | The network type of the edge node pool. This parameter takes effect only if you set type of the node pool to edge . Valid values:
basic : Internet. Nodes in the node pool communicate with nodes in the cloud over the Internet. Applications deployed on the edge nodes cannot directly access virtual private clouds (VPCs) over the Internet.
private : private network. You can connect nodes in the node pool to the cloud by using Express Connect, VPN, or Cloud Enterprise Network (CEN). This greatly improves the quality and security of cloud-edge communication.
| improved |