• 沒有找到結果。

错误码

5.3 节点管理

5.3.1 创建节点

功能介绍

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

说明

● 若无集群,请先创建集群。

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

接口约束

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

调试

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

URI

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

5-132 路径参数

参数 是否必选 参数类型 描述

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

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

正则匹配:^[0-9a-z]{8}-[0-9a- z]{4}-[0-9a-z]{4}-[0-9a-z]{4}-[0-9a-z]{12}$

5-133 Query 参数

参数 是否必选 参数类型 描述

nodepoolScal

eUp 否 String 标明是否为nodepool下发的请

求。若不为

“NodepoolScaleUp”将自动更 新对应节点池的实例数

枚举值:

● NodepoolScaleUp

API 参考 5 API

请求参数

5-134 请求 Header 参数

参数 是否必选 参数类型 描述

Content-Type 是 String 消息体的类型(格式)

缺省值:application/json X-Auth-Token 是 String "调用接口的认证方式分为

Token和AK/SK两种,如果您使 用的Token方式,此参数为必 填,请填写Token的值,获取方 式请参见获取token。"

最大长度:16384

5-135 请求 Body 参数

参数 是否必选 参数类型 描述

kind 是 String API类型,固定值“Node”,该

值不可修改。

缺省值:Node

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

缺省值:v3 metadata 否 NodeMetada

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

spec 是 NodeSpec

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

API 参考 5 API

5-136 NodeMetadata

labels 否 Map<String,St

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

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

示例:"labels": { "key" : "value"

}

annotations 否 Map<String,St

ring> CCE自有节点注解,非

Kubernetes原生annotations,

格式为key/value键值对。

示例:"annotations": { "key1" : "value1", "key2" : "value2"

}

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

5-137 NodeSpec

参数 是否必选 参数类型 描述

flavor 是 String 节点的规格,CCE支持的节点规

格请参考节点规格说明获取。 2.3、EulerOS 2.5、EulerOS 2.8。

● 若在创建节点时指定了 extendParam中的alpha.cce/

NodeImageID参数,可以不 填写此参数。

login 是 Login object 节点的登录方式 rootVolume 是 Volume

object 节点的磁盘信息 dataVolumes 是 Array of

Volume

参数 是否必选 参数类型 描述 storage 否 Storage

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

该参数配置逻辑较为复杂,详细

publicIP 否 NodePublicIP

object 节点的弹性公网IP nodeNicSpec 否 NodeNicSpec

object 节点的网卡信息

count 否 Integer 批量创建时节点的个数,必须为

大于等于1,小于等于最大限额 的正整数。作用于节点池时该项 可以不填写。

billingMode 否 Integer 节点的计费模式:取值为 0(按 需付费)、1(包周期)、2

(已废弃:自动付费包周期)

taints 否 Array of Taint

objects 支持给创建出来的节点加Taints 来设置反亲和性,taints配置不

● Effect:只可选 NoSchedule,

PreferNoSchedule或 NoExecute。

示例:"taints": [{

"key": "status", "value": "unavailable", "effect": "NoSchedule"

}, { "key": "looks", "value": "bad", "effect": "NoSchedule"

}]

API 参考 5 API

参数 是否必选 参数类型 描述 k8sTags 否 Map<String,St

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

示例:"k8sTags": { "key": "value"

}

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

正则匹配:^[0-9a-z]{8}-[0-9a- z]{4}-[0-9a-z]{4}-[0-9a-z]{4}-[0-9a-z]{12}$

dedicatedHost

Id 否 String 指定DeH主机的ID,将节点调度

到自己的DeH上。\n>创建节点 池添加节点时不支持该参数。

userTags 否 Array of UserTag

runtime 否 Runtime

object 容器运行时,默认为

“docker”。

extendParam 否 NodeExtendP

aram object 创建节点时的扩展参数。

5-138 Login

参数 是否必选 参数类型 描述

sshKey 否 String 选择密钥对方式登录时的密钥对

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

API 参考 5 API

参数 是否必选 参数类型 描述 userPassword 否 UserPasswor

d object 选择密码方式登录时的帐号密码

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

5-139 UserPassword

参数 是否必选 参数类型 描述

username 否 String 登录帐号,默认为“root”

缺省值:root

password 是 String 登录密码,取值请参见创建云服 务器中adminPass参数的描

5-140 Volume

参数 是否必选 参数类型 描述

size 是 Integer 磁盘大小,单位为GB

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

● 数据盘取值范围:

100~32768

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

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

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

● SATA:普通IO,是指由 SATA存储提供资源的磁盘类 型。EVS已下线SATA磁盘,

仅存量节点有此类型的磁 盘。

extendParam 否 Map<String,O

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

API 参考 5 API

参数 是否必选 参数类型 描述

cluster_id 否 String 云服务器系统盘对应的存储池的 ID。仅用作专属云集群,专属分

cluster_type 否 String 云服务器系统盘对应的磁盘存储 类型。仅用作专属云集群,固定

● 节点池类型为ElasticBMS 时,此参数必须填写为true metadata 否 VolumeMeta

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

5-141 VolumeMetadata

参数 是否必选 参数类型 描述

__system__en

crypted 否 String 表示云硬盘加密功能的字段,

'0'代表不加密,'1'代表加密。

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

__system__cm

kid 否 String 用户主密钥ID,是metadata中

的表示加密功能的字段,与 __system__encrypted配合使 用。

5-142 Storage

参数 是否必选 参数类型 描述

storageSelect

ors 是 Array of

StorageSelec tors objects

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

靠前的匹配规则优先匹配。

API 参考 5 API

参数 是否必选 参数类型 描述 storageGroup

s 是 Array of

StorageGrou ps objects

由多个存储设备组成的存储组,

用于各个存储空间的划分。

5-143 StorageSelectors

参数 是否必选 参数类型 描述

name 是 String selector的名字,作为

storageGroup中selectorNames 的索引,因此各个selector间的 名字不能重复。

storageType 是 String 存储类型,当前仅支持evs(云 硬盘)或local(本地盘);

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

matchLabels 否 matchLabels

object evs盘的匹配字段,支持 DataVolume中的size、

volumeType、

metadataEncrypted、

metadataCmkid、count五个字 段。

5-144 matchLabels

参数 是否必选 参数类型 描述

size 否 String 匹配的磁盘大小,不填则无磁盘

大小限制。例如:100.

volumeType 否 String 云硬盘类型,目前支持SSD

\GPSSD\SAS三种。

metadataEncr

ypted 否 String 磁盘加密标识符,0代表不加

密,1代表加密。

5-145 StorageGroups

参数 是否必选 参数类型 描述

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

cceManaged 否 Boolean k8s及runtime所属存储空间。

有且仅有一个group被设置为 true,不填默认false。

selectorName

s 是 Array of

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

virtualSpaces 是 Array of VirtualSpace objects

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

5-146 VirtualSpace

参数 是否必选 参数类型 描述

name 是 String virtualSpace的名称,当前仅支 持三种类型:kubernetes、 size 是 String virtualSpace的大小,仅支持整

数百分比。例如:90%。 需要 注意:一个group中所有 virtualSpace的百分比之和不得 超过100%

lvmConfig 否 LVMConfig

object lvm配置管理,适用于

kubernetes和user空间配置。

需要注意:一个virtualSpace仅 支持一个config配置。

runtimeConfi

g 否 RuntimeConf

ig object runtime配置管理,适用于运行 时空间配置。 需要注意:一个 virtualSpace仅支持一个config 配置。

API 参考 5 API

5-147 LVMConfig

参数 是否必选 参数类型 描述

lvType 是 String LVM写入模式:linear、

striped。linear:线性模式;

striped:条带模式,使用多块磁 盘组成条带模式,能够提升磁盘 性能。

path 否 String 磁盘挂载路径。仅在用户配置中

生效。支持包含:数字、大小写 字母、点、中划线、下划线的绝 对路径。

5-148 RuntimeConfig

参数 是否必选 参数类型 描述

lvType 是 String LVM写入模式:linear、

striped。linear:线性模式;

striped:条带模式,使用多块磁 盘组成条带模式,能够提升磁盘 性能。

5-149 NodePublicIP

参数 是否必选 参数类型 描述

ids 否 Array of

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

说明若已配置ids参数,则无需配置

count和eip参数

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

说明count参数与eip参数必须同时配

置。

eip 否 NodeEIPSpec

object 弹性IP参数

API 参考 5 API

5-150 NodeEIPSpec

参数 是否必选 参数类型 描述

iptype 否 String 弹性IP类型,取值请参见“创建

云服务器

说明eip字段数据结构说明”表中

“iptype”参数的描述。

bandwidth 否 NodeBandwi

dth object 弹性IP的带宽参数

5-151 NodeBandwidth

参数 是否必选 参数类型 描述

chargemode 否 String 带宽的计费类型:

● 未传该字段,表示按带宽计 费。 - 字段值为空,表示按 带宽计费。 - 字段值为

“traffic”,表示按流量计 费。 - 字段为其它值,会导 致创建云服务器失败。

说明

● 按带宽计费:按公网传输速率

(单位为Mbps)计费。当您的 带宽利用率高于10%时,建议 优先选择按带宽计费。

说明

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

size 否 Integer 带宽大小,取值请参见“创建云

服务器 > bandwidth字段数据结 构说明”表中“size”参数的描 述。

sharetype 否 String 带宽的共享类型,取值请参见

“创建云服务器

说明bandwidth字段数据结构说明”表 中“sharetype”参数的描述。

API 参考 5 API

5-152 NodeNicSpec

参数 是否必选 参数类型 描述

primaryNic 否 NicSpec

object 主网卡的描述信息。

extNics 否 Array of NicSpec objects

扩展网卡

5-153 NicSpec

参数 是否必选 参数类型 描述

subnetId 否 String 网卡所在子网的ID。

正则匹配:^[0-9a-z]{8}-[0-9a- z]{4}-[0-9a-z]{4}-[0-9a-z]{4}-[0-9a-z]{12}$

fixedIps 否 Array of

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

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

5-154 Taint

参数 是否必选 参数类型 描述

key 否 String 键

value 否 String 值

最大长度:63

effect 否 String 作用效果

枚举值:

● NoSchedule

● PreferNoSchedule

● NoExecute

API 参考 5 API

5-155 UserTag

参数 是否必选 参数类型 描述

key 否 String 云服务器标签的键。不得以

"CCE-"或"__type_baremetal"开 头

最小长度:1 最大长度:36

正则匹配:^[a-zA-Z0-9_

\u4e00-\u9fa5-]{1,36}$

value 否 String 云服务器标签的值

最小长度:0 最大长度:43

正则匹配:^[a-zA-Z0-9_

\u4e00-\u9fa5.-]{0,43}$

5-156 Runtime

5-156 Runtime

相關文件