批量创建节点-BatchCreateNodes
功能介绍
批量创建节点。适用于以下场景:用户需要创建独立的节点时,可通过此接口创建。
节点不隶属于任何超节点。
支持批量创建。包周期创建返回订单ID,可通过订单ID在CBC控制台查看订单详情。按需创建无CBC订单号,响应不返回order_id,仅返回batch_id。
调试
您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。
授权信息
账号根用户具备所有API的调用权限,如果使用账号下的IAM用户调用当前API,该IAM用户需具备如下身份策略权限,更多的权限说明请参见权限和授权项。
| 授权项 | 访问级别 | 资源类型(*为必须) | 条件键 | 别名 | 依赖的授权项 |
|---|---|---|---|---|---|
| aics:node:create | Write | node * | - | - |
|
| - |
URI
POST /v2/{project_id}/nodes
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| project_id | 是 | String | 参数解释: 项目ID,获取方法请参见获取项目ID。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
请求参数
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| X-Auth-Token | 否 | String | 参数解释: 用户Token,通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
| X-Client-Token | 否 | String | 参数解释: 保证请求幂等性的标识,携带相同标识的重复请求返回相同结果。 约束限制: 有效期8小时。 取值范围: UUID格式,[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}。 默认取值: 不涉及。 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| count | 是 | Integer | 参数解释: 创建节点的数量。 约束限制: 单次最多创建50个。 取值范围: 1-50。 默认取值: 不涉及。 |
| min_count | 否 | Integer | 参数解释: 要求最少成功的节点数量。当成功数量少于该值时,HPS会回退所有已创建的资源。 约束限制: 不能超过count的值。 取值范围: 1-count。 默认取值: 1。 |
| node_type | 是 | String | 参数解释: 节点规格。 约束限制: 需要该规格保证可售卖。 取值范围: 长度1-64,只能由英文字母、数字及"_"、"-"、"."组成。可通过查询节点规格列表获取。 默认取值: 不涉及。 |
| image_id | 是 | String | 参数解释: 节点镜像ID。 约束限制: 不涉及。 取值范围: UUID格式,可通过镜像服务控制台获取。 默认取值: 不涉及。 |
| keypair_name | 否 | String | 参数解释: 节点登录密钥对名称。 约束限制: 与admin_password二选一。 取值范围: 长度1-64,只能由英文字母、数字及"_"、"-"、"."组成。可通过密钥对管理控制台获取。 默认取值: 不涉及。 |
| admin_password | 否 | String | 参数解释: 节点登录密码。 约束限制: 与keypair_name二选一,且admin_password存在时,不能设置user_data。 密码复杂度要求:8-26位,至少包含大写字母、小写字母、数字和特殊字符中的三种。 不能包含用户名或倒序的用户名(root)。 取值范围: 长度为8-26。 默认取值: 不涉及。 |
| name | 是 | String | 参数解释: 节点名称。批量创建时系统自动添加序号后缀。 约束限制: 同一租户下名称不可重复。 取值范围: 长度1-58(预留6字符给批量序号后缀),只能由英文字母、数字及"_"、"-"、"."组成。 默认取值: 不涉及。 |
| cluster_id | 是 | String | 参数解释: 集群唯一标识UUID。创建的节点将归属于该集群。 约束限制: 不涉及。 取值范围: UUID格式。可通过查询集群列表接口获取。 默认取值: 不涉及。 |
| network_interfaces | 是 | Array of NodeNetworkInterfaceOption objects | 参数解释: 子网网卡信息,主网卡为数组索引为0的子网。 约束限制: 创建时网卡数量上限为3个。所有网卡需归属同一个VPC。 取值范围: 网卡数量为1-3。 默认取值: 不涉及。 |
| root_volume | 是 | NodeRootVolume object | 参数解释: 系统盘信息。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
| data_volume | 否 | Array of NodeDataVolume objects | 参数解释: 数据盘信息。 约束限制: 创建时数据盘数量上限为8个。 取值范围: 数据盘数量为0-8。 默认取值: 不涉及。 |
| market_options | 是 | NodeMarketOptions object | 参数解释: 计费信息。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
| user_data | 否 | String | 参数解释: 节点初始化配置数据。注入的数据为需要base64编码后的内容。 约束限制: 必须base64转码,转码后长度不大于40k。 取值范围: 长度为0-40960。 默认取值: 不涉及。 |
| tags | 否 | Array of TagKv objects | 参数解释: 租户标签。 约束限制: 不涉及。 取值范围: 标签数量为0-20。 默认取值: 不涉及。 |
| metadata | 否 | Array of Metadata objects | 参数解释: 节点元数据。 约束限制: 不允许传入重复key、黑名单中的key或以_sys_开头的key。 取值范围: 元数据数量为0-5。 默认取值: 不涉及。 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| ipv6_enable | 否 | Boolean | 参数解释: 是否开启IPv6。 约束限制: 不涉及。 取值范围: 默认取值: false。 |
| security_groups | 否 | Array of strings | 参数解释: 安全组ID列表。 约束限制: 不涉及。 取值范围: 安全组数量为0-20。可通过VPC安全组控制台获取。 默认取值: 不涉及。 |
| subnet_id | 是 | String | 参数解释: 子网ID。 约束限制: 所有的subnet_id需要归属同一个VPC。 取值范围: UUID格式。可通过VPC子网控制台获取。 默认取值: 不涉及。 |
| uboe_enable | 否 | Boolean | 参数解释: 是否使能UBoE。如果为true,节点将创建并挂载UBoE高速port。 约束限制: 第一个interface(主网卡)无法使能UBoE。 取值范围: 默认取值: false。 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| size | 是 | Integer | 参数解释: 系统盘大小,单位GiB。 约束限制: 不涉及。 取值范围: 1-1024。 默认取值: 不涉及。 |
| type | 是 | String | 参数解释: 系统盘类型。 约束限制: 支持的磁盘类型列表。 取值范围: SSD、ESSD、GPSSD、SAS、SATA等。 默认取值: 不涉及。 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| size | 是 | Integer | 参数解释: 数据盘大小,单位GiB。 约束限制: 不涉及。 取值范围: 10-32768。 默认取值: 不涉及。 |
| type | 是 | String | 参数解释: 数据盘类型。 约束限制: 支持的磁盘类型列表。 取值范围: SSD、ESSD、GPSSD、SAS、SATA等。 默认取值: 不涉及。 |
| count | 否 | Integer | 参数解释: 数据盘数量。 约束限制: 不涉及。 取值范围: 1-8。 默认取值: 1。 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| charging_mode | 是 | String | 参数解释: 付费类型。 约束限制: 不涉及。 取值范围: 默认取值: prePaid。 |
| is_auto_pay | 否 | Boolean | 参数解释: 是否自动支付。 约束限制: 不涉及。 取值范围: 默认取值: false。 |
| is_auto_renew | 否 | Boolean | 参数解释: 是否自动续费。 约束限制: 不涉及。 取值范围: 默认取值: false。 |
| period_num | 否 | Integer | 参数解释: 订购周期数量。 约束限制: 按订购周期类型限制: - 包月(period_type=MONTH):1~9 - 包年(period_type=YEAR):1~5 取值范围: 包月:1~9;包年:1~5。 默认取值: 不涉及。 |
| period_type | 否 | String | 参数解释: 订购周期类型。 约束限制: 不涉及。 取值范围: 默认取值: 不涉及。 |
| cloudservice_console_url | 否 | String | 参数解释: CBC传递的云服务控制台URL地址。 约束限制: 仅CBC付费完成后,需要跳转对应console界面场景使用。 取值范围: 长度为1-1024。 默认取值: 不涉及。 |
| promotion_info | 否 | String | 参数解释: 折扣信息。 约束限制: 不涉及。 取值范围: 长度为1-64。 默认取值: 不涉及。 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| key | 是 | String | 参数解释: 标签键。 约束限制: 不能以_sys_开头;首尾不能为空白字符。 取值范围: 最大128个Unicode字符。只能由大小写字母、数字、中文、空格及"_"、"-"、"."、":"、"/"、"="、"+"、"@"组成。 默认取值: 不涉及。 |
| value | 否 | String | 参数解释: 标签值。 约束限制: 创建/更新标签时必填,可为空字符串(""),但不能为 null 或缺省; 删除标签时可不传(删除只需 key)。 取值范围: 最大255个Unicode字符。只能由大小写字母、数字、中文、空格及"_"、"-"、"."、":"、"/"、"="、"+"、"@"、"&"组成。 默认取值: 不涉及。 |
响应参数
状态码:202
| 参数 | 参数类型 | 描述 |
|---|---|---|
| order_id | String | 参数解释: 订单ID。包周期(prePaid)创建时返回CBC订单号;按需(postPaid)无CBC订单号,不返回该字段。 取值范围: 不涉及。 |
| batch_id | String | 参数解释: 批次ID。 取值范围: UUID格式。 |
请求示例
批量创建节点请求示例。使用场景:用户需要批量创建独立节点时,通过此接口创建包周期节点。
POST https://{endpoint}/v2/0605767a3300d5762fb7c0186d9e1779/nodes
{
"count" : 2,
"node_type" : "physical.o2.large",
"image_id" : "1a2b3c4d-5e6f-7a8b-9c0d-1e2f3a4b5c6d",
"name" : "server-node",
"keypair_name" : "my-keypair",
"network_interfaces" : [ {
"subnet_id" : "b1c2d3e4-f5a6-7b8c-9d0e-1f2a3b4c5d6e"
} ],
"root_volume" : {
"size" : 120,
"type" : "SSD"
},
"data_volume" : [ {
"size" : 200,
"type" : "SSD",
"count" : 1
} ],
"market_options" : {
"charging_mode" : "prePaid",
"is_auto_pay" : true,
"is_auto_renew" : false,
"period_num" : 1,
"period_type" : "MONTH"
}
} 响应示例
状态码:202
{
"order_id" : "CS2607021154PGP6U",
"batch_id" : "a1b2c3d4-e5f6-7a8b-9c0d-1e2f3a4b5c6d"
} 状态码
| 状态码 | 描述 |
|---|---|
| 202 | 成功提交创建节点任务。 |
错误码
请参见错误码。