文档首页 > > API参考> API> 集群管理> 创建节点

创建节点

分享
更新时间:2020/10/26 GMT+08:00

功能介绍

该API用于在指定集群下创建节点。

若无集群,请先创建集群。 集群管理的URL格式为:https://Endpoint/uri。其中uri为资源路径,也即API访问的路径。

接口约束

仅支持创建KVM虚拟化类型的节点,非KVM虚拟化类型的节点创建后无法正常使用。

调试

您可以在API Explorer中调试该接口。

URI

POST /api/v3/projects/{project_id}/clusters/{cluster_id}/nodes

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

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

cluster_id

String

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

表2 Query参数

参数

是否必选

参数类型

描述

nodepoolScaleUp

String

标明是否为nodepool下发的请求。若不为“NodepoolScaleUp”将自动更新对应节点池的实例数

枚举值:

  • NodepoolScaleUp

请求参数

表3 请求Header参数

参数

是否必选

参数类型

描述

Content-Type

String

消息体的类型(格式)

枚举值:

  • application/json;charset=utf-8

  • application/json

X-Auth-Token

String

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

最大长度:16384

表4 请求Body参数

参数

是否必选

参数类型

描述

kind

String

API类型,固定值“Node”,该值不可修改。

缺省值:Node

apiVersion

String

API版本,固定值“v3”,该值不可修改。

缺省值:v3

metadata

NodeMetadata object

metadata是节点对象的元数据定义,是集合类的元素类型,包含一组由不同名称定义的属性。

spec

V3NodeSpec object

spec是集合类的元素类型,用户对需要管理的节点对象进行详细描述的主体部分都在spec中给出。系统通过spec的描述来创建或更新对象。

表5 NodeMetadata

参数

是否必选

参数类型

描述

name

String

节点名称

说明:

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

最小长度:1

最大长度:56

uid

String

资源唯一标识,创建成功后自动生成,填写无效

labels

Map<String,String>

CCE自有节点标签,非Kubernetes原生labels。

标签可用于选择对象并查找满足某些条件的对象集合,格式为key/value键值对。

示例:

"labels": {
  "key" : "value"
}

annotations

Map<String,String>

CCE自有节点注解,非Kubernetes原生annotations,格式为key/value键值对。

示例:

"annotations": {
  "key1" : "value1",
  "key2" : "value2"
}
说明:

Annotations不用于标识和选择对象。Annotations中的元数据可以是small 或large,structured 或unstructured,并且可以包括标签不允许使用的字符。

creationTimestamp

String

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

updateTimestamp

String

更新时间,创建成功后自动生成,填写无效

表6 V3NodeSpec

参数

是否必选

参数类型

描述

flavor

String

节点的规格

最小长度:1

最大长度:50

az

String

节点所在的可用区名. 底层实际存在,位于该用户物理可用区组之内的可用区

最大长度:200

os

String

节点的操作系统类型。

  • 对于虚拟机节点,可以配置为“EulerOS”、“CentOS”、“Debian”、“Ubuntu”。默认为"EulerOS"。

说明:

系统会根据集群版本自动选择支持的系统版本。当前集群版本不支持该系统类型,则会报错。

  • 对于自动付费包周期的裸金属节点,只支持EulerOS 2.3、EulerOS 2.5、EulerOS 2.8。

login

Login object

节点的登录方式

rootVolume

V3RootVolume object

节点的系统盘参数

dataVolumes

Array of V3DataVolume objects

节点的数据盘参数(目前已支持通过控制台为CCE节点添加第二块数据盘)。

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

publicIP

V3NodePublicIP object

节点的公网IP地址。

nodeNicSpec

NodeNicSpec object

节点网卡的描述信息。

count

Integer

批量创建时节点的个数,必须为大于等于1,小于等于最大限额的正整数。作用于节点池时该项允许为0

billingMode

Integer

节点的计费模式:取值为 0(按需付费)、2(自动付费包周期)

自动付费包周期支持普通用户token。

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"
}]

k8sTags

Map<String,String>

格式为key/value键值对。键值对个数不超过20条。

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

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

示例:

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

ecsGroupId

String

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

dedicatedHostId

String

指定DeH主机的ID,将节点调度到自己的DeH上。\n>创建节点池添加节点时不支持该参数。

offloadNode

Boolean

是否CCE Turbo集群节点

说明:

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

userTags

Array of UserTag objects

云服务器标签,键必须唯一,CCE支持的最大用户自定义标签数量依region而定,自定义标签数上限最少为5个。

extendParam

Map<String,String>

创建节点时的扩展参数,可选参数如下:

  • chargingMode: 节点的计费模式。按需计费,取值为“0”,若不填,则默认为“0”。

  • ecs:performancetype:云服务器规格的分类。裸金属节点无该字段。

  • orderID: 订单ID,节点付费类型为自动付费包周期类型时必选。

  • productID: 产品ID。

  • maxPods: 节点最大允许创建的实例数(Pod),该数量包含系统默认实例,取值范围为16~256。 该设置的目的为防止节点因管理过多实例而负载过重,请根据您的业务需要进行设置。

  • periodType: 订购周期类型,取值范围:

    • month:月

    • year:年

    说明:

    billingMode为2(自动付费包周期)时生效,且为必选。

  • periodNum: 订购周期数,取值范围:

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

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

    说明:

    billingMode为2时生效,且为必选。

  • isAutoRenew: 是否自动续订

    • “true”:自动续订

    • “false”:不自动续订

    说明:

    billingMode为2时生效,且为必选。

  • DockerLVMConfigOverride: Docker数据盘配置项。默认配置示例如下:

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

    包含如下字段:

    • 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: Device mapper 模式下,节点上 docker 单容器的可用磁盘空间大小

  • init-node-password: 节点初始密码

  • offloadNode: 是否为CCE Turbo集群节点

  • publicKey: 节点的公钥。

  • alpha.cce/preInstall: 安装前执行脚本

    说明:

    输入的值需要经过Base64编码,方法为echo -n "待编码内容" | base64。

  • alpha.cce/postInstall: 安装后执行脚本

    说明:

    输入的值需要经过Base64编码,方法为echo -n "待编码内容" | base64。

  • alpha.cce/NodeImageID: 如果创建裸金属节点,需要使用自定义镜像时用此参数。

表7 Login

参数

是否必选

参数类型

描述

sshKey

String

选择密钥对方式登录时的密钥对名称。密钥对和密码登录方式二者必选其一。

userPassword

UserPassword object

选择密码方式登录时的帐号密码信息,之后可通过此账号密码登录节点。密钥对和密码登录方式二者必选其一。

表8 UserPassword

参数

是否必选

参数类型

描述

username

String

登录帐号,默认为“root”

缺省值:root

password

String

登录密码,取值请参见创建云服务器adminPass参数的描述。若创建节点通过用户名密码方式,即使用该字段,则响应体中该字段作屏蔽展示。创建节点时password字段需要加盐加密,具体方法请参见创建节点时password字段加盐加密

表9 V3RootVolume

参数

是否必选

参数类型

描述

size

Integer

磁盘大小,单位为GB

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

  • 数据盘取值范围:100~32768

volumetype

String

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

  • SATA:普通IO,是指由SATA存储提供资源的磁盘类型。

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

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

extendParam

Object

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

cluster_id

String

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

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

cluster_type

String

云服务器系统盘对应的磁盘存储类型。仅用作专属云集群,固定取值为dss。

hw:passthrough

Boolean

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

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

表10 V3DataVolume

参数

是否必选

参数类型

描述

size

Integer

磁盘大小,单位为GB

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

  • 数据盘取值范围:100~32768

volumetype

String

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

  • SATA:普通IO,是指由SATA存储提供资源的磁盘类型。

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

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

extendParam

Object

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

cluster_id

String

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

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

cluster_type

String

云服务器系统盘对应的磁盘存储类型。仅用作专属云集群,固定取值为dss。

hw:passthrough

Boolean

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

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

metadata

DataVolumeMetadata object

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

表11 DataVolumeMetadata

参数

是否必选

参数类型

描述

__system__encrypted

String

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

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

__system__cmkid

String

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

表12 V3NodePublicIP

参数

是否必选

参数类型

描述

ids

Array of strings

已有的弹性IP的ID列表。数量不得大于待创建节点数

说明:

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

count

Integer

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

说明:

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

eip

V3NodeEIPSpec object

弹性IP参数

表13 V3NodeEIPSpec

参数

是否必选

参数类型

描述

iptype

String

弹性IP类型,取值请参见“创建云服务器 > eip字段数据结构说明”表中“iptype”参数的描述。

bandwidth

V3NodeBandwidth object

弹性IP的带宽参数

表14 V3NodeBandwidth

参数

是否必选

参数类型

描述

chargemode

String

带宽的计费类型:

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

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

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

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

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

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

size

String

带宽大小,取值请参见“创建云服务器 > bandwidth字段数据结构说明”表中“size”参数的描述。

sharetype

String

带宽的共享类型,取值请参见“创建云服务器 > bandwidth字段数据结构说明”表中“sharetype”参数的描述。

表15 NodeNicSpec

参数

是否必选

参数类型

描述

primaryNic

NicSpec object

主网卡的描述信息。

extNics

Array of NicSpec objects

扩展网卡

表16 NicSpec

参数

是否必选

参数类型

描述

subnetId

String

网卡所在子网的ID。

fixedIps

Array of strings

主网卡的IP将通过fixedIps指定,数量不得大于创建的节点数。fixedIps或ipBlock同时只能指定一个。

ipBlock

String

IP段的CIDR格式,创建的节点IP将属于该IP段内。fixedIps或ipBlock同时只能指定一个。

表17 Taint

参数

是否必选

参数类型

描述

key

String

value

String

最大长度:63

effect

String

作用效果

枚举值:

  • NoSchedule

  • PreferNoSchedule

  • NoExecute

表18 UserTag

参数

是否必选

参数类型

描述

key

String

云服务器标签的键。不得以"CCE-"或"__type_baremetal"开头

最小长度:1

最大长度:36

value

String

云服务器标签的值

最小长度:0

最大长度:43

响应参数

状态码为 201 时:

表19 响应Body参数

参数

参数类型

描述

kind

String

API类型,固定值“Node”,该值不可修改。

缺省值:Node

apiVersion

String

API版本,固定值“v3”,该值不可修改。

缺省值:v3

metadata

NodeMetadata object

metadata是节点对象的元数据定义,是集合类的元素类型,包含一组由不同名称定义的属性。

spec

V3NodeSpec object

spec是集合类的元素类型,用户对需要管理的节点对象进行详细描述的主体部分都在spec中给出。系统通过spec的描述来创建或更新对象。

status

V3NdoeStatus object

节点状态,动态记录,创建或修改时指定无意义.

表20 NodeMetadata

参数

参数类型

描述

name

String

节点名称

说明:

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

最小长度:1

最大长度:56

uid

String

资源唯一标识,创建成功后自动生成,填写无效

labels

Map<String,String>

CCE自有节点标签,非Kubernetes原生labels。

标签可用于选择对象并查找满足某些条件的对象集合,格式为key/value键值对。

示例:

"labels": {
  "key" : "value"
}

annotations

Map<String,String>

CCE自有节点注解,非Kubernetes原生annotations,格式为key/value键值对。

示例:

"annotations": {
  "key1" : "value1",
  "key2" : "value2"
}
说明:

Annotations不用于标识和选择对象。Annotations中的元数据可以是small 或large,structured 或unstructured,并且可以包括标签不允许使用的字符。

creationTimestamp

String

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

updateTimestamp

String

更新时间,创建成功后自动生成,填写无效

表21 V3NodeSpec

参数

参数类型

描述

flavor

String

节点的规格

最小长度:1

最大长度:50

az

String

节点所在的可用区名. 底层实际存在,位于该用户物理可用区组之内的可用区

最大长度:200

os

String

节点的操作系统类型。

  • 对于虚拟机节点,可以配置为“EulerOS”、“CentOS”、“Debian”、“Ubuntu”。默认为"EulerOS"。

说明:

系统会根据集群版本自动选择支持的系统版本。当前集群版本不支持该系统类型,则会报错。

  • 对于自动付费包周期的裸金属节点,只支持EulerOS 2.3、EulerOS 2.5、EulerOS 2.8。

login

Login object

节点的登录方式

rootVolume

V3RootVolume object

节点的系统盘参数

dataVolumes

Array of V3DataVolume objects

节点的数据盘参数(目前已支持通过控制台为CCE节点添加第二块数据盘)。

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

publicIP

V3NodePublicIP object

节点的公网IP地址。

nodeNicSpec

NodeNicSpec object

节点网卡的描述信息。

count

Integer

批量创建时节点的个数,必须为大于等于1,小于等于最大限额的正整数。作用于节点池时该项允许为0

billingMode

Integer

节点的计费模式:取值为 0(按需付费)、2(自动付费包周期)

自动付费包周期支持普通用户token。

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"
}]

k8sTags

Map<String,String>

格式为key/value键值对。键值对个数不超过20条。

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

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

示例:

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

ecsGroupId

String

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

dedicatedHostId

String

指定DeH主机的ID,将节点调度到自己的DeH上。\n>创建节点池添加节点时不支持该参数。

offloadNode

Boolean

是否CCE Turbo集群节点

说明:

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

userTags

Array of UserTag objects

云服务器标签,键必须唯一,CCE支持的最大用户自定义标签数量依region而定,自定义标签数上限最少为5个。

extendParam

Map<String,String>

创建节点时的扩展参数,可选参数如下:

  • chargingMode: 节点的计费模式。按需计费,取值为“0”,若不填,则默认为“0”。

  • ecs:performancetype:云服务器规格的分类。裸金属节点无该字段。

  • orderID: 订单ID,节点付费类型为自动付费包周期类型时必选。

  • productID: 产品ID。

  • maxPods: 节点最大允许创建的实例数(Pod),该数量包含系统默认实例,取值范围为16~256。 该设置的目的为防止节点因管理过多实例而负载过重,请根据您的业务需要进行设置。

  • periodType: 订购周期类型,取值范围:

    • month:月

    • year:年

    说明:

    billingMode为2(自动付费包周期)时生效,且为必选。

  • periodNum: 订购周期数,取值范围:

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

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

    说明:

    billingMode为2时生效,且为必选。

  • isAutoRenew: 是否自动续订

    • “true”:自动续订

    • “false”:不自动续订

    说明:

    billingMode为2时生效,且为必选。

  • DockerLVMConfigOverride: Docker数据盘配置项。默认配置示例如下:

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

    包含如下字段:

    • 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: Device mapper 模式下,节点上 docker 单容器的可用磁盘空间大小

  • init-node-password: 节点初始密码

  • offloadNode: 是否为CCE Turbo集群节点

  • publicKey: 节点的公钥。

  • alpha.cce/preInstall: 安装前执行脚本

    说明:

    输入的值需要经过Base64编码,方法为echo -n "待编码内容" | base64。

  • alpha.cce/postInstall: 安装后执行脚本

    说明:

    输入的值需要经过Base64编码,方法为echo -n "待编码内容" | base64。

  • alpha.cce/NodeImageID: 如果创建裸金属节点,需要使用自定义镜像时用此参数。

表22 Login

参数

参数类型

描述

sshKey

String

选择密钥对方式登录时的密钥对名称。密钥对和密码登录方式二者必选其一。

userPassword

UserPassword object

选择密码方式登录时的帐号密码信息,之后可通过此账号密码登录节点。密钥对和密码登录方式二者必选其一。

表23 UserPassword

参数

参数类型

描述

username

String

登录帐号,默认为“root”

缺省值:root

password

String

登录密码,取值请参见创建云服务器adminPass参数的描述。若创建节点通过用户名密码方式,即使用该字段,则响应体中该字段作屏蔽展示。创建节点时password字段需要加盐加密,具体方法请参见创建节点时password字段加盐加密

表24 V3RootVolume

参数

参数类型

描述

size

Integer

磁盘大小,单位为GB

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

  • 数据盘取值范围:100~32768

volumetype

String

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

  • SATA:普通IO,是指由SATA存储提供资源的磁盘类型。

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

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

extendParam

Object

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

cluster_id

String

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

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

cluster_type

String

云服务器系统盘对应的磁盘存储类型。仅用作专属云集群,固定取值为dss。

hw:passthrough

Boolean

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

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

表25 V3DataVolume

参数

参数类型

描述

size

Integer

磁盘大小,单位为GB

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

  • 数据盘取值范围:100~32768

volumetype

String

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

  • SATA:普通IO,是指由SATA存储提供资源的磁盘类型。

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

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

extendParam

Object

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

cluster_id

String

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

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

cluster_type

String

云服务器系统盘对应的磁盘存储类型。仅用作专属云集群,固定取值为dss。

hw:passthrough

Boolean

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

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

metadata

DataVolumeMetadata object

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

表26 DataVolumeMetadata

参数

参数类型

描述

__system__encrypted

String

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

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

__system__cmkid

String

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

表27 V3NodePublicIP

参数

参数类型

描述

ids

Array of strings

已有的弹性IP的ID列表。数量不得大于待创建节点数

说明:

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

count

Integer

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

说明:

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

eip

V3NodeEIPSpec object

弹性IP参数

表28 V3NodeEIPSpec

参数

参数类型

描述

iptype

String

弹性IP类型,取值请参见“创建云服务器 > eip字段数据结构说明”表中“iptype”参数的描述。

bandwidth

V3NodeBandwidth object

弹性IP的带宽参数

表29 V3NodeBandwidth

参数

参数类型

描述

chargemode

String

带宽的计费类型:

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

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

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

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

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

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

size

String

带宽大小,取值请参见“创建云服务器 > bandwidth字段数据结构说明”表中“size”参数的描述。

sharetype

String

带宽的共享类型,取值请参见“创建云服务器 > bandwidth字段数据结构说明”表中“sharetype”参数的描述。

表30 NodeNicSpec

参数

参数类型

描述

primaryNic

NicSpec object

主网卡的描述信息。

extNics

Array of NicSpec objects

扩展网卡

表31 NicSpec

参数

参数类型

描述

subnetId

String

网卡所在子网的ID。

fixedIps

Array of strings

主网卡的IP将通过fixedIps指定,数量不得大于创建的节点数。fixedIps或ipBlock同时只能指定一个。

ipBlock

String

IP段的CIDR格式,创建的节点IP将属于该IP段内。fixedIps或ipBlock同时只能指定一个。

表32 Taint

参数

参数类型

描述

key

String

value

String

最大长度:63

effect

String

作用效果

枚举值:

  • NoSchedule

  • PreferNoSchedule

  • NoExecute

表33 UserTag

参数

参数类型

描述

key

String

云服务器标签的键。不得以"CCE-"或"__type_baremetal"开头

最小长度:1

最大长度:36

value

String

云服务器标签的值

最小长度:0

最大长度:43

表34 V3NdoeStatus

参数

参数类型

描述

phase

String

节点状态。

枚举值:

  • Build

  • Installing

  • Installed

  • ShutDown

  • Upgrading

  • Active

  • Abnormal

  • Deleting

  • Error

jobID

String

创建或删除时的任务ID。

serverId

String

底层云服务器或裸金属节点ID。

privateIP

String

节点主网卡私有网段IP地址。

publicIP

String

节点弹性公网IP地址。

deleteStatus

DeleteStatus object

删除资源时表示资源删除状态

表35 DeleteStatus

参数

参数类型

描述

previous_total

String

集群删除时已经存在的集群资源记录总数

current_total

String

基于当前集群资源记录信息,生成实际最新资源记录总数

updated

String

集群删除时更新的资源记录总数

added

String

集群删除时更新的资源记录总数

deleted

String

集群删除时删除的资源记录总数

请求示例

{
  "kind" : "Node",
  "apiVersion" : "v3",
  "metadata" : {
    "name" : "myhost",
    "labels" : {
      "foo" : "bar"
    },
    "annotations" : {
      "annotation1" : "abc"
    }
  },
  "spec" : {
    "flavor" : "s1.medium",
    "az" : "az1.dc1",
    "login" : {
      "sshKey" : "myKeypair"
    },
    "rootVolume" : {
      "size" : 40,
      "volumetype" : "SATA"
    },
    "dataVolumes" : [ {
      "size" : 100,
      "volumetype" : "SATA"
    } ],
    "publicIP" : {
      "count" : 2,
      "eip" : {
        "iptype" : "5_bgp",
        "bandwidth" : {
          "chargemode" : "traffic",
          "size" : 10,
          "sharetype" : "PER"
        }
      }
    },
    "count" : 2
  }
}

响应示例

状态码为 201 时:

表示在指定集群下创建节点的作业下发成功。

{
  "kind" : "Node",
  "apiVersion" : "v3",
  "metadata" : {
    "name" : "myhost",
    "labels" : {
      "foo" : "bar"
    },
    "annotations" : {
      "annotation1" : "abc"
    }
  },
  "spec" : {
    "flavor" : "s1.medium",
    "az" : "az1.dc1",
    "os" : "EulerOS 2.2",
    "login" : {
      "sshKey" : "myKeypair",
      "userPassword" : { }
    },
    "rootVolume" : {
      "volumetype" : "SATA",
      "size" : 40
    },
    "dataVolumes" : [ {
      "volumetype" : "SATA",
      "size" : 100
    } ],
    "publicIP" : {
      "count" : 2,
      "eip" : {
        "iptype" : "5_bgp",
        "bandwidth" : {
          "size" : 10,
          "sharetype" : "PER",
          "chargemode" : "traffic"
        }
      }
    },
    "count" : 2,
    "billingMode" : 0,
    "extendParam" : {
      "chargingMode" : 0,
      "ecs:performancetype" : "normal",
      "orderID" : "",
      "productID" : ""
    }
  },
  "status" : {
    "jobID" : "2ec9b78d-9368-46f3-8f29-d1a95622a568"
  }
}

状态码

状态码

描述

201

表示在指定集群下创建节点的作业下发成功。

错误码

请参见错误码

分享:

    相关文档

    相关产品

文档是否有解决您的问题?

提交成功!非常感谢您的反馈,我们会继续努力做到更好!
反馈提交失败,请稍后再试!

*必选

请至少选择或填写一项反馈信息

字符长度不能超过200

提交反馈 取消

如您有其它疑问,您也可以通过华为云社区问答频道来与我们联系探讨

智能客服提问云社区提问