Help Center/ Cloud Container Engine/ API Reference/ APIs/ Node Management/ Obtaining the Supernode List in a Cluster
Updated on 2026-01-08 GMT+08:00

Obtaining the Supernode List in a Cluster

Function

This API is used to obtain details about all supernodes in a specified cluster.

Calling Method

For details, see Calling APIs.

Authorization Information

Each account has all the permissions required to call all APIs, but IAM users must be assigned the required permissions.

  • If you are using role/policy-based authorization, see Permissions Policies and Supported Actions for details on the required permissions.
  • If you are using identity policy-based authorization, the following identity policy-based permissions are required.

    Action

    Access Level

    Resource Type (*: required)

    Condition Key

    Alias

    Dependencies

    cce:hypernode:list

    List

    cluster *

    -

    -

    -

URI

GET /api/v3/projects/{project_id}/clusters/{cluster_id}/hypernodes

Table 1 Path Parameters

Parameter

Mandatory

Type

Description

project_id

Yes

String

Details:

Project ID. For details about how to obtain the value, see How to Obtain Parameters in the API URI.

Constraints:

None

Options:

Project IDs of the account

Default value:

N/A

cluster_id

Yes

String

Details:

Cluster ID. For details about how to obtain the value, see How to Obtain Parameters in the API URI.

Constraints:

None

Options:

Cluster IDs

Default value:

N/A

Table 2 Query Parameters

Parameter

Mandatory

Type

Description

limit

No

Integer

Definition

Number of data records displayed on each page

Constraints

N/A

Range

An integer ranging from 1 to 1000

Default Value

100

offset

No

Integer

Definition

The number of data records to skip for pagination. For example, entering 0 displays the first record. Entering 10 skips the first 10 records and displays the 11th. If no value is entered, the parameter will default to 0 and the first record is shown by default.

Constraints

N/A

Range

A 32-bit non-negative integer

Default Value

0

Request Parameters

None

Response Parameters

Status code: 200

Table 3 Response body parameters

Parameter

Type

Description

hyperNodeList

Array of HyperNode objects

Supernode.

Table 4 HyperNode

Parameter

Type

Description

apiVersion

String

v3

kind

String

HyperNode

metadata

HyperNodeMetadata object

Supernode metadata.

spec

HyperNodeSpec object

Supernode information.

status

HyperNodeStatus object

Supernode status.

Table 5 HyperNodeMetadata

Parameter

Type

Description

name

String

Definition

Supernode name.

NOTE:
Enter 1 to 56 characters starting with a lowercase letter and not ending with a hyphen (-). Only lowercase letters, digits, and hyphens (-) are allowed.

uid

String

Definition

Supernode ID, which is unique and automatically generated after the creation. A user-defined ID will not take effect.

creationTimestamp

String

Definition

Creation time, which is automatically generated after creation. A user-defined value will not take effect.

updateTimestamp

String

Definition

Update time, which is automatically generated. A custom value will not take effect.

ownerReference

ownerReference object

Owner object.

Table 6 ownerReference

Parameter

Type

Description

nodepoolName

String

Definition

Node pool name.

nodepoolID

String

Definition

Node pool ID

Table 7 HyperNodeSpec

Parameter

Type

Description

flavor

String

Definition

Supernode flavor.

nodepoolID

String

Definition

Node pool ID.

nodeTemplate

Array of NodeTemplateInHyperNode objects

Definition

Node settings for the supernode.

chargeMode

String

Definition

Billing mode.

Range

  • prepaid: yearly/monthly

  • postPaid: pay-per-use

Table 8 NodeTemplateInHyperNode

Parameter

Type

Description

az

String

Definition

AZ that a node on a supernode belongs to.

For details about AZs supported by CCE, see Regions and Endpoints.

os

String

Definition

OS type of a node on a supernode. For details about the supported OSs, see Node OSs.

login

Login object

Definition

How to log in to a node.

rootVolume

Volume object

Definition

System disk information of the node.

dataVolumes

Array of Volume objects

Definition

Data disk parameters of a node.

storage

Storage object

Details:

Disk initialization management parameter.

This parameter is complex to configure. For details, see Attaching Disks to a Node.

Constraints:

  • This field is supported by clusters v1.15.11-r0 and later versions. If the cluster version is not supported, this field will be ignored.

  • If a node has both local and EVS disks attached, make sure to not keep the default value for this parameter, or it may result in unexpected disk partitions.

  • If you want to change the value range of a data disk to 20 to 32768, do not use the default value.

  • If you want to use the shared disk space (with the runtime and Kubernetes partitions cancelled), do not retain the default value of this parameter. For details about the shared disk space, see Space Allocation of a Data Disk.

  • If you want to store system components in the system disk, do not use the default value.

k8sTags

Map<String,String>

Definition

Kubernetes label delivered to a node during the supernode creation. The label is a key-value pair.

Example:

"k8sTags": {
  "key": "value"
}

runtime

Runtime object

Definition

Container runtime.

extendParam

NodeExtendParam object

Definition

Extended parameters for creating a node.

hostnameConfig

HostnameConfig object

Definition

Kubernetes node name configuration parameter.

Table 9 Login

Parameter

Type

Description

sshKey

String

Details:

Name of the key pair used for login

Constraints:

None

Options:

N/A

Default value:

N/A

userPassword

UserPassword object

Details:

Password used for node login

Constraints:

None

removeUserPassword

Boolean

Definition

Whether to remove the password login setting of a node pool during the node pool update

Constraints

This parameter is supported only during node pool updates. If it is set to true, no user password can be specified.

Range

N/A

Default Value

false

removeSSHKey

Boolean

Definition

Whether to remove the key pair login setting of a node pool during the node pool update

Constraints

This parameter is supported only during node pool updates. If it is set to true, no SSH key can be specified.

Range

N/A

Default Value

false

Table 10 UserPassword

Parameter

Type

Description

username

String

Details:

Login account. The default value is root.

Constraints:

None

Options:

N/A

Default value:

root

password

String

Details:

Login password. If a username and password are used when a node is created, this field is shielded in the response body.

Constraints:

The password field must be salted during node creation. For details, see Adding a Salt in the password Field When Creating a Node.

Options:

A password must:

  • Contain 8 to 26 characters.

  • Contain at least three of the following character types: uppercase letters, lowercase letters, digits, and special characters !@$%^-_=+[{}]:,./?

  • Not contain the username or the username spelled backwards.

Default value:

N/A

Table 11 Volume

Parameter

Type

Description

size

Integer

Details:

Disk size, in GiB

Constraints:

None

Options:

  • System disks: 40 to 1,024

  • The first data disk: 20 to 32,768 (When storage is not specified, this value range becomes 100 to 32,768.)

  • Other data disks: 10 to 32,768 (When storage is not specified, this value range becomes 100 to 32,768.)

Default value:

N/A

volumetype

String

Details:

Disk type. For details about possible values, see the root_volume parameter in the API used to create an ECS.

Constraints:

None

Options:

  • SAS: high I/O SAS disks

  • SSD: ultra-high I/O SSD disks

  • SATA: common I/O SATA disks. SATA disks have been removed from EVS. You can find them attached only to existing nodes.

NOTE:
For details about disk types, see Disk Types and Performance.

Default value:

N/A

extendParam

Map<String,Object>

Details:

Extended disk parameters, defined in extendparam in the API used to create an ECS.

For details, see extendparam Field Description for Creating Disks.

Constraints:

None

cluster_id

String

Details:

ID of the storage pool used by the ECS system disk. This field is used only for DeC clusters and functions as dssPoolID, that is, the ID of the DSS storage pool.

To obtain the value, see the ID field in the API used to obtain details of a DSS storage pool.

Constraints:

None

Options:

N/A

Default value:

N/A

cluster_type

String

Details:

Storage class of the ECS system disk

Constraints:

None

Options:

This field is used only for DeC clusters, and the value is always dss.

Default value:

N/A

hw:passthrough

Boolean

Details:

  • Pay attention to this field if your ECS is SDI-compliant. If the value of this field is true, the created disk is of SCSI type.

  • If the node pool type is ElasticBMS, this field must be set to true.

  • If the node specification involves both local and EVS disks, configure the disk initialization parameters. For details, see Attaching Disks to a Node.

Constraints:

None

Options:

N/A

Default value:

N/A

metadata

VolumeMetadata object

Details:

EVS disk encryption information. This parameter is mandatory only when the system disk or data disk of the node to be created needs to be encrypted.

Constraints:

None

Table 12 VolumeMetadata

Parameter

Type

Description

__system__encrypted

String

Details:

Whether an EVS disk is encrypted. The value 0 indicates that the EVS disk is not encrypted, and the value 1 indicates that the EVS disk is encrypted.

Constraints:

None

Options:

N/A

Default value:

If this parameter does not appear, the disk is not encrypted.

__system__cmkid

String

Details:

CMK ID, which indicates encryption in metadata. This field is used with __system__encrypted.

Constraints:

None

Options:

N/A

Default value:

N/A

Table 13 Storage

Parameter

Type

Description

storageSelectors

Array of StorageSelectors objects

Details:

Disk selection. Matched disks are managed based on matchLabels and storageType settings. Disks are matched in sequence. The matching rule in the front is matched first.

Constraints:

None

storageGroups

Array of StorageGroups objects

Details:

A storage group consisting of multiple storage devices, which are used to divide storage space.

Constraints:

None

Table 14 StorageSelectors

Parameter

Type

Description

name

String

Details:

Name of a selector, which is used as the index of selectorNames in storageGroup.

Constraints:

The name of each selector must be unique.

Options:

N/A

Default value:

N/A

storageType

String

Details:

Storage type

Constraints:

  • The local storage type does not support disk selection. All local disks form a VG. Therefore, only one local storage selector is allowed.

  • The system storage type does not support disk selection. It is recommended that you use the system disk to store system components. As a result, only one storage selector of the system type is allowed, and the name must be cceUse.

Options:

Only evs (EVS disks), local (local disks), and system (system disks) are supported.

Default value:

N/A

matchLabels

matchLabels object

Details:

Matching field of an EVS disk

Constraints:

If storageType is set to system (system disk), you do not need to configure this parameter.

Options:

The size, volumeType, metadataEncrypted, metadataCmkid, and count fields in DataVolume are supported.

Default value:

N/A

Table 15 matchLabels

Parameter

Type

Description

size

String

Details:

Matched disk size, for example, 100. If this parameter is left blank, the disk size is not limited.

Constraints:

None

Options:

N/A

Default value:

N/A

volumeType

String

Definition

EVS disk type. Supported types include SSD, GPSSD, SAS, ESSD, and SATA. If this parameter is left empty, there is no restriction on the EVS disk type.

Constraints

N/A

Range

N/A

Default Value

N/A

metadataEncrypted

String

Details:

Disk encryption identifier. If this parameter is set to 0, it specifies that the disk is not encrypted. If this parameter is set to 1, it specifies that the disk is encrypted. If this parameter is left blank, there is no restriction on the disk encryption identifier.

Constraints:

None

Options:

N/A

Default value:

N/A

metadataCmkid

String

Details:

CMK ID of an encrypted disk. The value is a string of 36 bytes. If this parameter is left blank, there is no restriction on the disk key ID.

Constraints:

None

Options:

N/A

Default value:

N/A

count

String

Details:

Number of disks to be selected. If this parameter is left blank, all disks of this type are selected.

Constraints:

None

Options:

N/A

Default value:

N/A

Table 16 StorageGroups

Parameter

Type

Description

name

String

Details:

Name of a virtual storage group, which must be unique

Constraints:

None

Options:

  • If cceManaged is set to true, the name field must be set to vgpaas.

  • If the data disk is used as a temporary storage volume, the name field must be set to vg-everest-localvolume-ephemeral.

  • If the data disk is used as a persistent storage volume, the name field must be set to vg-everest-localvolume-persistent.

Default value:

N/A

cceManaged

Boolean

Details:

Storage space to which Kubernetes and runtime belong. Only one group is set to true. If this parameter is left blank, the default value false is used.

Constraints:

None

Options:

N/A

Default value:

N/A

selectorNames

Array of strings

Details:

Corresponds to name in storageSelectors. One group can select multiple selectors, but one selector can be selected by only one group.

Constraints:

System components cannot be separately stored in the system disk and data disks. Therefore, when the selector type is set to system, only one selector can be selected for a group.

virtualSpaces

Array of VirtualSpace objects

Details:

Detailed management of space configurations in a group

Constraints:

None

Table 17 VirtualSpace

Parameter

Type

Description

name

String

Details:

Name of a virtualSpace. Only types of share, kubernetes, runtime, and user are supported.

Constraints:

None

Options:

  • Kubernetes: Kubernetes space configuration. lvmConfig needs to be configured.

  • runtime: runtime space configuration. runtimeConfig needs to be configured.

  • user: user space configuration. lvmConfig needs to be configured.

Default value:

N/A

size

String

Details:

Size of a virtualSpace. The value must be an integer in percentage, for example, 90%.

Constraints:

None

Options:

10 to 90. The sum of percentages of all virtualSpaces in a group cannot exceed 100%.

Default value:

N/A

lvmConfig

LVMConfig object

Details:

LVM configuration management, which is applicable to share, Kubernetes, and user space configuration

Constraints:

One virtualSpace supports only one config.

runtimeConfig

RuntimeConfig object

Details:

Runtime configuration management, which is applicable to runtime space configuration

Constraints:

One virtualSpace supports only one config.

Table 18 LVMConfig

Parameter

Type

Description

lvType

String

Details:

LVM write mode. linear indicates the linear mode. striped indicates the striped mode, in which multiple disks are used to form a strip to improve disk performance.

Constraints:

None

Options:

N/A

Default value:

N/A

path

String

Details:

Disk mount path. This parameter only takes effect in user configuration. The value can be an absolute path containing digits, uppercase letters, lowercase letters, periods (.), hyphens (-), and underscores (_).

Constraints:

Do not leave the path empty or set it to a key OS path such as the root directory. Key OS paths that cannot be entered:

/, /home, /home/, /bin, /bin/, /lib, /lib/, /root, /root/, /boot, /boot/, /dev, /dev/, /etc, /etc/, /lost+found, /lost+found/, /mnt, /mnt/, /proc, /proc/,/sbin, /sbin/, /srv, /srv/, /tmp, /tmp/, /var, /var/, /media, /media/, /opt, /opt/, /selinux, /selinux/, /sys, /sys/, /usr, /usr/, /opt/cloud/, /mnt/paas/, /home/paas/, /var/paas/, /var/lib/, /var/script/

Options:

N/A

Default value:

N/A

Table 19 RuntimeConfig

Parameter

Type

Description

lvType

String

Details:

LVM write mode. linear indicates the linear mode. striped indicates the striped mode, in which multiple disks are used to form a strip to improve disk performance.

Constraints:

None

Options:

N/A

Default value:

N/A

Table 20 Runtime

Parameter

Type

Description

name

String

Details:

Container runtime

Constraints:

None

Options:

N/A

Default value:

  • Clusters earlier than v1.25: The default value is docker.

  • Clusters of v1.25 or later: The default value varies with the OSs.

  • For nodes running EulerOS 2.5 or EulerOS 2.8, the default value is docker. For nodes running other OSs, the default value is containerd.

Table 21 NodeExtendParam

Parameter

Type

Description

ecs:performancetype

String

Details:

ECS flavor types. This field is returned in the response.

Constraints:

None

Options:

N/A

Default value:

N/A

orderID

String

Definition

Order ID

Constraints

This parameter is included in the responses only during node creation if the node is billed on a yearly/monthly basis with auto payment enabled. It is not returned in the responses related to node pools.

Range

N/A

Default Value

N/A

productID

String

Definition

Product ID

Constraints

This parameter is included in the responses if the node is billed on a yearly/monthly basis with auto payment enabled or the node pool is billed on a yearly/monthly basis.

Range

N/A

Default Value

N/A

maxPods

Integer

Details:

Maximum number of pods that can be created on a node, including the default system pods.

This limit prevents the node from being overloaded with pods.

The number of pods that can be created on a node is determined by multiple parameters. For details, see Maximum Number of Pods That Can Be Created on a Node.

Constraints:

None

Options:

16 to 256

Default value:

N/A

periodType

String

Details:

Subscription term unit

Constraints:

  • As a request parameter, it is valid and mandatory only when billingMode is set to 1 (yearly/monthly billing) or 2 (yearly/monthly billing with auto payment enabled) (This option has been deprecated).

  • As a response parameter, it is returned only when a yearly/monthly node is created.

Options:

  • month

  • year

Default value:

N/A

periodNum

Integer

Details:

Number of subscription periods

Constraints:

  • As a request parameter, it is valid and mandatory only when billingMode is set to 1 (yearly/monthly billing) or 2 (yearly/monthly billing with auto payment enabled) (This option has been deprecated).

  • As a response parameter, it is returned only when a yearly/monthly node is created.

Options:

  • If periodType is month, the value ranges from 1 to 9.

  • If periodType is year, the value ranges from 1 to 3.

Default value:

N/A

isAutoRenew

String

Details:

Whether auto-renewal is enabled

Constraints:

This field is valid when billingMode is set to 1 or 2 (deprecated). If not specified, auto-renewal is not enabled.

Options:

  • true: Auto-renewal is enabled.

  • false: Auto-renewal is not enabled.

Default value:

N/A

isAutoPay

String

Details:

Whether an order is automatically or manually paid

Constraints:

This field is valid when billingMode is set to 1 or 2 (deprecated). If not specified when billingMode is set to 1, auto payment is not enabled. If not specified when billingMode is set to 2 (deprecated), auto payment is enabled.

Options:

  • true: Auto payment is enabled.

  • false: Auto payment is not enabled.

Default value:

N/A

DockerLVMConfigOverride

String

Details:

Docker data disk configuration item. (This parameter has been deprecated. Use the storage field instead.) Example of the default configuration:

"DockerLVMConfigOverride":"dockerThinpool=vgpaas/90%VG;kubernetesLV=vgpaas/10%VG;diskType=evs;lvType=linear"

By default, if no VD disk is available, an error occurs because the data disk fails to be found. Specify diskType based on the actual drive letter type.

Constraints:

None

Options:

The following fields are included:

  • userLV: (Optional) size of the user space, for example, vgpaas/20%VG

  • userPath (Optional): mount path of the user space, for example, /home/wqt-test

  • diskType: disk type. Only evs, hdd, and ssd are supported.

  • lvType: type of a logic volume. The value can be linear or striped.

  • dockerThinpool: Docker space size, for example, vgpaas/60%VG

  • kubernetesLV: kubelet space size, for example, vgpaas/20%VG

Default value:

N/A

dockerBaseSize

Integer

Definition

Available disk space of a single container on a node (unit: G). This parameter has been deprecated. Use containerBaseSize.

For details about how to allocate the space for the container runtime, see Data Disk Space Allocation.

Constraints

  • When Device Mapper is used, it is recommended that dockerBaseSize be set to a value less than or equal to 80 GiB. If the value is too large, the container runtime may fail to be started due to time-consuming initialization. If there are special requirements for the container disk space, you can mount external or local storage.

  • dockerBaseSize takes effect only on nodes running EulerOS or Huawei Cloud EulerOS 2.0 in clusters of v1.19.16-r0, v1.21.3-r0, v1.23.3-r0, or later.

Range

10 to 500

Default Value

If the value is not specified or is set to 0, the default value is used.

  • The default value is 10 in Device Mapper mode.

  • In OverlayFS mode, no fixed upper limit is imposed on the available space of a single container.

containerBaseSize

Integer

Details:

Available disk space of a single container on a node (unit: G).

For details about how to allocate the space for the container runtime, see Space Allocation of a Data Disk.

Constraints:

When Device Mapper is used, it is recommended that containerBaseSize be set to a value less than or equal to 80 GiB. If the value is too large, the container runtime may fail to be started due to long initialization. If there are special requirements for the container disk space, you can mount an external or local storage device. In new versions, the Device Mapper mode is used only by BMSs in the same resource pool and is being deprecated.

  • The containerBaseSize setting takes effect only on nodes running EulerOS or Huawei Cloud EulerOS 2.0 in clusters of the new version (v1.23.14-r0, v1.25.9-r0, v1.27.6-r0, v1.28.4-r0 or later).

  • This parameter cannot be updated when a node pool is being updated.

Options:

10 to 500

Default value:

If the value is not specified or is set to 0, the default value is used.

  • The default value is 10 in Device Mapper mode.

  • In OverlayFS mode, the available space of a single container is not limited by default.

publicKey

String

Definition

Public key of a node, which is used for SSH key login

Constraints

  • This parameter is invalid if you use a key pair to log in to the node.

  • This parameter cannot be configured during node pool creation and updates.

Range

N/A

Default Value

N/A

alpha.cce/preInstall

String

Details:

Pre-installation script.

The input value must be encoded using Base64. The method is as follows:

echo -n "*Content to be encoded*" | base64

Constraints:

The characters of both the pre-installation and post-installation scripts are centrally calculated, and the total number of characters after transcoding cannot exceed 10,240.

Options:

N/A

Default value:

N/A

alpha.cce/postInstall

String

Details:

Post-installation script.

The input value must be encoded using Base64. The method is as follows:

echo -n "*Content to be encoded*" | base64

Constraints:

The characters of both the pre-installation and post-installation scripts are centrally calculated, and the total number of characters after transcoding cannot exceed 10,240.

Options:

N/A

Default value:

N/A

alpha.cce/NodeImageID

String

Definition

Private image ID of a node, which is obtained from the IMS console. This parameter is required when private images are used.

Constraints

N/A

Range

N/A

Default Value

N/A

chargingMode

Integer

Details:

Billing mode of a node. This parameter has been deprecated. Use billingMode in NodeSpec instead.

Constraints:

None

Options:

N/A

Default value:

N/A

marketType

String

Details:

When creating a spot ECS, this parameter should be set to spot.

Constraints:

This parameter is valid only when billingMode is set to 0.

Options:

N/A

Default value:

N/A

spotPrice

String

Details:

The highest price per hour a user accepts for a spot ECS

Constraints:

  • This parameter takes effect only when billingMode is set to 0 and marketType is set to spot.

  • When billingMode is set to 0 and marketType is set to spot, if spotPrice is not specified, the pay-per-use price is used by default.

  • The spotPrice value must be less than or equal to the pay-per-use price and greater than or equal to the ECS market price.

Options:

N/A

Default value:

N/A

agency_name

String

Details:

Agency name.

An agency is created by a tenant administrator on Identity and Access Management (IAM) to provide temporary credentials for CCE nodes to access cloud servers.

This parameter is returned only when it is transferred during node creation.

Constraints:

None

Options:

N/A

Default value:

N/A

kubeReservedMem

Integer

Details:

Reserved node memory, which is reserved for Kubernetes components.

Constraints:

None

Options:

N/A

Default value:

N/A

systemReservedMem

Integer

Details:

Reserved node memory, which is reserved for system components.

Constraints:

None

Options:

N/A

Default value:

N/A

kubeReservedCpu

Integer

Definition

Reserved node CPU cores for Kubernetes components. The unit is mcore.

Constraints

The sum of kubeReservedCpu and systemReservedCpu is less than 50/ %of the minimum CPUs of the nodes in a node pool.

Range

N/A

Default Value

N/A

systemReservedCpu

Integer

Definition

Reserved node CPU cores for system components. The unit is mcore.

Constraints

The sum of kubeReservedCpu and systemReservedCpu is less than 50/ %of the minimum CPUs of the nodes in a node pool.

Range

N/A

Default Value

N/A

kubeReservedPid

Integer

Definition

Reserved node PIDs for Kubernetes components. The purpose is to reserve a specified number of PIDs for Kubernetes daemons, such as kubelet and container runtime.

Constraints

The sum of kubeReservedPid and systemReservedPid is less than 50/ %of the maximum number of Linux PIDs.

Range

[0,2097152] Note: CCE verifies only the scenario where kernel.pid_max is 4194304. The kernel.pid_max of nodes created on or before January 30, 2022 is different from that of some OSs. If you have updated kernel.pid_max, ensure that the sum of kubeReservedPid and systemReservedPid is less than the upper limit of the number of Linux PIDs.

Default Value

N/A

systemReservedPid

Integer

Definition

Reserved node PIDs for system components. The purpose is to reserve a specified number of PIDs for the OS daemons, such as sshd and udev.

Constraints

The sum of kubeReservedPid and systemReservedPid is less than 50/ %of the maximum number of Linux PIDs.

Range

[0,2097152] Note: CCE verifies only the scenario where kernel.pid_max is 4194304. The kernel.pid_max of nodes created on or before January 30, 2022 is different from that of some OSs. If you have updated kernel.pid_max, ensure that the sum of kubeReservedPid and systemReservedPid is less than the upper limit of the number of Linux PIDs.

Default Value

N/A

kubeReservedStorage

Integer

Definition

Reserved temporary storage space of a node for Kubernetes components. The unit is Gi. The purpose is to reserve temporary storage for Kubernetes daemons, such as kubelet and container runtime.

Constraints

The sum of kubeReservedStorage and systemReservedStorage is less than 50/ %of the disk space used by container components.

Range

N/A

Default Value

N/A

systemReservedStorage

Integer

Definition

Reserved temporary storage space of a node for system components. The unit is Gi. The purpose is to reserve temporary storage for OS daemons, such as sshd and udev.

Constraints

The sum of kubeReservedStorage and systemReservedStorage is less than 50/ %of the disk space used by container components.

Range

N/A

Default Value

N/A

init-node-password

String

Definition

Node password. If this parameter is used only in a response, asterisks (*) are displayed. It is not returned in the responses related to node pools.

Constraints

N/A

Range

N/A

Default Value

N/A

Table 22 HostnameConfig

Parameter

Type

Description

type

String

Details:

Configuration type of the Kubernetes node name. The default value is privateIp.

Constraints:

  • The node names, Kubernetes node names, and VM names of the nodes configured with cceNodeName are the same. Node names cannot be changed. Once a VM name is altered on the ECS console, the node name cannot be modified accordingly during ECS synchronization.

  • To prevent conflicts between Kubernetes node names, a suffix is automatically added to the node name of a node configured with cceNodeName. The suffix consists of a hyphen (-) followed by five random lowercase letters and digits (0 to 9).

Options:

  • privateIp: Use the private node IP address the as the Kubernetes node name.

  • cceNodeName: Use the CCE node name as the Kubernetes node name.

Default value:

privateIp

Table 23 HyperNodeStatus

Parameter

Type

Description

phase

String

Definition

Supernode status.

Range

  • provisioning: The supernode is being created.

  • active: All nodes on the supernode are available.

  • partially-available: Some nodes on the supernode are unavailable.

  • error: The supernode is in error state.

  • deleting: The supernode is being deleted.

  • reinstalling: The supernode is being reset.

  • scaling: The supernode is being scaled in or out.

instanceID

String

Definition

Supernode ID

currentNode

Integer

Definition

Total number of nodes on a supernode.

deletingNode

Integer

Definition

Number of nodes being deleted from a supernode.

creatingNode

Integer

Definition

Number of nodes being created on a supernode.

activeNode

Integer

Definition

Number of available nodes on a supernode.

Example Requests

None

Example Responses

Status code: 200

The supernode list in the cluster has been obtained.

[ {
  "kind" : "HyperNode",
  "apiVersion" : "v3",
  "metadata" : {
    "name" : "example-hypernode",
    "uid" : "ff6f0e64-5ca5-11f0-99c9-0255ac10007d",
    "creationTimestamp" : "2025-07-09 09:20:47.33121 +0000 UTC",
    "updateTimestamp" : "2025-07-09 09:41:21.179737 +0000 UTC"
  },
  "spec" : {
    "flavor" : "kat3ne-8-800t.48xlarge.8.matrix_0507_cy",
    "nodepoolID" : "a7ff7919-564a-11f0-97e8-0255ac10007d",
    "nodeTemplate" : {
      "az" : "cn-southwest-249a",
      "os" : "Huawei Cloud EulerOS 2.0",
      "login" : {
        "userPassword" : {
          "username" : "root",
          "password" : "******"
        }
      },
      "rootVolume" : {
        "volumetype" : "SSD",
        "size" : 50
      },
      "dataVolumes" : [ {
        "volumetype" : "SSD",
        "size" : 100,
        "hw:passthrough" : true
      } ],
      "storage" : {
        "storageSelectors" : [ {
          "name" : "cceUse",
          "storageType" : "evs",
          "matchLabels" : {
            "count" : "1",
            "size" : "100",
            "volumeType" : "SSD"
          }
        } ],
        "storageGroups" : [ {
          "name" : "vgpaas",
          "cceManaged" : true,
          "selectorNames" : [ "cceUse" ],
          "virtualSpaces" : [ {
            "name" : "share",
            "size" : "100%",
            "lvmConfig" : {
              "lvType" : "linear"
            }
          } ]
        } ]
      },
      "k8sTags" : {
        "accelerator/huawei-npu" : "",
        "cce.cloud.com/cce-nodepool" : "hypernode-nodepool-wx-test-update-2",
        "test" : "abcd",
        "volcano.sh/hypercluster" : "50e537b1-57f8-4930-a308-b14cbadf1fa4",
        "volcano.sh/hypernode" : "ff6f0e64-5ca5-11f0-99c9-0255ac10007d"
      },
      "runtime" : {
        "name" : "containerd"
      },
      "extendParam" : {
        "alpha.cce/NodeImageID" : "17ce78b8-3b55-42f7-a818-3210539b36b1",
        "alpha.cce/postInstall" : "ZWNobyBoZWxsbyA+IC9wb3N0LnR4dA==",
        "alpha.cce/preInstall" : "ZWNobyBoZWxsbyA+IC9wcmUudHh0",
        "containerBaseSize" : 10,
        "maxPods" : 32,
        "publicKey" : ""
      },
      "hostnameConfig" : { }
    },
    "chargeMode" : "prepaid"
  },
  "status" : {
    "phase" : "partially-available",
    "instanceID" : "2dc90f06-198a-40de-96de-644025985cfb",
    "currentNode" : 1,
    "deletingNode" : 0,
    "creatingNode" : 0,
    "activeNode" : 0,
    "isStatic" : true
  }
} ]

SDK Sample Code

The SDK sample code is as follows.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
package com.huaweicloud.sdk.test;

import com.huaweicloud.sdk.core.auth.ICredential;
import com.huaweicloud.sdk.core.auth.BasicCredentials;
import com.huaweicloud.sdk.core.exception.ConnectionException;
import com.huaweicloud.sdk.core.exception.RequestTimeoutException;
import com.huaweicloud.sdk.core.exception.ServiceResponseException;
import com.huaweicloud.sdk.cce.v3.region.CceRegion;
import com.huaweicloud.sdk.cce.v3.*;
import com.huaweicloud.sdk.cce.v3.model.*;


public class ListHyperNodesSolution {

    public static void main(String[] args) {
        // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
        // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
        String ak = System.getenv("CLOUD_SDK_AK");
        String sk = System.getenv("CLOUD_SDK_SK");
        String projectId = "{project_id}";

        ICredential auth = new BasicCredentials()
                .withProjectId(projectId)
                .withAk(ak)
                .withSk(sk);

        CceClient client = CceClient.newBuilder()
                .withCredential(auth)
                .withRegion(CceRegion.valueOf("<YOUR REGION>"))
                .build();
        ListHyperNodesRequest request = new ListHyperNodesRequest();
        request.withClusterId("{cluster_id}");
        try {
            ListHyperNodesResponse response = client.listHyperNodes(request);
            System.out.println(response.toString());
        } catch (ConnectionException e) {
            e.printStackTrace();
        } catch (RequestTimeoutException e) {
            e.printStackTrace();
        } catch (ServiceResponseException e) {
            e.printStackTrace();
            System.out.println(e.getHttpStatusCode());
            System.out.println(e.getRequestId());
            System.out.println(e.getErrorCode());
            System.out.println(e.getErrorMsg());
        }
    }
}
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# coding: utf-8

import os
from huaweicloudsdkcore.auth.credentials import BasicCredentials
from huaweicloudsdkcce.v3.region.cce_region import CceRegion
from huaweicloudsdkcore.exceptions import exceptions
from huaweicloudsdkcce.v3 import *

if __name__ == "__main__":
    # The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
    # In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
    ak = os.environ["CLOUD_SDK_AK"]
    sk = os.environ["CLOUD_SDK_SK"]
    projectId = "{project_id}"

    credentials = BasicCredentials(ak, sk, projectId)

    client = CceClient.new_builder() \
        .with_credentials(credentials) \
        .with_region(CceRegion.value_of("<YOUR REGION>")) \
        .build()

    try:
        request = ListHyperNodesRequest()
        request.cluster_id = "{cluster_id}"
        response = client.list_hyper_nodes(request)
        print(response)
    except exceptions.ClientRequestException as e:
        print(e.status_code)
        print(e.request_id)
        print(e.error_code)
        print(e.error_msg)
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
package main

import (
	"fmt"
	"github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic"
    cce "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/cce/v3"
	"github.com/huaweicloud/huaweicloud-sdk-go-v3/services/cce/v3/model"
    region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/cce/v3/region"
)

func main() {
    // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
    // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
    ak := os.Getenv("CLOUD_SDK_AK")
    sk := os.Getenv("CLOUD_SDK_SK")
    projectId := "{project_id}"

    auth := basic.NewCredentialsBuilder().
        WithAk(ak).
        WithSk(sk).
        WithProjectId(projectId).
        Build()

    client := cce.NewCceClient(
        cce.CceClientBuilder().
            WithRegion(region.ValueOf("<YOUR REGION>")).
            WithCredential(auth).
            Build())

    request := &model.ListHyperNodesRequest{}
	request.ClusterId = "{cluster_id}"
	response, err := client.ListHyperNodes(request)
	if err == nil {
        fmt.Printf("%+v\n", response)
    } else {
        fmt.Println(err)
    }
}

For SDK sample code of more programming languages, see the Sample Code tab in API Explorer. SDK sample code can be automatically generated.

Status Codes

Status Code

Description

200

The supernode list in the cluster has been obtained.

Error Codes

See Error Codes.