创建扩展资源组
接口功能介绍
创建扩展资源组,并向资源组中添加新节点或者纳管已有节点
接口约束
无
URI
POST /v4/cwai/group/create-paas
路径参数
无
Query参数
无
请求参数
请求头header参数
参数 | 是否必填 | 参数类型 | 说明 | 示例值 | 下级对象 |
---|---|---|---|---|---|
apiType | 是 | string | 接口调用方式,通过openapi调用需要传openapi | openapi | |
regionID | 是 | String | 区域的唯一ID | xxx-xxx-yyyzzz |
请求体body参数
参数 | 是否必填 | 参数类型 | 说明 | 示例值 | 下级对象 |
---|---|---|---|---|---|
regionID | 是 | String | 区域唯一ID | 81f7728662dd11ec547210155d307d5b | |
regionName | 是 | String | 区域名称 | neimeng | |
azName | 是 | String | 可用区名称 | az1 | |
azDisplayName | 是 | String | 可用区展示名称 | 演示区1 | |
resourceGroupName | 是 | String | 资源组名称,满足以下规则:长度1到20位,支持中英文、数字、下划线(_),不能以下划线为开头 | test-resource-group | |
comment | 否 | String | 资源组描述 | ||
vpcID | 是 | String | VPC唯一ID | vpc-omaaojibt | |
vpcName | 是 | String | VPC名称 | vpc-cwai | |
securityGroupID | 是 | String | 管理节点的安全组ID | sg-d54cca02 | |
ecsSubnetID | 是 | String | 管理节点的子网ID | subnet-3ejv9rk | |
elbCycleType | 是 | String | 弹性负载均衡订购周期类型,取值范围:[MONTH=按月,YEAR=按年] | MONTH | |
elbCycleCount | 是 | Integer | 弹性负载均衡订购时长 | 6 | |
onDemand | 是 | Boolean | 资源组内节点是否按需创建 | true | |
nodeNum | 是 | Integer | 资源组节点总数 | 10 | |
gpuManufacturer | 是 | String | 资源组内节点GPU厂商,取值范围:[Huawei=华为,Nvidia=英伟达] | Nvidia | |
architecture | 是 | String | 资源组架构,取值范围:[arm,x86] | x86 | |
maxScale | 否 | Integer | 资源组规模最大值 | 125 | |
minScale | 否 | Integer | 资源组规模最小值 | 1 | |
nodes | 是 | Array of Objects | 创建的资源组节点,每个对象代表一种规格的节点 | node |
表node
参数 | 是否必填 | 参数类型 | 说明 | 示例值 | 下级对象 |
---|---|---|---|---|---|
isNewNode | 是 | Boolean | 取值范围:[true=创建新节点,false=纳管已有节点] | true | |
password | 否 | String | 节点root用户的密码,除IAAS资源组纳管已有节点外必填,满足以下规则:长度在8到30个字符,必须包含大写字母、小写字母和(一个数字或者特殊字符),特殊符号可选:()`~!@#$%^&*_-+=|{}[]:;'<>,.?/\且不能以斜线号(/)开头。 | ||
nodeType | 是 | String | 节点类型,取值:[EBM=物理机节点,ECS=云主机节点] | EBM | |
deviceType | 否 | String | 新增物理机节点必填,套餐类型 | s2.x2large | |
flavorID | 否 | String | 新增云主机节点必填,云主机规格ID | c83e67a6-ae8d-8ee4-f88b-f401db759682 | |
instanceName | 是 | String | 节点名称,满足以下规则:长度2到28位,可以为字母数字和中划线,首字符不能为中划线和数字,不能以中划线结尾,也不能仅使用数字 | my-node | |
instanceUUID | 否 | String | 纳管已有节点必填,已有节点的实例ID | ss-e2tjjtijrib1g9xxhzpjfq5yfvwk | |
systemVolumeType | 否 | String | 新GPU云主机节点系统盘类型,取值范围:[SATA=普通IO,SAS=高IO,SSD=超高IO,SSD-genric=通用型SSD,AST-SSD=极速型SSD],若不填默认为SSD | SSD | |
systemVolumeSize | 否 | Integer | 新GPU云主机节点系统盘大小,单位为GiB,取值范围:[40, 32768],若不填默认为100 | 100 | |
smartNicExist | 否 | Boolean | 新增物理机节点必填,物理机是否有智能网卡 | true | |
subnetID | 否 | String | 创建新节点必填,创建新节点创建时使用的子网ID | subnet-4bfjkxlw | |
securityGroupID | 否 | String | 创建新节点时,如果新节点套餐smartNicExist为true则必填,创建新节点创建时使用的安全组ID | sg-lnu4n7tnnp | |
onDemand | 是 | Boolean | 购买方式,取值范围:[true=按需,false=按周期] | true | |
cycleType | 否 | String | 新节点订购周期类型,取值范围:[MONTH=按月,YEAR=按年],注:cycleType与cycleCount一起填写;按量付费(即onDemand为true)时,无需填写该参数(填写无效) | YEAR | |
cycleCount | 否 | Integer | 新节点订购时长,该参数需要与cycleType一同使用,注:最长订购周期为60个月(5年);cycleType与cycleCount一起填写;按量付费(即onDemand为true)时,无需填写该参数(填写无效) | 6 | |
orderCount | 否 | Integer | 创建新节点必填,购买数量,每个规格一次下单取值范围:[1, 50] | 1 | |
imageUUID | 是 | String | 节点操作系统镜像ID | im-xevpi6apqieg3bixmogofyref9qm | |
imageName | 是 | String | 节点操作系统镜像名称 | CentOS | |
hostname | 是 | String | 纳管已有节点必填,已存在节点的host名称 | test1.instance.host | |
privateIP | 否 | String | 纳管已有节点必填,已有节点内网IP | 192.168.5.10 | |
deviceDetail | 否 | Object | 设备信息 | deviceDetail |
表deviceDetail
参数 | 是否必填 | 参数类型 | 说明 | 示例值 | 下级对象 |
---|---|---|---|---|---|
cpuAmount | 否 | Integer | 单个cpu核数 | 8 | |
gpuAmount | 否 | Integer | GPU数目 | 1 | |
cpuTotalAmount | 否 | Integer | 逻辑cpu总量 | 768 | |
memSum | 否 | Integer | 内存大小总量(G) | 128 | |
cpuSockets | 否 | Integer | 物理cpu数量 | 2 | |
cpuThreadAmount | 是 | Integer | 单个cpu核超线程数量 | 2 |
响应参数
参数 | 是否必填 | 参数类型 | 说明 | 示例值 | 下级对象 |
---|---|---|---|---|---|
statusCode | 是 | Integer | 请求成功(800)或者失败(900) | 800 | |
errorCode | 否 | String | 错误代码 | Cwai.Api.xxxx | |
message | 否 | String | 错误信息的英文描述 | Invalid Request | |
returnObj | 是 | Object | 返回创建资源组信息 | returnObj |
表returnObj
参数 | 是否必填 | 参数类型 | 说明 | 示例值 | 下级对象 |
---|---|---|---|---|---|
resourceGroupID | 是 | String | 资源组唯一ID | d220cf63-278d-406d-a0bd-fcaf6da7e7fd |
请求示例
POST https://cwai-global.ctapi.ctyun.cn/v4/cwai/group/create-paas
Content-Type:application/json
regionID:81f7728662dd11ec810800155d307d5b
apiType:openapi
请求体body
{
"resourceGroupName": "a100-ecs-paas",
"regionID": "81f7728662dd11ec810800155d307d5b",
"isK8s": true,
"regionName": "内蒙8",
"azName": "az3",
"azDisplayName": "演示3",
"vpcID": "vpc-dyjq7y2fse",
"vpcName": "vpc-yunxiao28",
"securityGroupID": "sg-lnu4n7tnnp",
"gpuManufacturer": "Nvidia",
"architecture": "x86",
"nodeNum": 1,
"comment": "测试资源组",
"onDemand": false,
"ecsSubnetID": "subnet-ymhmithjv6",
"elbCycleType": "MONTH",
"elbCycleCount": 1,
"maxScale": 100,
"minScale": 1,
"nodes": [
{
"nodeType": "ECS",
"password": "7jfQ9aSkTM6vAYTIopQpmg==",
"instanceName": "gpu-a100-02",
"instanceUUID": "b44bcb3d-25f3-60d6-11cc-26943ce1e2d2",
"isNewNode": false,
"hostname": "gpu-a100-02",
"instanceStatus": "RUNNING",
"subnetID": "subnet-ymhmithjv6",
"cycleType": "YEAR",
"cycleCount": 1,
"orderCount": 1,
"onDemand": false,
"deviceType": "p8a.6xlarge.4",
"flavorID": "c83e67a6-ae8d-8ee4-f88b-f401db759682",
"imageUUID": "ec56599d-86f1-4ec2-9acb-cc5b7d0af9f4",
"imageName": "CentOS-7.9-x86_64-FSTest",
"smartNicExist": false,
"privateIP": "192.168.45.16",
"deviceDetail": {
"cpuAmount": 24,
"gpuAmount":1,
"cpuTotalAmount": 96,
"memSum": 98304,
"cpuSockets": 2,
"cpuThreadAmount": 2
}
}
]
}
响应示例
HTTP/1.1 200 OK
Content-Type:application/json
{
"statusCode": 800,
"returnObj": {
"resourceGroupID": "d220cf63-278d-406d-a0bd-fcaf6da7e7fd"
}
}
错误参数返回示例
HTTP/1.1 200 OK
Content-Type:application/json
{
"statusCode": 900,
"errorCode": "Cwai.Api.BadRequest",
"message": "***",
}
内部服务错误返回示例
TTP/1.1 200 OK
Content-Type:application/json
{
"statusCode": 900,
"errorCode": "Cwai.Api.InternalServerError",
"message": "***",
}
状态码
状态码 | 描述 |
---|---|
200 | 表示请求成功 |
错误码
错误码 | 描述 |
---|---|
Cwai.Api.BadRequest | 错误请求 |
Cwai.Api.NotFound | 资源不存在 |
Cwai.Api.StatusUnauthorized | 状态未授权 |
Cwai.Api.InternalServerError | 内部错误 |