All Products
Search
Document Center

Container Service for Kubernetes:DescribeClusterNodePools

Last Updated:Jun 25, 2026

Query the list of all node pools in a cluster.

Try it now

Try this API in OpenAPI Explorer, no manual signing needed. Successful calls auto-generate SDK code matching your parameters. Download it with built-in credential security for local usage.

Test

RAM authorization

The table below describes the authorization required to call this API. You can define it in a Resource Access Management (RAM) policy. The table's columns are detailed below:

  • Action: The actions can be used in the Action element of RAM permission policy statements to grant permissions to perform the operation.

  • API: The API that you can call to perform the action.

  • Access level: The predefined level of access granted for each API. Valid values: create, list, get, update, and delete.

  • Resource type: The type of the resource that supports authorization to perform the action. It indicates if the action supports resource-level permission. The specified resource must be compatible with the action. Otherwise, the policy will be ineffective.

    • For APIs with resource-level permissions, required resource types are marked with an asterisk (*). Specify the corresponding Alibaba Cloud Resource Name (ARN) in the Resource element of the policy.

    • For APIs without resource-level permissions, it is shown as All Resources. Use an asterisk (*) in the Resource element of the policy.

  • Condition key: The condition keys defined by the service. The key allows for granular control, applying to either actions alone or actions associated with specific resources. In addition to service-specific condition keys, Alibaba Cloud provides a set of common condition keys applicable across all RAM-supported services.

  • Dependent action: The dependent actions required to run the action. To complete the action, the RAM user or the RAM role must have the permissions to perform all dependent actions.

Action

Access level

Resource type

Condition key

Dependent action

cs:DescribeClusterNodePools

get

*Cluster

acs:cs:{#regionId}:{#accountId}:cluster/{#ClusterId}

None None

Request syntax

GET /clusters/{ClusterId}/nodepools HTTP/1.1

Path Parameters

Parameter

Type

Required

Description

Example

ClusterId

string

Yes

Cluster ID.

cc0f87de0b8fb403f86e10e204f83****

Request parameters

Parameter

Type

Required

Description

Example

NodepoolName

string

No

Node pool name.

nodepool-test

Response elements

Element

Type

Description

Example

object

Node pool details.

nodepools

array<object>

Node pool instance list.

array<object>

Node pool instance details.

nodepool_info

object

Node pool information.

nodepool_id

string

Node pool ID.

np615c0e0966124216a0412e10afe0****

name

string

Node pool name.

default-nodepool

type

string

Node pool type. Valid values:

  • ess: standard node pool (includes managed functionality and auto scaling functionality).

  • edge: edge node pool.

  • lingjun: Lingjun node pool.

ess

is_default

boolean

Whether it is the default node pool. Typically, a cluster has only one default node pool. Valid values:

  • true: default node pool.

  • false: non-default node pool.

true

resource_group_id

string

Resource group ID.

rg-acfmyvw3wjm****

region_id

string

Region ID.

cn-beijing

created

string

Node pool creation time.

2025-04-15T16:33:29.362888807+08:00

updated

string

Node pool update time.

2025-04-15T16:33:32.823+08:00

status

object

Node pool status.

state

string

Node pool state. Valid values:

  • active: activated.

  • scaling: scaling in progress.

  • removing: node removal in progress.

  • deleting: deletion in progress.

  • updating: update in progress.

active

healthy_nodes

integer

Number of healthy instances.

3

initial_nodes

integer

Number of nodes being created.

0

failed_nodes

integer

Number of failed instances.

0

offline_nodes

integer

Number of offline nodes.

0

removing_nodes

integer

Number of nodes being removed.

0

serving_nodes

integer

Number of nodes in serving state.

3

total_nodes

integer

Total number of nodes in the node pool.

3

auto_scaling

object

Auto-scaling configuration.

enable

boolean

Whether to enable auto scaling. Valid values:

  • true: enable node pool auto scaling. When the cluster capacity planning cannot meet application Pod scheduling requirements, ACK will automatically scale node resources based on the configured minimum and maximum instance counts. Clusters of version 1.24 and above enable instant node elasticity by default; clusters below version 1.24 enable node auto scaling by default. For more information, see Node Scaling.

  • false: disable auto scaling. ACK will adjust the number of nodes in the node pool based on the configured desired node count, maintaining the node count at the desired number.

When the value is false, other configuration parameters within auto_scaling will not take effect.

true

type

string

Auto scaling type, classified by auto scaling instance type. Valid values:

  • cpu: standard instance type.

  • gpu: GPU instance type.

  • gpushare: GPU sharing type.

  • spot: preemptible instance type.

cpu

max_instances

integer

Maximum number of scalable instances in the node pool, excluding your existing instances.

10

min_instances

integer

Minimum number of scalable instances in the node pool, excluding your existing instances.

2

eip_internet_charge_type

string

EIP billing type. Valid values:

  • PayByBandwidth: pay by fixed bandwidth.

  • PayByTraffic: pay by traffic usage.

PayByBandwidth

is_bond_eip

boolean

Whether to bind EIP. Valid values:

  • true: bind EIP.

  • false: do not bind EIP.

true

eip_bandwidth

integer

EIP bandwidth peak.

Valid values: [1,100], unit: Mbps.

5

management

object

Managed node pool configuration. Currently only takes effect in professional managed clusters.

enable

boolean

Whether to enable managed node pool. Valid values:

  • true: enable managed node pool.

  • false: disable managed node pool. Other related configurations only take effect when enable=true.

true

auto_repair

boolean

Auto repair. Only takes effect when enable=true.

  • true: enable auto repair.

  • false: disable auto repair.

true

auto_repair_policy

object

Auto repair node policy.

restart_node

boolean

Whether to allow node restart. Only takes effect when auto_repair=true.

  • true: allow node restart.

  • false: do not allow node restart.

true

approval_required

boolean

Whether node repair requires manual approval.

false

auto_repair_policy_id

string

Auto repair policy ID

r-xxxxxxxxx

auto_vul_fix

boolean

Whether to automatically fix CVEs. Only takes effect when enable=true.

  • true: allow automatic CVE fix.

  • false: do not allow automatic CVE fix.

true

auto_vul_fix_policy

object

Auto CVE fix policy.

restart_node

boolean

Whether to allow node restart. Only takes effect when auto_vul_fix=true. Valid values:

  • true: allow node restart.

  • false: do not allow node restart.

true

vul_level

string

Vulnerability levels allowed for automatic fix, separated by commas.

  • asap: high

  • later: medium

  • nntf: low

asap,nntf

exclude_packages

string

Packages to exclude during vulnerability fix.

kernel

auto_upgrade

boolean

Whether to enable automatic node upgrade. Only takes effect when enable=true.

  • true: enable auto upgrade.

  • false: disable auto upgrade.

true

auto_upgrade_policy

object

Auto upgrade policy.

auto_upgrade_kubelet

boolean

Whether to allow automatic kubelet upgrade. Only takes effect when auto_upgrade=true. Valid values:

  • true: allow automatic kubelet upgrade.

  • false: do not allow automatic kubelet upgrade.

true

upgrade_config

object

Auto upgrade configuration. Only takes effect when enable=true.

auto_upgrade

boolean

Whether to enable auto upgrade. Valid values:

  • true: enable auto upgrade.

  • false: disable auto upgrade.

true

surge

integer

Number of extra nodes. Mutually exclusive with surge_percentage.

5

surge_percentage

integer

Percentage of extra nodes. Mutually exclusive with surge.

Extra nodes = extra node percentage × number of nodes. For example, if the extra node percentage is set to 50% and there are 6 existing nodes, the number of extra nodes = 50% × 6, which means 3 extra nodes will be created.

50

max_unavailable

integer

Maximum number of unavailable nodes. Valid values: [1,1000]

Default value: 1.

1

auto_fault_diagnosis

boolean

scaling_group

object

Node pool scaling group configuration.

scaling_group_id

string

Scaling group ID.

asg-2ze8n5qw4atggut8****

vswitch_ids

array

List of VSwitch IDs.

string

VSwitch ID.

vsw-2ze3ds0mdip0hdz8i****

instance_types

array

List of node instance types. You can select multiple instance types as alternatives. When each node is created, it will attempt to purchase from the first type until creation succeeds. The actual purchased instance type may vary depending on inventory.

ecs.n4.large

string

Node instance type.

ecs.n4.large

instance_charge_type

string

Billing type for node pool nodes. Valid values:

  • PrePaid: subscription.

  • PostPaid: pay-as-you-go.

PostPaid

period

integer

Subscription duration for nodes. Only takes effect and is required when instance_charge_type is PrePaid.

  • When period_unit=Week, valid values for period: {1, 2, 3, 4}.

  • When period_unit=Month, valid values for period: {1, 2, 3, 4, 5, 6, 7, 8, 9, 12, 24, 36, 48, 60}.

1

period_unit

string

Billing period unit for nodes. Required when instance_charge_type is PrePaid.

  • Month: monthly billing.

  • Week: weekly billing.

Month

auto_renew

boolean

Whether auto-renewal is enabled for nodes. Only takes effect when instance_charge_type is PrePaid. Valid values:

  • true: enable auto-renewal.

  • false: disable auto-renewal.

false

auto_renew_period

integer

Duration of each auto-renewal cycle. Valid values:

  • When PeriodUnit=Week: 1, 2, 3.

  • When PeriodUnit=Month: 1, 2, 3, 6, 12, 24, 36, 48, 60.

0

spot_strategy

string

Preemptible instance type. Valid values:

  • NoSpot: non-preemptible instance.

  • SpotWithPriceLimit: set a price limit for preemptible instances.

  • SpotAsPriceGo: system automatically bids, following the current market price.

For more information, see Preemptible instances.

NoSpot

spot_price_limit

array<object>

Preemptible instance market price range configuration.

object

Preemptible instance market price range configuration. You can set different price ranges for different instance types.

instance_type

string

Preemptible instance type.

ecs.c6.large

price_limit

string

Market price range per instance.

Unit: USD/hour.

0.39

image_type

string

OS image type.

  • AliyunLinux: Alinux2 image.

  • AliyunLinuxSecurity: Alinux2 image UEFI version.

  • AliyunLinux3: Alinux3 image.

  • AliyunLinux3Arm64: Alinux3 image ARM version.

  • AliyunLinux3Security: Alinux3 image UEFI version.

  • CentOS: CentOS image.

  • Windows: Windows image.

  • WindowsCore: WindowsCore image.

  • ContainerOS: container-optimized image.

  • AliyunLinux3ContainerOptimized: Alinux3 image container-optimized version.

AliyunLinux3

image_id

string

Custom image ID. You can query system-supported images using DescribeKubernetesVersionMetadata.

aliyun_3_x64_20G_alibase_20241218.vhd

system_disk_category

string

Node system disk type. Valid values:

  • cloud_efficiency: ultra disk.

  • cloud_ssd: SSD disk.

  • cloud_essd: ESSD disk.

  • cloud_auto: ESSD AutoPL disk.

  • cloud_essd_entry: ESSD Entry disk.

cloud_efficiency

system_disk_categories

array

Multi-disk types for system disk. When a higher-priority disk type is unavailable, the system automatically attempts the next priority disk type to create the system disk.

string

Node system disk type.

Valid values:

  • cloud_efficiency: ultra disk.

  • cloud_ssd: SSD disk.

  • cloud_essd: ESSD disk.

  • cloud_auto: ESSD AutoPL disk.

  • cloud_essd_entry: ESSD Entry disk.

EESSD云盘

system_disk_size

integer

Node system disk size, in GiB.

Valid values: [20,2048].

120

system_disk_performance_level

string

Node system disk performance level. Only applicable to ESSD disks. The performance level is related to disk size. For more information, see ESSD disks.

  • PL0: moderate concurrent I/O performance with relatively stable read/write latency.

  • PL1: moderate concurrent I/O performance with relatively stable read/write latency.

  • PL2: high concurrent I/O performance with stable read/write latency.

  • PL3: extremely high concurrent I/O performance with extremely stable read/write latency.

PL1

system_disk_encrypted

boolean

Whether to encrypt the system disk. Valid values:

  • true: encrypt.

  • false: do not encrypt.

false

system_disk_kms_key_id

string

KMS key ID used for the system disk.

0e478b7a-4262-4802-b8cb-00d3fb40****

system_disk_encrypt_algorithm

string

Encryption algorithm used for the system disk. Valid values: aes-256.

aes-256

system_disk_bursting_enabled

boolean

Whether to enable Burst (performance bursting) for the node system disk. Valid values:

  • true: enable. When enabled, the disk can temporarily boost performance during burst data read/write pressure until the workload returns to a stable state.

  • false: disable.

This parameter is only supported when system_disk_category is cloud_auto. For more information, see ESSD AutoPL disks.

true

system_disk_provisioned_iops

integer

Provisioned read/write IOPS for the node system disk. Configured when disk type is cloud_auto.

1000

data_disks

array

Configuration combination of node data disk type, size, etc.

data_disk

Node data disk configuration.

disk_init

array

Block device initialization configuration.

DiskInit

DiskInit configuration.

security_group_ids

array

List of node pool security group IDs.

string

List of node pool security group IDs.

sg-2ze1iuk12m2sb4c4****

key_pair

string

Key pair name. Mutually exclusive with login_password.

For managed node pools, only key_pair is supported.

pro-nodepool

login_password

string

SSH login password. Mutually exclusive with key_pair. Password must be 8-30 characters and contain at least three of the following: uppercase letters, lowercase letters, digits, and special characters.

For security reasons, the password is encrypted in query results.

******

login_as_non_root

boolean

Whether the launched ECS instance uses non-root user login.

  • true: log in as non-root user (ecs-user).

  • false: log in as root user.

true

cis_enabled deprecated

boolean

[This field is deprecated]

Please use the parameter security_hardening_os instead.

false

soc_enabled

boolean

Whether to enable China classified protection hardening. Only available when the system image is Alibaba Cloud Linux 2 or Alibaba Cloud Linux 3. Alibaba Cloud provides classified protection compliance baseline check standards and scanning programs for Alibaba Cloud Linux 2 and Alibaba Cloud Linux 3 Level 3 images.

false

security_hardening_os

boolean

Alibaba Cloud OS security hardening. Valid values:

  • true: enable Alibaba Cloud OS security hardening.

  • false: disable Alibaba Cloud OS security hardening.

Default value: false.

false

internet_charge_type

string

Node public IP network billing type.

  • PayByBandwidth: pay by fixed bandwidth.

  • PayByTraffic: pay by traffic usage.

PayByBandwidth

internet_max_bandwidth_out

integer

Maximum outbound bandwidth for node public IP, in Mbps (Mega bit per second). Valid values: 1~100.

10

tags

array

ECS instance tags.

tag

Node tags.

[{\"key\":\"pkg.E2EClient.ClusterId\",\"value\":\"troopers-\"}]

desired_size

integer

Desired number of nodes in the node pool.

2

multi_az_policy

string

Multi-AZ scaling group ECS instance scaling policy. Valid values:

  • PRIORITY: scale based on the VSwitches (VSwitchIds.N) you define. When ECS instances cannot be created in the availability zone of a higher-priority VSwitch, the system automatically uses the next-priority VSwitch to create ECS instances.

  • COST_OPTIMIZED: attempt to create instances in order of lowest vCPU unit price. When the scaling configuration specifies multiple instance types with preemptible billing, preemptible instances are created first. You can use the CompensateWithOnDemand parameter to specify whether to automatically try creating pay-as-you-go instances when preemptible instances cannot be created due to inventory or other reasons.

    Note

    COST_OPTIMIZED only takes effect when the scaling configuration specifies multiple instance types or uses preemptible instances.

  • BALANCE: distribute ECS instances evenly across the multiple availability zones specified in the scaling group. If availability zones become unbalanced due to insufficient inventory, you can use the API RebalanceInstances to rebalance resources. For more information, see RebalanceInstances.

COST_OPTIMIZED

scaling_policy

string

Scaling group mode. Valid values:

  • release: standard mode. Scale by creating and releasing ECS instances based on resource usage.

  • recycle: rapid mode. Scale by creating, stopping, and starting instances, improving subsequent scaling speed (compute resources are not charged during stop, only storage fees apply, except for local disk instance types).

release

on_demand_base_capacity

integer

Minimum number of pay-as-you-go instances required by the scaling group. Valid values: [0,1000]. Pay-as-you-go instances are created first when the count is below this value.

0

on_demand_percentage_above_base_capacity

integer

After the scaling group meets the minimum pay-as-you-go instance requirement (on_demand_base_capacity), the percentage of pay-as-you-go instances among excess instances. Valid values: [0,100].

20

spot_instance_pools

integer

Number of available instance types. The scaling group creates preemptible instances evenly across multiple types with the lowest cost. Valid values: [1,10].

5

spot_instance_remedy

boolean

Whether to enable preemptible instance supplementation. When enabled, when a system message is received that a preemptible instance will be reclaimed, the scaling group will attempt to create a new instance to replace the preemptible instance about to be reclaimed. Valid values:

  • true: enable preemptible instance supplementation.

  • false: disable preemptible instance supplementation.

false

compensate_with_on_demand

boolean

When multi_az_policy is COST_OPTIMIZED, whether to allow automatic creation of pay-as-you-go instances to meet ECS instance count requirements if preemptible instances cannot be created due to price or inventory reasons. Valid values:

  • true: allow automatic creation of pay-as-you-go instances to meet ECS instance count requirements.

  • false: do not allow automatic creation of pay-as-you-go instances to meet ECS instance count requirements.

true

deploymentset_id

string

Deployment set ID.

ds-bp1d19mmbsv3jf6xxxxx

rds_instances

array

If an RDS instance list is specified, cluster node ECS instances will be automatically added to the RDS access whitelist.

string

RDS instance.

rm-xxx

private_pool_options

object

Private pool options.

id

string

Private pool ID. The Elasticity Assurance service ID or Capacity Reservation service ID.

eap-bp67acfmxazb4****

match_criteria

string

Private node pool type. Private pool capacity option for instance launch. After an Elasticity Assurance service or Capacity Reservation service takes effect, a private pool capacity is generated for instance launch selection. Valid values:

  • Open: open mode. Automatically matches open-type private pool capacity. If no matching private pool capacity is available, public pool resources are used for launch.

  • Target: specified mode. Uses the specified private pool capacity to launch instances. If the private pool capacity is unavailable, instance launch fails.

  • None: do not use mode. Instance launch will not use private pool capacity.

Open

security_group_id

string

[This field is deprecated]

Node pool security group ID. When the node pool is bindto multiple security groups, this is the first value in security_group_ids.

sg-2ze1iuk12m2sb4c4****

platform

string

[This field is deprecated]

OS distribution. Valid values:

  • CentOS

  • AliyunLinux

  • Windows

  • WindowsCore

AliyunLinux

ram_policy

string

This field is deprecated. Please use ram_role_name instead.

KubernetesWorkerRole-021dc54f-929b-437a-8ae0-34c24d3e****

instance_patterns

array

Instance attribute configuration.

instance_patterns

Instance attributes.

ram_role_name

string

Worker RAM role name.

KubernetesWorkerRole-4a4fa089-80c1-48a5-b3c6-9349311f****

resource_pool_options

object

Resource pool and resource pool policy used when creating instances.

strategy

string

Resource pool policy used when creating instances. Valid values: PrivatePoolFirst: private pool first. PrivatePoolOnly: private pool only. None: do not use resource pool policy.

PrivatePoolFirst

private_pool_ids

array

List of private pool IDs.

string

Private pool ID.

eap-bp1c1fohub5jccwi****

system_disk_snapshot_policy_id

string

System disk snapshot policy

sp-0jl6xnmme8v7o935****

node_config

object

Node configuration.

kubelet_configuration kubelet_config

Kubelet parameter configuration.

node_os_config

object

Node operating system configuration.

hugepage

Hugepage

Hugepage configuration.

kubernetes_config

object

Cluster-related configuration.

labels

array

Node labels.

tag

Label configuration.

{}

taints

array

Node taint information. Taints and tolerations work together to prevent Pods from being scheduled to inappropriate nodes. For more information, see taint-and-toleration.

taint

Node taint information.

runtime

string

Container runtime name. ACK supports the following three container runtimes:

  • containerd: recommended, supports all cluster versions.

  • Sandboxed-Container.runv: secure sandbox container, provides higher isolation, supports clusters of version 1.31 and below.

  • docker: maintenance discontinued, supports clusters of version 1.22 and below.

containerd

runtime_version

string

Container runtime version.

1.6.38

cpu_policy

string

Node CPU management policy. Supported when cluster version is 1.12.6 or above:

  • static: allows enhanced CPU affinity and exclusivity for Pods with specific resource characteristics on the node.

  • none: enables the existing default CPU affinity scheme.

none

user_data

string

Node pool custom data, i.e., scripts that run after node initialization. For more information, see Generate instance custom data.

IyEvYmluL3NoCmVjaG8gIkhlbGxvIEFD****

unschedulable

boolean

Whether nodes are unschedulable after scale-out.

  • true: unschedulable.

  • false: schedulable.

true

cms_enabled

boolean

Whether to install Cloud Monitor on ECS nodes. After installation, you can view monitoring information for the created ECS instances in the Cloud Monitor console. Recommended to enable. Valid values:

  • true: install Cloud Monitor on ECS nodes.

  • false: do not install Cloud Monitor on ECS nodes.

true

node_name_mode

string

Custom node name.

The node name consists of three parts: prefix + node IP address substring + suffix:

  • Both prefix and suffix can consist of one or more parts separated by ".". Each part can use lowercase letters, digits, and "-". The node name must start and end with lowercase letters or digits.

  • The IP address segment length refers to the number of digits taken from the end of the node IP address. Valid values: 5-12.

For example, if the node IP address is 192.168.0.55, the prefix is aliyun.com, the IP address segment length is 5, and the suffix is test, then the node name is aliyun.com00055test.

aliyun.com192.XX.YY.55test

pre_user_data

string

Node pool pre-custom data, i.e., scripts that run before node initialization. For more information, see Generate instance custom data.

IyEvYmluL3NoCmVjaG8gIkhlbGxvIEFD

tee_config

object

TEE configuration.

tee_enable

boolean

Whether to enable confidential computing cluster. Valid values:

  • true: enable.

  • false: disable.

false

interconnect_config

object

[This field is deprecated]

Network-related configuration for edge node pools. This value is only meaningful for edge-type node pools.

cen_id

string

[This field is deprecated]

Cloud Enterprise Network (CEN) instance ID bound to the edge enhanced node pool.

cen-ey9k9nfhz0f*******

ccn_id

string

[This field is deprecated]

Cloud Connect Network (CCN) instance ID bound to the edge enhanced node pool.

ccn-qm5i0i0q9yi*******

ccn_region_id

string

[This field is deprecated]

Region of the Cloud Connect Network (CCN) instance bound to the edge enhanced node pool.

cn-shanghai

bandwidth

integer

[This field is deprecated]

Network bandwidth of the edge enhanced node pool, unit: Mbps.

10

improved_period

string

[This field is deprecated]

Purchase duration of the edge enhanced node pool, unit: months.

1

max_nodes

integer

Maximum number of nodes allowed in the edge node pool. The maximum number of nodes that can be accommodated in the node pool. This parameter must be greater than or equal to 0. 0 means no additional limit (only limited by the total number of nodes the cluster can accommodate, no additional limit on the node pool itself). Edge node pools typically have a value greater than 0; ess-type node pools and default edge-type node pools have a value of 0.

10

interconnect_mode

string

Network type of the edge node pool. This parameter only takes effect for node pools with type set to edge. Valid values:

  • basic: Public network. Nodes in the node pool interact with cloud nodes through the public network. Applications in the node pool cannot directly access the cloud VPC private network.

  • private: Private network. Nodes in the node pool connect to cloud networks through dedicated lines, VPN, or CEN, providing higher cloud-edge communication quality and more effective security.

basic

auto_mode

object

Intelligent managed configuration.

enable

boolean

Whether to enable intelligent management.

true

node_components

array<object>

Node component list.

array<object>

Node component.

name

string

Node component name.

kubelet

version

string

Node component version.

1.33.3-aliyun.1

config

object

Node component configuration.

custom_config

object

Node component custom configuration.

{"cpuManagerPolicy":"static"}

any

Node component custom configuration string.

cpuManagerPolicy

eflo_node_group

object

Lingjun node group information.

cluster_id

string

Lingjun cluster ID.

i113790071760688002461

group_id

string

Lingjun group ID.

i128147721760688002463

Error codes

See Error Codes for a complete list.

Release notes

See Release Notes for a complete list.