文档首页/ 云容器引擎 CCE/ API参考/ API/ 节点池管理/ 获取集群下所有节点池
更新时间:2024-12-19 GMT+08:00
分享

获取集群下所有节点池

功能介绍

该API用于获取集群下所有节点池。

  • 集群管理的URL格式为:https://Endpoint/uri。其中uri为资源路径,也即API访问的路径

  • nodepool是集群中具有相同配置的节点实例的子集。

调用方法

请参见如何调用API

URI

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

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

参数解释:

项目ID,获取方式请参见如何获取接口URI中参数

约束限制:

不涉及

取值范围:

账号的项目ID

默认取值:

不涉及

cluster_id

String

参数解释:

集群ID,获取方式请参见如何获取接口URI中参数

约束限制:

不涉及

取值范围:

集群ID

默认取值:

不涉及

表2 Query参数

参数

是否必选

参数类型

描述

showDefaultNodePool

String

参数解释:

是否展示默认节点池。

约束限制:

不涉及

取值范围:

指定为“true”时展示默认节点池,不指定该参数时默认不展示。

默认取值:

请求参数

表3 请求Header参数

参数

是否必选

参数类型

描述

Content-Type

String

参数解释:

消息体的类型(格式)

约束限制:

GET方法不做校验

取值范围:

  • application/json

  • application/json;charset=utf-8

  • application/x-pem-file

  • multipart/form-data(注:存在FormData参数时使用)

默认取值:

不涉及

X-Auth-Token

String

参数解释:

调用接口的认证方式分为Token和AK/SK两种,如果您使用的Token方式,此参数为必填,请填写Token的值,获取方式请参见获取token

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

响应参数

状态码: 200

表4 响应Body参数

参数

参数类型

描述

kind

String

参数解释:

API类型。

约束限制:

该值不可修改。

取值范围:

不涉及

默认取值:

List

apiVersion

String

参数解释:

API版本。

约束限制:

该值不可修改。

取值范围:

不涉及

默认取值:

v3

items

Array of NodePoolResp objects

/

表5 NodePoolResp

参数

参数类型

描述

kind

String

参数解释:

API类型。

约束限制:

该值不可修改。

取值范围:

不涉及

默认取值:

NodePool

apiVersion

String

参数解释:

API版本。

约束限制:

该值不可修改。

取值范围:

不涉及

默认取值:

v3

metadata

NodePoolMetadata object

参数解释

节点池的元数据信息。

约束限制

不涉及

取值范围:

不涉及

默认取值:

不涉及

spec

NodePoolSpec object

参数解释

节点池的规格描述。

约束限制

更新节点池时,此字段为非必填字段。

取值范围:

不涉及

默认取值:

不涉及

status

NodePoolStatus object

参数解释

节点池状态。

约束限制

不涉及

取值范围:

不涉及

默认取值:

不涉及

表6 NodePoolMetadata

参数

参数类型

描述

name

String

参数解释

节点名池名称。

约束限制

不允许创建名为 DefaultPool 的节点池。

取值范围

以小写字母开头,由小写字母、数字、中划线(-)组成,长度范围1-50位,且不能以中划线(-)结尾。

默认取值

不涉及

uid

String

参数解释

节点池的uid。

约束限制

创建成功后自动生成,填写无效。

取值范围

不涉及

默认取值

不涉及

annotations

Map<String,String>

参数解释

节点池的注解,以key value对表示。

约束限制

仅用于查询,不支持请求时传入,填写无效。

updateTimestamp

String

参数解释

节点池更新时间。

约束限制

更新节点池时自动记录,不支持传入。

取值范围

不涉及

默认取值

不涉及

creationTimestamp

String

参数解释

节点池创建时间。

约束限制

创建节点池时自动记录,不支持传入。

取值范围

不涉及

默认取值

不涉及

表7 NodePoolSpec

参数

参数类型

描述

type

String

参数解释

节点池类型。

约束限制

不涉及

取值范围

  • vm:弹性云服务器

  • ElasticBMS:C6型弹性裸金属通用计算增强型云服务器,规格示例:c6.22xlarge.2.physical

  • pm: 裸金属服务器

默认取值

vm

nodeTemplate

NodeSpec object

参数解释

节点池模板详细参数。

约束限制

不涉及

initialNodeCount

Integer

参数解释

节点池初始化节点个数。查询时为节点池目标节点数量。

约束限制

不涉及

取值范围

大于等于0,不大于集群规模。

默认取值

0

autoscaling

NodePoolNodeAutoscaling object

参数解释

弹性伸缩参数。

约束限制

不涉及

nodeManagement

NodeManagement object

参数解释

节点管理相关配置。

约束限制

不涉及

podSecurityGroups

Array of SecurityID objects

参数解释

安全组相关配置, 仅turbo集群支持配置该参数。

约束限制

不涉及

extensionScaleGroups

Array of ExtensionScaleGroup objects

参数解释

节点池扩展伸缩组配置列表,详情参见ExtensionScaleGroup类型定义。

约束限制

不涉及

customSecurityGroups

Array of strings

参数解释

节点池自定义安全组相关配置。支持节点池新扩容节点绑定指定的安全组。

  • 未指定安全组ID,新建节点将添加Node节点默认安全组。

  • 指定有效安全组ID,新建节点将使用指定安全组。

  • 指定安全组,应避免对CCE运行依赖的端口规则进行修改。详细设置请参考集群安全组规则配置

约束限制

不涉及

表8 NodeSpec

参数

参数类型

描述

flavor

String

参数解释

节点的规格,CCE支持的节点规格请参考节点规格说明获取。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

az

String

参数解释

待创建节点所在的可用区,需要指定可用区(AZ)的名称,通过api创建节点不支持随机可用区。

CCE支持的可用区请参考地区和终端节点

约束限制

创建节点池并设置伸缩组时,该参数不允许填写为random。

取值范围

不涉及

默认取值

不涉及

os

String

参数解释

节点的操作系统类型。具体支持的操作系统请参见节点操作系统说明

约束限制

  • 若当前集群版本不支持该OS类型,则会自动替换为当前集群版本支持的同系列OS类型。

  • 若在创建节点时指定了extendParam中的alpha.cce/NodeImageID参数,可以不填写此参数。

  • 该参数缺省时,CCE会根据集群版本自动选择支持的OS版本。

  • 创建节点池时,该参数为必选。

  • 若创建节点时使用共享磁盘空间,即磁盘初始化配置管理参数使用storage,且StorageGroups中virtualSpaces的name字段指定为share,该参数为必选。

取值范围

不涉及

默认取值

不涉及

login

Login object

参数解释

节点的登录方式。密钥对和密码登录方式二者必选其一。

约束限制

更新节点池时,不支持修改此参数。

rootVolume

Volume object

参数解释

节点的磁盘信息。

约束限制

不涉及

dataVolumes

Array of Volume objects

参数解释

节点的数据盘参数。针对专属云节点,参数解释与rootVolume一致。

约束限制

磁盘挂载上限为虚拟机不超过16块,裸金属不超过10块。在此基础上还受限于虚拟机/裸金属规格可挂载磁盘数上限。(目前支持通过控制台和API为CCE节点添加多块数据盘)。

如果数据盘正供容器运行时和Kubelet组件使用,则不可被卸载,否则将导致节点不可用。

storage

Storage object

参数解释

磁盘初始化配置管理参数。

该参数配置逻辑较为复杂,详细说明请参见节点磁盘挂载

约束限制

  • 如存在节点规格涉及本地盘并同时使用云硬盘场景时,请勿缺省此参数,避免出现将用户未期望的磁盘分区。

  • 如希望数据盘取值范围调整至20-32768,请勿缺省此参数。

  • 如希望使用共享磁盘空间(取消runtime和kubernetes分区),请勿缺省此参数,共享磁盘空间请参考数据盘空间分配说明

  • 如希望系统组件存储在系统盘中,请勿缺省此参数。

publicIP

NodePublicIP object

参数解释

节点的弹性公网IP。

约束限制

创建节点池添加节点时不支持该参数。

nodeNicSpec

NodeNicSpec object

参数解释

节点的网卡信息。

约束限制

不涉及

count

Integer

参数解释

批量创建时节点的个数。

约束限制

作用于节点池时该项可以不填写。

取值范围

必须为大于等于1,小于等于最大限额的正整数。

默认取值

不涉及

billingMode

Integer

参数解释

节点的计费模式。

约束限制

不涉及

取值范围

  • 0: 按需付费

  • 1: 包周期

  • 2: 已废弃:自动付费包周期

默认取值

不涉及

taints

Array of Taint objects

参数解释

支持给创建出来的节点加Taints来设置反亲和性。每条Taints包含以下3个参数:

  • Key:必须以字母或数字开头和结尾,可以包含字母、数字、连字符、下划线和点,最长63个字符;另外可以使用DNS子域作为前缀。

  • Value:必须以字符或数字开头和结尾,可以包含字母、数字、连字符、下划线和点,最长63个字符。

  • Effect:只可选NoSchedule,PreferNoSchedule或NoExecute。

    字段使用场景:在节点创建场景下,支持指定初始值,查询时不返回该字段;在节点池场景下,其中节点模板中支持指定初始值,查询时支持返回该字段;在其余场景下,查询时都不会返回该字段。

示例:

"taints": [{
  "key": "status",
  "value": "unavailable",
  "effect": "NoSchedule"
}, {
  "key": "looks",
  "value": "bad",
  "effect": "NoSchedule"
}]

约束限制

taints配置不超过20条。

k8sTags

Map<String,String>

参数解释

格式为key/value键值对。

  • Key:必须以字母或数字开头和结尾,可以包含字母、数字、连字符、下划线和点,最长63个字符;另外可以使用DNS子域作为前缀,例如example.com/my-key,DNS子域最长253个字符。

  • Value:可以为空或者非空字符串,非空字符串必须以字符或数字开头和结尾,可以包含字母、数字、连字符、下划线和点,最长63个字符。

    字段使用场景:在节点创建场景下,支持指定初始值,查询时不返回该字段;在节点池场景下,其中节点模板中支持指定初始值,查询时支持返回该字段;在其余场景下,查询时都不会返回该字段。

示例:

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

约束限制

键值对个数不超过20条。

ecsGroupId

String

参数解释

云服务器组ID,若指定,将节点创建在该云服务器组下。

约束限制

创建节点池时该配置不会生效,若要保持节点池中的节点都在同一个云服务器组内,请在节点池 nodeManagement 字段中配置。

取值范围

不涉及

默认取值

不涉及

dedicatedHostId

String

参数解释

指定DeH主机的ID,将节点调度到自己的DeH上。

约束限制

创建节点池添加节点时不支持该参数。

userTags

Array of UserTag objects

参数解释

云服务器标签(资源标签)。字段使用场景:在节点创建场景下,支持指定初始值,查询时不返回该字段;在节点池场景下,其中节点模板中支持指定初始值,查询时支持返回该字段;在其余场景下,查询时都不会返回该字段。

约束限制

  • 键必须唯一,CCE支持的最大用户自定义标签数量依region而定,自定义标签数上限为8个。

  • 标签键只能包含大写字母.小写字母、数字和特殊字符(-_)以及Unicode字符,长度不超过36个字符。

runtime

Runtime object

参数解释

容器运行时, 默认场景:

  • 1.25以下集群:默认为"docker"

  • 1.25及以上集群,随操作系统变化,默认的容器运行时不同

  • 操作系统为欧拉2.5、欧拉2.8的节点仅支持"docker",其余操作系统的节点默认为"containerd"

约束限制

不涉及

initializedConditions

Array of strings

参数解释

自定义初始化标记,默认值为空。

CCE节点在初始化完成之前,会打上初始化未完成污点(node.cloudprovider.kubernetes.io/uninitialized)防止pod调度到节点上。用户在创建节点时,可以通过设置initializedConditions参数,控制污点的移除时间(默认不设置超时时间)。

使用示例如下:

  1. 创建节点,传入参数 "initializedConditions": ["CCEInitial", "CustomedInitial"];

  2. 用户在执行完自定义初始化操作后,调用k8s接口(例如PATCH /v1/nodes/{node_ip}/status)更新节点的conditions,插入type为CCEInitial、CustomedInitial的两个标记,状态为True,如下所示:

status:
  conditions:
  - type: CCEInitial
    status: 'True'
  - type: CustomedInitial
    status: 'True'
  1. CCE组件轮询节点的status.Conditions,查看是否存在type为CCEInitial、CustomedInitial的condition,若存在且status字段值为True,认为节点初始化完成,则移除初始化污点;

  2. initializedConditions支持设置超时时间,用户可以在创节点时传入,如:"initializedConditions": ["CCEInitial:15m", "CustomedInitial:15m"],表示超时时间为15分钟,达到超时时间后,当CCE组件轮询到节点时会自动忽略初始化condition,移除初始化污点。

约束限制

  • initializedConditions中超时时间取值范围为[1-99]秒

  • 必须以字母、数字组成,长度范围1-20位。

  • 标记数量不超过2个。

  • 超时时间仅支持分钟(m)单位。

extendParam

NodeExtendParam object

参数解释

创建节点时的扩展参数。

约束限制

不涉及

hostnameConfig

HostnameConfig object

参数解释

K8S节点名称配置参数。

约束限制

支持的集群版本为v1.23.6-r0到v1.25或者v1.25.2-r0及以上。

serverEnterpriseProjectID

String

参数解释

服务器企业项目ID。CCE服务不实现EPS相关特性,该字段仅用于同步服务器企业项目ID。

约束限制

创建节点/节点池场景:可指定已存在企业项目,当取值为空时,该字段继承集群企业项目属性。

更新节点池场景:配置修改后仅会对新增节点的服务器生效,存量节点需前往EPS界面迁移。

取值范围

不涉及

默认取值

如果更新时不指定值,不会更新该字段。

当该字段为空时,返回集群企业项目。

表9 Login

参数

参数类型

描述

sshKey

String

参数解释

选择密钥对方式登录时的密钥对名称。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

userPassword

UserPassword object

参数解释

选择密码方式登录时的账号密码信息,之后可通过此账号密码登录节点。

约束限制

不涉及

表10 UserPassword

参数

参数类型

描述

username

String

参数解释

登录账号,默认为“root”。

约束限制

不涉及

取值范围

不涉及

默认取值

root。

password

String

参数解释

登录密码,若创建节点通过用户名密码方式,即使用该字段,则响应体中该字段作屏蔽展示。

约束限制

创建节点时password字段需要加盐加密,具体方法请参见创建节点时password字段加盐加密

取值范围

密码复杂度要求:

  • 长度为8-26位。

  • 密码至少必须包含大写字母、小写字母、数字和特殊字符(!@$%^-_=+[{}]:,./?)中的三种。

  • 密码不能包含用户名或用户名的逆序。

默认取值

不涉及

表11 Volume

参数

参数类型

描述

size

Integer

参数解释

磁盘大小,单位为GiB。

约束限制

不涉及

取值范围

  • 系统盘取值范围:40~1024

  • 第一块数据盘取值范围:20~32768(当缺省磁盘初始化配置管理参数storage时,数据盘取值范围:100-32768)

  • 其他数据盘取值范围:10~32768(当缺省磁盘初始化配置管理参数storage时,数据盘取值范围:100-32768)

默认取值

不涉及

volumetype

String

参数解释

磁盘类型,取值请参见创建云服务器 中“root_volume字段数据结构说明”。

约束限制

不涉及

取值范围

  • SAS:高IO,是指由SAS存储提供资源的磁盘类型。

  • SSD:超高IO,是指由SSD存储提供资源的磁盘类型。

  • SATA:普通IO,是指由SATA存储提供资源的磁盘类型。EVS已下线SATA磁盘,仅存量节点有此类型的磁盘。

  • ESSD:极速型SSD云硬盘,是指由极速型SSD存储提供资源的磁盘类型。

  • GPSSD:通用型SSD云硬盘,是指由通用型SSD存储提供资源的磁盘类型。

  • ESSD2:极速型SSD V2云硬盘,是指由极速型SSD V2存储提供资源的磁盘类型。

  • GPSSD2:通用型SSD V2云硬盘,是指由通用型SSD V2存储提供资源的磁盘类型。

说明:

了解不同磁盘类型的详细信息,链接请参见磁盘类型及性能介绍

默认取值

不涉及

iops

Integer

参数解释

给云硬盘配置iops。

约束限制

  • 购买GPSSD2、ESSD2类型的云硬盘时必填,其他类型不能设置。

  • 只支持按需计费。

取值范围

了解GPSSD2、ESSD2类型的iops大小范围,请参见云硬盘类型及性能介绍里面的云硬盘性能数据表

默认取值

不涉及

throughput

Integer

参数解释

给云硬盘配置吞吐量,单位是MiB/s。

约束限制

  • 购买GPSSD2类型云硬盘时必填,其他类型不能设置。

  • 只支持按需计费。

取值范围

了解GPSSD2类型的吞吐量大小范围,请参见云硬盘类型及性能介绍里面的云硬盘性能数据表

默认取值

不涉及

extendParam

Map<String,Object>

参数解释

磁盘扩展参数,取值请参见创建云服务器中“extendparam”参数的描述。

链接请参见创建磁盘的extendparam字段数据结构说明

约束限制

不涉及

cluster_id

String

参数解释

云服务器系统盘对应的存储池的ID。仅用作专属云集群,专属分布式存储DSS的存储池ID,即dssPoolID。

获取方法请参见获取单个专属分布式存储池详情中“表3 响应参数”的ID字段。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

cluster_type

String

参数解释

云服务器系统盘对应的磁盘存储类型。

约束限制

不涉及

取值范围

仅用作专属云集群,固定取值为dss。

默认取值

不涉及

hw:passthrough

Boolean

参数解释

  • 使用SDI规格创建虚拟机时请关注该参数,如果该参数值为true,说明创建的为SCSI类型的卷;

  • 节点池类型为ElasticBMS时,此参数必须填写为true;

  • 如存在节点规格涉及本地盘并同时使用云硬盘场景时,请设置磁盘初始化配置管理参数,配置参考:节点磁盘挂载

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

metadata

VolumeMetadata object

参数解释

云硬盘加密信息,仅在创建节点系统盘或数据盘需加密时须填写。

约束限制

不涉及

表12 VolumeMetadata

参数

参数类型

描述

__system__encrypted

String

参数解释

表示云硬盘加密功能的字段,'0'代表不加密,'1'代表加密。

约束限制

不涉及

取值范围

不涉及

默认取值

该字段不存在时,云硬盘默认为不加密。

__system__cmkid

String

参数解释

用户主密钥ID,是metadata中的表示加密功能的字段,与__system__encrypted配合使用。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

表13 Storage

参数

参数类型

描述

storageSelectors

Array of StorageSelectors objects

参数解释

磁盘选择,根据matchLabels和storageType对匹配的磁盘进行管理。磁盘匹配存在先后顺序,靠前的匹配规则优先匹配。

约束限制

不涉及

storageGroups

Array of StorageGroups objects

参数解释

由多个存储设备组成的存储组,用于各个存储空间的划分。

约束限制

不涉及

表14 StorageSelectors

参数

参数类型

描述

name

String

参数解释

selector的名字,作为storageGroup中selectorNames的索引。

约束限制

各个selector间的名字不能重复。

取值范围

不涉及

默认取值

不涉及

storageType

String

参数解释

存储类型。

约束限制

  • local存储类型不支持磁盘选择,所有本地盘将被组成一个VG,因此也仅允许只有一个local类型的storageSelector。

  • system存储类型不支持磁盘选择,选择系统盘作为系统组件存储磁盘。因此也仅允许只有一个system类型的storageSelector,且name必须为cceUse。

取值范围

当前仅支持evs(云硬盘)、local(本地盘)和system(系统盘)。

默认取值

不涉及

matchLabels

matchLabels object

参数解释

evs盘的匹配字段。

约束限制

storageType设置为system(系统盘)时,无需设置此字段。

取值范围

支持DataVolume中的size、volumeType、iops、throughput、metadataEncrypted、metadataCmkid、count字段。

默认取值

不涉及

表15 matchLabels

参数

参数类型

描述

size

String

参数解释

匹配的磁盘大小,不填则无磁盘大小限制。例如:100。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

volumeType

String

参数解释

云硬盘类型。

约束限制

不涉及

取值范围

目前支持SSD\GPSSD\SAS\ESSD\SATA等,不填则无云硬盘类型限制。

默认取值

不涉及

iops

String

参数解释

匹配的磁盘iops大小,不填则无磁盘iops大小限制。当需要选择GPSSD2或ESSD2类型磁盘时,配置iops来准确选择磁盘。例如:3000。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

throughput

String

参数解释

匹配的磁盘吞吐量大小,不填则无磁盘吞吐量大小限制。当需要选择GPSSD2类型磁盘时,配置throughput来准确选择磁盘。例如:125。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

metadataEncrypted

String

参数解释

磁盘加密标识符,0代表不加密,1代表加密,不填则无磁盘加密标识符限制。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

metadataCmkid

String

参数解释

加密磁盘的用户主密钥ID,长度为36字节的字符串,不填则无磁盘密钥ID限制。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

count

String

参数解释

磁盘选择个数,不填则选择所有此类磁盘。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

表16 StorageGroups

参数

参数类型

描述

name

String

参数解释

storageGroups的名字,作为虚拟存储组的名字,因此各个group名字不能重复。

约束限制

不涉及

取值范围

  • 当cceManaged=true时,name必须为:vgpaas。

  • 当数据盘作为临时存储卷时:name必须为:vg-everest-localvolume-ephemeral。

  • 当数据盘作为持久存储卷时:name必须为:vg-everest-localvolume-persistent。

默认取值

不涉及

cceManaged

Boolean

参数解释

k8s及runtime所属存储空间。有且仅有一个group被设置为true,不填默认false。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

selectorNames

Array of strings

参数解释

对应storageSelectors中的name,一个group可选择多个selector;但一个selector只能被一个group选择。

约束限制

系统组件无法分别存储于系统盘与数据盘中,因此选择selector的type为system时,group只能选择一个selector。

virtualSpaces

Array of VirtualSpace objects

参数解释

group中空间配置的详细管理。

约束限制

不涉及

表17 VirtualSpace

参数

参数类型

描述

name

String

参数解释

virtualSpace的名称,当前仅支持四种类型:share、kubernetes、runtime、user。

约束限制

不涉及

取值范围

  • kubernetes:k8s空间配置,需配置lvmConfig;

  • runtime:运行时空间配置,需配置runtimeConfig;

  • user:用户空间配置,需配置lvmConfig。

默认取值

不涉及

size

String

参数解释

virtualSpace的大小,仅支持整数百分比。例如:90%。

约束限制

不涉及

取值范围

该参数取值范围[10-90],一个group中所有virtualSpace的百分比之和不得超过100%

默认取值

不涉及

lvmConfig

LVMConfig object

参数解释

lvm配置管理,适用于share、kubernetes和user空间配置。

约束限制

一个virtualSpace仅支持一个config配置。

runtimeConfig

RuntimeConfig object

参数解释

runtime配置管理,适用于运行时空间配置。

约束限制

一个virtualSpace仅支持一个config配置。

表18 LVMConfig

参数

参数类型

描述

lvType

String

参数解释

LVM写入模式:linear、striped。linear:线性模式;striped:条带模式,使用多块磁盘组成条带模式,能够提升磁盘性能。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

path

String

参数解释

磁盘挂载路径,仅在用户配置中生效,支持包含:数字、大小写字母、点、中划线、下划线的绝对路径。

约束限制

挂载路径请填写业务目录路径,不可设置为空或根目录等操作系统关键路径。不可填写的操作系统关键路径如下:

/, /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/

取值范围

不涉及

默认取值

不涉及

表19 RuntimeConfig

参数

参数类型

描述

lvType

String

参数解释

LVM写入模式:linear、striped。linear:线性模式;striped:条带模式,使用多块磁盘组成条带模式,能够提升磁盘性能。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

表20 NodePublicIP

参数

参数类型

描述

ids

Array of strings

参数解释

已有的弹性IP的ID列表。

约束限制

  • 数量不得大于待创建节点数;

  • 若已配置ids参数,则无需配置count和eip参数。

count

Integer

参数解释

要动态创建的弹性IP个数。

约束限制

count参数与eip参数必须同时配置。

取值范围

不涉及

默认取值

不涉及

eip

NodeEIPSpec object

参数解释

弹性IP参数。

约束限制

创建节点池时不支持此参数

表21 NodeEIPSpec

参数

参数类型

描述

iptype

String

参数解释

弹性IP类型,取值请参见申请EIP接口中publicip.type说明。

链接请参见申请EIP

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

bandwidth

NodeBandwidth object

参数解释

弹性IP的带宽参数。

约束限制

不涉及

表22 NodeBandwidth

参数

参数类型

描述

chargemode

String

参数解释

带宽的计费类型。

说明:
  • 按带宽计费:按公网传输速率(单位为Mbps)计费。当您的带宽利用率高于10%时,建议优先选择按带宽计费。

  • 按流量计费:只允许在创建按需节点时指定,按公网传输的数据总量(单位为GB)计费。当您的带宽利用率低于10%时,建议优先选择按流量计费。

约束限制

不涉及

取值范围

  • 未传该字段,表示按带宽计费。

  • 字段值为空,表示按带宽计费。

  • 字段值为“traffic”,表示按流量计费。

  • 字段为其它值,会导致创建云服务器失败。

默认取值

不涉及

size

Integer

参数解释

带宽大小,取值请参见申请EIP接口中bandwidth.size说明。

链接请参见申请EIP

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

sharetype

String

参数解释

带宽的共享类型,共享类型枚举:PER,表示独享,目前仅支持独享。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

表23 NodeNicSpec

参数

参数类型

描述

primaryNic

NicSpec object

参数解释

主网卡的描述信息。

约束限制

不涉及

extNics

Array of NicSpec objects

参数解释

扩展网卡。

约束限制

创建节点池添加节点时不支持该参数。

表24 NicSpec

参数

参数类型

描述

subnetId

String

参数解释

网卡所在子网的网络ID。若节点池同时配置了subnetList,则节点池扩容子网以subnetList字段为准。

约束限制

  • 主网卡创建时若未指定subnetId,将使用集群子网;

  • 扩展网卡创建时必须指定subnetId。

取值范围

不涉及

默认取值

不涉及

fixedIps

Array of strings

参数解释

主网卡的IP将通过fixedIps指定,数量不得大于创建的节点数。

约束限制

fixedIps或ipBlock同时只能指定一个。扩展网卡不支持指定fiexdIps。

ipBlock

String

参数解释

主网卡的IP段的CIDR格式,创建的节点IP将属于该IP段内。

约束限制

fixedIps或ipBlock同时只能指定一个。

取值范围

不涉及

默认取值

不涉及

subnetList

Array of strings

参数解释

网卡所在子网的网络ID列表,支持节点池配置多个子网。

约束限制

最多支持配置20个子网。

表25 Taint

参数

参数类型

描述

key

String

参数解释

键。

约束限制

必须以字母或数字开头和结尾,可以包含字母、数字、连字符、下划线和点,最长63个字符。

取值范围

不涉及

默认取值

不涉及

value

String

参数解释

值。

约束限制

必须以字母或数字开头和结尾,可以包含字母、数字、连字符、下划线和点,最长63个字符。

取值范围

不涉及

默认取值

不涉及

effect

String

参数解释

作用效果。

约束限制

不涉及

取值范围

只可选NoSchedule,PreferNoSchedule或NoExecute。

默认取值

不涉及

表26 UserTag

参数

参数类型

描述

key

String

参数解释

云服务器标签的键。

约束限制

不得以"CCE-"或"__type_baremetal"开头。

取值范围

标签键只能包含大写字母.小写字母、数字和特殊字符(-_)以及Unicode字符,长度不超过36个字符。

默认取值

不涉及

value

String

参数解释

云服务器标签的值。

约束限制

不涉及

取值范围

标签值只能包含大写字母.小写字母、数字和特殊字符(-_)以及Unicode字符,长度不超过43个字符。

默认取值

不涉及

表27 Runtime

参数

参数类型

描述

name

String

参数解释

容器运行时。

约束限制

不涉及

取值范围

不涉及

默认取值

  • v1.25以下集群:默认为"docker";

  • v1.25及以上集群,随操作系统变化,默认的容器运行时不同;

  • 操作系统为EulerOS 2.5、EulerOS 2.8的节点默认为"docker",其余操作系统的节点默认为"containerd"。

表28 NodeExtendParam

参数

参数类型

描述

ecs:performancetype

String

参数解释

云服务器规格的分类。响应中会返回此字段。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

orderID

String

参数解释

订单ID。

约束限制

节点付费类型为自动付费包周期类型时,响应中会返回此字段(仅创建场景涉及)。

取值范围

不涉及

默认取值

不涉及

productID

String

参数解释

产品ID。

约束限制

节点付费类型为自动付费包周期类型时,响应中会返回此字段。

取值范围

不涉及

默认取值

不涉及

maxPods

Integer

参数解释

节点最大允许创建的实例数(Pod),该数量包含系统默认实例。

该设置的目的为防止节点因管理过多实例而负载过重,请根据您的业务需要进行设置。

节点可以创建多少个Pod,受多个参数影响,具体请参见节点可创建的最大Pod数量说明

约束限制

不涉及

取值范围

取值范围为16~256。

默认取值

不涉及

periodType

String

参数解释

订购周期类型。

约束限制

  • 作为请求参数,billingMode为1(包周期)或2(已废弃:自动付费包周期)时生效,且为必选。

  • 作为响应参数,仅在创建包周期节点时返回。

取值范围

  • month:月

  • year:年

默认取值

不涉及

periodNum

Integer

参数解释

订购周期数。

约束限制

  • 作为请求参数,billingMode为1(包周期)或2(已废弃:自动付费包周期)时生效,且为必选。

  • 作为响应参数,仅在创建包周期节点时返回。

取值范围

  • periodType=month(周期类型为月)时,取值为[1-9]。

  • periodType=year(周期类型为年)时,取值为[1-3]。

默认取值

不涉及

isAutoRenew

String

参数解释

是否自动续订。

约束限制

billingMode为1或2(已废弃)时生效,不填写此参数时默认不会自动续费。

取值范围

  • “true”:自动续订

  • “false”:不自动续订

默认取值

不涉及

isAutoPay

String

参数解释

下单订购后,是否自动从客户的账户中支付,而不需要客户手动去进行支付。

约束限制

billingMode为1或2(已废弃)时生效,billingMode为1时不填写此参数时默认不会自动扣款。(已废弃:billingMode为2时不填写此参数时默认会自动扣款)。

取值范围

  • “true”:是(自动扣款)

  • “false”:否(不自动扣款)

默认取值

不涉及

DockerLVMConfigOverride

String

参数解释

Docker数据盘配置项(已废弃,请使用storage字段)。默认配置示例如下:

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

默认配置在无VD类型磁盘时,会由于数据盘查找失败而出错,请根据真实盘符类型填写diskType。

约束限制

不涉及

取值范围

包含如下字段:

  • userLV(可选):用户空间的大小,示例格式:vgpaas/20%VG

  • userPath(可选):用户空间挂载路径,示例格式:/home/wqt-test

  • diskType:磁盘类型,目前只有evs、hdd和ssd三种格式

  • lvType:逻辑卷的类型,目前支持linear和striped两种,示例格式:striped

  • dockerThinpool:Docker盘的空间大小,示例格式:vgpaas/60%VG

  • kubernetesLV:Kubelet空间大小,示例格式:vgpaas/20%VG

默认取值

不涉及

dockerBaseSize

Integer

参数解释

节点上单容器的可用磁盘空间大小(已废弃,请优先使用containerBaseSize参数),单位G。

CCE节点容器运行时空间配置请参考数据盘空间分配说明

约束限制

  • Devicemapper模式下建议dockerBaseSize配置不超过80G,设置过大时可能会导致容器运行时初始化时间过长而启动失败,若对容器磁盘大小有特殊要求,可考虑使用挂载外部或本地存储方式代替。

  • dockerBaseSize设置仅在新版本集群的EulerOS/HCEOS2.0节点上生效。

取值范围

10-500。

默认取值

不配置该值或值为0时将使用默认值:

  • Devicemapper模式下默认值为10;

  • OverlayFS模式默认不限制单容器可用空间大小。

containerBaseSize

Integer

参数解释

节点上单容器的可用磁盘空间大小,单位G。

CCE节点容器运行时空间配置请参考数据盘空间分配说明

约束限制

  • Devicemapper模式下建议containerBaseSize配置不超过80G,设置过大时可能会导致容器运行时初始化时间过长而启动失败,若对容器磁盘大小有特殊要求,可考虑使用挂载外部或本地存储方式代替;Devicemapper模式在新版中仅有共池裸机使用,已逐步废弃。

  • containerBaseSize设置仅在新版本集群(v1.23.14-r0/v1.25.9-r0/v1.27.6-r0/v1.28.4-r0及以上)的EulerOS/HCEOS2.0节点上生效。

  • 更新节点池时,不支持更新此参数。

取值范围

10-500。

默认取值

不配置该值或值为0时将使用默认值:

  • Devicemapper模式下默认值为10;

  • OverlayFS模式默认不限制单容器可用空间大小。

publicKey

String

参数解释

节点的公钥。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

alpha.cce/preInstall

String

参数解释

安装前执行脚本。

输入的值需要经过Base64编码,方法如下:

echo -n "待编码内容" | base64

约束限制

安装前/后执行脚本统一计算字符,转码后的字符总数不能超过10240。

取值范围

不涉及

默认取值

不涉及

alpha.cce/postInstall

String

参数解释

安装后执行脚本。

输入的值需要经过Base64编码,方法如下:

echo -n "待编码内容" | base64

约束限制

安装前/后执行脚本统一计算字符,转码后的字符总数不能超过10240。

取值范围

不涉及

默认取值

不涉及

alpha.cce/NodeImageID

String

参数解释

如果创建裸金属节点,需要使用自定义镜像时用此参数。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

nicMultiqueue

String

参数解释

  • 弹性网卡队列数配置,默认配置示例如下:

"[{\"queue\":4}]"

包含如下字段:

  • queue: 弹性网卡队列数。

  • 当前支持可配置队列数以及弹性网卡数:{"1":128, "2":92, "4":92, "8":32, "16":16,"28":9}, 即1弹性网卡队列可绑定128张弹性网卡,2队列弹性网卡可绑定92张,以此类推。

  • 弹性网卡队列数越多,性能越强,但可绑定弹性网卡数越少,请根据您的需求进行配置(创建后不可修改)。

约束限制

仅在turbo集群的BMS节点时,该字段才可配置。

取值范围

不涉及

默认取值

不涉及

nicThreshold

String

参数解释

  • 弹性网卡预绑定比例配置,默认配置示例如下:

"0.3:0.6"
  • 第一位小数:预绑定低水位,弹性网卡预绑定的最低比例(最小预绑定弹性网卡数 = ⌊节点的总弹性网卡数 * 预绑定低水位⌋)

  • 第二位小数:预绑定高水位,弹性网卡预绑定的最高比例(最大预绑定弹性网卡数 = ⌊节点的总弹性网卡数 * 预绑定高水位⌋)

  • BMS节点上绑定的弹性网卡数:Pod正在使用的弹性网卡数 + 最小预绑定弹性网卡数 < BMS节点上绑定的弹性网卡数 < Pod正在使用的弹性网卡数 + 最大预绑定弹性网卡数

  • BMS节点上当预绑定弹性网卡数 < 最小预绑定弹性网卡数时:会绑定弹性网卡,使得预绑定弹性网卡数 = 最小预绑定弹性网卡数

  • BMS节点上当预绑定弹性网卡数 > 最大预绑定弹性网卡数时:会定时解绑弹性网卡(约2分钟一次),直到预绑定弹性网卡数 = 最大预绑定弹性网卡数

约束限制

  • 仅在turbo集群的BMS节点时,该字段才可配置。

  • 弹性网卡预绑定能加快工作负载的创建,但会占用IP,请根据您的需求进行配置。

取值范围

取值范围:[0.0, 1.0]; 一位小数; 低水位 <= 高水位

默认取值

不涉及

chargingMode

Integer

参数解释

节点的计费模式。已废弃,请使用NodeSpec中的billingMode字段。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

agency_name

String

参数解释

委托的名称。

委托是由租户管理员在统一身份认证服务(Identity and Access Management,IAM)上创建的,可以为CCE节点提供访问云服务器的临时凭证。

作为响应参数仅在创建节点传入时返回该字段。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

kubeReservedMem

Integer

参数解释

节点内存预留,Kubernetes相关组件预留值。随节点规格变动,具体请参见节点预留资源策略说明

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

systemReservedMem

Integer

参数解释

节点内存预留,系统组件预留值。随节点规格变动,具体请参见节点预留资源策略说明

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

init-node-password

String

参数解释

节点密码,作为响应参数时,固定展示星号。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

securityReinforcementType

String

参数解释

指定节点安全加固类型,当前仅支持HCE2.0镜像等保2.0三级安全加固。 等保加固会对身份鉴别、访问控制、安全审计、入侵防范、恶意代码防范进行检查并加固。详情请参见Huawei Cloud EulerOS 2.0等保2.0三级版镜像概述

若未指定此参数,则尝试用原有的值补全。如:原先HCE2.0镜像已配置安全加固,更新节点池时未指定此参数,则仍旧保持安全加固配置,若要取消,需显式指定参数值为"null"。

约束限制

不涉及

取值范围

  • 空值:表示不开启等保加固

  • cybersecurity:表示开启等保加固

    默认取值

    不涉及

表29 HostnameConfig

参数

参数类型

描述

type

String

参数解释

K8S节点名称配置类型, 默认为“privateIp”。

约束限制

  • 配置为cceNodeName的节点, 其节点名称、K8S节点名称以及虚机名称相同。节点名称不支持修改, 并且在ECS侧修改了虚机名称,同步云服务器时,不会将修改后的虚机名称同步到节点。

  • 配置为cceNodeName的节点,为了避免K8S节点名称冲突,系统会自动在节点名称后添加后缀,后缀的格式为中划线(-)+五位随机字符,随机字符的取值为[a-z0-9]。

取值范围

  • privateIp: 将节点私有IP作为K8S节点名称

  • cceNodeName: 将CCE节点名称作为K8S节点名称

默认取值

默认为“privateIp”。

表30 NodePoolNodeAutoscaling

参数

参数类型

描述

enable

Boolean

参数解释

是否开启自动扩缩容。

约束限制

不涉及

取值范围

  • false:不开启自动扩缩容

  • true:开启自动扩缩容

默认取值

false

minNodeCount

Integer

参数解释

若开启自动扩缩容,最小能缩容的节点个数。

约束限制

不涉及

取值范围

大于等于0,不可大于集群规格所允许的节点上限。

默认取值

0

maxNodeCount

Integer

参数解释

若开启自动扩缩容,最大能扩容的节点个数。

约束限制

不涉及

取值范围

大于等于 minNodeCount,且不超过集群规格对应的节点数量上限。

默认取值

0

scaleDownCooldownTime

Integer

参数解释

节点保留时间,单位为分钟,扩容出来的节点在这个时间内不会被缩掉。

约束限制

不涉及

取值范围

0-2147483646。

默认取值

0

priority

Integer

参数解释

节点池权重,更高的权重在扩容时拥有更高的优先级。

约束限制

不涉及

取值范围

不涉及

默认取值

0

表31 NodeManagement

参数

参数类型

描述

serverGroupReference

String

参数解释

云服务器组ID,指定后将绑定云服务器组,节点池中所有节点将创建在该云服务器组下。绑定云服务器组后节点池中的节点数量不允许超出云服务器组可添加的云服务器数量,否则将导致节点池无法扩容。

说明:
  • 绑定云服务器组后,云服务器将严格按照亲和策略分布,同时也会限制节点池中节点个数上限。由于ECS创建云服务器时本身具有一定反亲和能力,如果仅需云服务器分散的创建在不同主机上以提高业务的可靠性,又不希望节点个数受到云服务器组的限制,请勿绑定云服务器组。

  • 云服务组支持解绑,解绑后存量节点仍属于原云服务器组,新建节点将不再绑定云服务器组。 当节点池中不存在节点时支持绑定新的云服务器组或者切换绑定的云服务器组

约束限制

指定云服务器组时节点池中的节点数量不允许超出云服务器组的配额限制。

取值范围

  • 不指定或者指定空字符串:表示解绑云服务器组

  • 云服务器组ID:表示切换节点池绑定的云服务组

默认取值

不涉及

表32 SecurityID

参数

参数类型

描述

id

String

参数解释

安全组ID。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

表33 ExtensionScaleGroup

参数

参数类型

描述

metadata

ExtensionScaleGroupMetadata object

参数解释

扩容伸缩组的基本信息。

约束限制

不涉及

spec

ExtensionScaleGroupSpec object

参数解释

扩展伸缩组配置,承载区别于默认伸缩组的差异化配置。

约束限制

不涉及

表34 ExtensionScaleGroupMetadata

参数

参数类型

描述

uid

String

参数解释

扩展伸缩组的uuid,由系统自动生成。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

name

String

参数解释

扩展伸缩组的名称。

约束限制

不能为 default

取值范围

长度不能超过55个字符,只能包含数字和小写字母以及**-**。

默认取值

不涉及

表35 ExtensionScaleGroupSpec

参数

参数类型

描述

flavor

String

参数解释

节点的规格,CCE支持的节点规格请参考节点规格说明获取。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

az

String

参数解释

节点可用区。

约束限制

不涉及

取值范围

不涉及

默认取值

未指定或者为空则以默认伸缩组中配置为准。

capacityReservationSpecification

CapacityReservationSpecification object

参数解释

扩展伸缩组容量预留配置。

约束限制

不涉及

autoscaling

ScaleGroupAutoscaling object

参数解释

扩展伸缩组弹性伸缩配置。

约束限制

不涉及

表36 CapacityReservationSpecification

参数

参数类型

描述

id

String

参数解释

私有池id。

约束限制

preference为none时忽略该值。

取值范围

不涉及

默认取值

不涉及

preference

String

参数解释

私有池容量选项。

约束限制

为 none 时表示不指定容量预留,为 targeted 时表示指定容量预留,此时 id 不能为空。

取值范围

不涉及

默认取值

none

表37 ScaleGroupAutoscaling

参数

参数类型

描述

enable

Boolean

参数解释

伸缩组弹性扩缩容启用开关。

约束限制

不涉及

取值范围

  • false:不开启自动扩缩容

  • true:开启自动扩缩容

默认取值

false

extensionPriority

Integer

参数解释

伸缩组优先级,数值越大优先级越高。

约束限制

不涉及

取值范围

不涉及

默认取值

0

minNodeCount

Integer

参数解释

弹性伸缩时,伸缩组最少应保持的节点数量。

约束限制

不涉及

取值范围

大于等于0,不可大于集群规格所允许的节点上限。

默认取值

0

maxNodeCount

Integer

参数解释

弹性伸缩时,伸缩组最多可保持的节点数量。

约束限制

不涉及

取值范围

应大于等于 minNodeCount, 不可大于集群规格所允许的节点上限,不可大于节点池节点数量上限。

默认取值

0

表38 NodePoolStatus

参数

参数类型

描述

currentNode

Integer

参数解释

当前节点池中所有节点数量(不含删除中的节点)。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

creatingNode

Integer

参数解释

当前节点池中处于创建流程中的节点数量。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

deletingNode

Integer

参数解释

当前节点池中删除中的节点数量。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

configurationSyncedNodeCount

Integer

参数解释

当前节点池中已经同步了节点池配置参数的节点数量。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

phase

String

参数解释

节点池状态。

约束限制

不涉及

取值范围

  • 空值:可用(节点池当前节点数已达到预期,且无伸缩中的节点)

  • Synchronizing:伸缩中(节点池当前节点数未达到预期,且无伸缩中的节点)

  • Synchronized:伸缩等待中(节点池当前节点数未达到预期,或者存在伸缩中的节点)

  • SoldOut:节点池当前不可扩容(兼容字段,标记节点池资源售罄、资源配额不足等不可扩容状态)

说明:

上述节点池状态已废弃,仅兼容保留,不建议使用,替代感知方式如下:

  • 节点池扩缩状态:可通过currentNode/creatingNode/deletingNode节点状态统计信息,精确感知当前节点池扩缩状态。

  • 节点池可扩容状态:可通过conditions感知节点池详细状态,其中"Scalable"可替代SoldOut语义。

  • Deleting:删除中

  • Error:错误

默认取值

不涉及

jobId

String

参数解释

对节点池执行操作时的JobID。仅当节点池处于Deleting状态时才返回该字段。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

conditions

Array of NodePoolCondition objects

参数解释

节点池当前详细状态列表,详情参见Condition类型定义。

约束限制

不涉及

scaleGroupStatuses

Array of ScaleGroupStatus objects

参数解释

伸缩组当前详细状态信息,详情参见ScaleGroupStatus类型定义。

约束限制

不涉及

表39 ScaleGroupStatus

参数

参数类型

描述

name

String

参数解释

伸缩组名称。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

uid

String

参数解释

伸缩组uuid。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

creationTimestamp

String

参数解释

伸缩组创建时间。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

updateTimestamp

String

参数解释

伸缩组更新时间。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

phase

String

参数解释

伸缩组状态。

约束限制

不涉及

取值范围

  • 空值:可用(伸缩组当前节点数已达到预期,且无伸缩中的节点)

  • Synchronizing:伸缩中(伸缩组当前节点数未达到预期,且无伸缩中的节点)

  • Synchronized:伸缩等待中(伸缩组当前节点数未达到预期,或者存在伸缩中的节点)

  • SoldOut:伸缩组当前不可扩容(兼容字段,标记节点池资源售罄、资源配额不足等不可扩容状态)

说明:

上述伸缩组状态已废弃,仅兼容保留,不建议使用,替代感知方式如下:

  • 伸缩组扩缩状态:可通过desiredNodeCount/existingNodeCount/upcomingNodeCount节点状态统计信息,精确感知当前伸缩组扩缩状态。

  • 伸缩组可扩容状态:可通过conditions感知伸缩组详细状态,其中"Scalable"可替代SoldOut语义。

  • Deleting:删除中

  • Error:错误

默认取值

不涉及

desiredNodeCount

Integer

参数解释

伸缩组期望节点数。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

unpaidScaleNodeCount

Integer

参数解释

订单未支付节点个数。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

existingNodeCount

existingNodeCount object

参数解释

伸缩组存量节点统计信息。

约束限制

不涉及

upcomingNodeCount

upcomingNodeCount object

参数解释

伸缩组将要创建的节点统计信息。

约束限制

不涉及

scaleDownDisabledNodeCount

Integer

参数解释

伸缩组禁止缩容的节点数。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

conditions

Array of NodePoolCondition objects

参数解释

伸缩组当前详细状态列表,详情参见Condition类型定义。

约束限制

不涉及

表40 existingNodeCount

参数

参数类型

描述

postPaid

Integer

参数解释

按需计费节点个数。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

prePaid

Integer

参数解释

包年包月节点个数。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

total

Integer

参数解释

按需计费和包年包月节点总数。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

表41 upcomingNodeCount

参数

参数类型

描述

postPaid

Integer

参数解释

按需计费节点个数。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

prePaid

Integer

参数解释

包年包月节点个数。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

total

Integer

参数解释

按需计费和包年包月节点总数。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

表42 NodePoolCondition

参数

参数类型

描述

type

String

参数解释

Condition类型。

约束限制

不涉及

取值范围

  • "Scalable":节点池实际的可扩容状态,如果状态为"False"时则不会再次触发节点池扩容行为。

  • "QuotaInsufficient":节点池扩容依赖的配额不足,影响节点池可扩容状态。

  • "ResourceInsufficient":节点池扩容依赖的资源不足,影响节点池可扩容状态。

  • "UnexpectedError":节点池非预期扩容失败,影响节点池可扩容状态。

  • "LockedByOrder":包周期节点池被订单锁定,此时Reason为待支付订单ID。

  • "Error":节点池错误,通常由于删除失败触发。

默认取值

不涉及

status

String

参数解释

Condition当前状态。

约束限制

不涉及

取值范围

  • "True"

  • "False"

默认取值

不涉及

lastProbeTime

String

参数解释

上次状态检查时间。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

lastTransitTime

String

参数解释

上次状态变更时间。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

reason

String

参数解释

上次状态变更原因。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

message

String

参数解释

Condition详细描述。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

请求示例

响应示例

状态码: 200

表示获取集群下所有节点池成功。

{
  "kind" : "List",
  "apiVersion" : "v3",
  "items" : [ {
    "kind" : "NodePool",
    "apiVersion" : "v3",
    "metadata" : {
      "name" : "az1.dc1#s1.large#EulerOS 2.2",
      "uid" : "az1.dc1#s1.large#EulerOS 2.2"
    },
    "spec" : {
      "nodeTemplate" : {
        "flavor" : "s1.large",
        "az" : "az1.dc1",
        "os" : "EulerOS 2.2",
        "login" : {
          "sshKey" : "KeyPair-001"
        },
        "rootVolume" : { },
        "publicIP" : {
          "eip" : {
            "bandwidth" : { }
          }
        },
        "billingMode" : 0
      },
      "autoscaling" : {
        "enable" : true,
        "maxNodeCount" : 50
      }
    },
    "status" : {
      "currentNode" : 1
    }
  } ]
}

SDK代码示例

SDK代码示例如下。

 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 ListNodePoolsSolution {

    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();
        ListNodePoolsRequest request = new ListNodePoolsRequest();
        request.withClusterId("{cluster_id}");
        try {
            ListNodePoolsResponse response = client.listNodePools(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 = ListNodePoolsRequest()
        request.cluster_id = "{cluster_id}"
        response = client.list_node_pools(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.ListNodePoolsRequest{}
	request.ClusterId = "{cluster_id}"
	response, err := client.ListNodePools(request)
	if err == nil {
        fmt.Printf("%+v\n", response)
    } else {
        fmt.Println(err)
    }
}

更多编程语言的SDK代码示例,请参见API Explorer的代码示例页签,可生成自动对应的SDK代码示例。

状态码

状态码

描述

200

表示获取集群下所有节点池成功。

错误码

请参见错误码

相关文档