| 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.
The name must be 1 to 63 characters in length, and can contain digits, letters, and hyphens (-). It cannot start with a hyphen (-). | default-nodepool |
type | string | The type of node pool. Valid values:
edge : edge node pool.
ess : node pool in the cloud.
| ess |
is_default | boolean | Specifies whether the node pool is a default node pool. A Container Service for Kubernetes (ACK) cluster generally has only one default node pool. Valid values:
| 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 details 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 of auto scaling. | |
enable | boolean | Specifies whether to enable auto scaling. Valid values:
true
false : If you set this parameter to false , other parameters in 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 Elastic Compute Service (ECS) instances that can be created in the node pool. | 10 |
min_instances | long | The minimum number of ECS instances that must be retained in the node pool. | 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). | 5 |
management | object | The configurations of managed node pools. Managed node pools are available only in professional managed Kubernetes 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. | true |
auto_vul_fix | boolean | Specifies whether to enable auto Common Vulnerabilities and Exposures (CVE) patching. | true |
auto_vul_fix_policy | object | The auto CVE patching policy. | |
restart_node | boolean | Specifies whether to 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,nntf |
auto_upgrade | boolean | Specifies whether to enable auto update. | true |
auto_upgrade_policy | object | | |
auto_upgrade_kubelet | boolean | Specifies whether to allow auto update of the kubelet. | 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 additional nodes. | 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. | |
scaling_group_id | string | | asg-2ze8n5qw4atggut8**** |
vswitch_ids | array | The vSwitch IDs. You can specify 1 to 20 vSwitches.
Note
To ensure high availability, we recommend that you select vSwitches in different zones.
| |
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 takes effect and is required if you set instance_charge_type to PrePaid .
If period_unit is set to Month, the valid values of period are 1, 2, 3, 6, 12, 24, 36, 48, and 60. | 1 |
period_unit | string | The billing cycle of the nodes in the node pool. This parameter takes effect only ifinstance_charge_type is set to PrePaid .
Valid value: Month , which indicates that the subscription duration is measured in months. | 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 duration. This parameter takes effect and is required only if instance_charge_type is set to PrePaid .
If you set period_unit to Month, the valid values of this parameter are 1, 2, 3, 6, and 12. | 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 operating system image. | AliyunLinux |
image_id | string | The custom image ID. 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_efficiency |
system_disk_categories | array | The types of system disks. The system attempts to create system disks of a disk type with a lower priority if the disk type with a higher priority is unavailable. Valid values: Valid values: cloud (basic disk), cloud_efficiency (ultra disk), cloud_ssd (standard SSD), cloud_essd (Enterprise SSD). | |
system_disk_categories | string | | ESSD |
system_disk_size | long | The size of the system disk. Unit: GiB.
Valid values: 20 to 500. | 120 |
system_disk_performance_level | string | The performance level (PL) of the system disk. This parameter takes effect only for an ESSD. | 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 Burst for the system disk when the disk type is cloud_auto. | 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 type 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 | Specifies whether a non-root user can log on to the ECS instance added to the node pool. | true |
cis_enableddeprecated | boolean | Specifies whether to enable Center for Internet Security (CIS) reinforcement. CIS reinforcement can be enabled only if Alibaba Cloud Linux 2 or Alibaba Cloud Linux 3 is installed on nodes. | 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 | Alibaba Cloud OS security hardening. Values:
true : Enable Alibaba Cloud OS security hardening. - false : Do not enable Alibaba Cloud OS security hardening.
Default value: false .
| false |
internet_charge_type | string | The billing method of the public IP address. | 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 labels that you want to add only to Elastic Compute Service (ECS) instances.
The tag key must be unique and cannot exceed 128 characters in length. The tag key and value must not start with aliyun or acs: or contain https:// or http://. | |
tags | tag | The labels that you want to add to the nodes. | |
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 | 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 the security_group_ids parameter is returned. | sg-2ze1iuk12m2sb4c4**** |
platform | string | The operating system distribution. 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 attributes of an instance. | |
instance_pattern | instance_patterns | The attributes of an instance. | |
ram_role_name | string | | KubernetesWorkerRole-4a4fa089-80c1-48a5-b3c6-9349311f**** |
node_config | object | The configurations of nodes. | |
kubelet_configuration | kubelet_config | The configurations of the kubelet. | |
kubernetes_config | object | The configurations of the cluster. | |
labels | array | The labels that are added to the nodes in the cluster. You must add labels based on the following rules:
- A label is a case-sensitive key-value pair. You can add up to 20 labels.
- The key must be unique and can be up to 64 characters in length. The value can be empty and can be up to 128 characters in length. Keys and values cannot start with
aliyun , acs: , https:// , or http:// . For more information, see Labels and Selectors.
| |
labels | tag | The configurations of the labels. | |
taints | array | The taints of the nodes in the node pool. Taints can be used together with tolerations to prevent pods from being scheduled to specific nodes. For more information, see taint-and-toleration. | |
taints | taint | | |
runtime | string | The name of the container runtime. | 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 schedulable after a scale-out activity is performed. | 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 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 is 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. Valid values: basic and dedicated. This parameter takes effect only on edge node pools. | improved |