创建伸缩组
接口描述
创建伸缩组的接口。
请求结构
Method: Post
Url: /v1/group
请求参数
Body
参数名 |
类型 |
是否必需 |
参数位置 |
描述 |
groupName |
String |
是 |
RequestBody参数 |
伸缩组名称 |
zoneInfo |
List<ZoneInfo > |
是 |
RequestBody参数 |
伸缩组所在可用区 |
config |
GroupConfig |
是 |
RequestBody参数 |
伸缩组边界配置 |
keypairId |
String |
否 |
RequestBody参数 |
创建实例时使用的密钥对 ID |
keypairName |
String |
否 |
RequestBody参数 |
创建实例时使用的密钥对名称 |
blb |
List<BlbInfo> |
否 |
RequestBody参数 |
伸缩组绑定BLB,可绑定多个 |
rds |
List |
否 |
RequestBody参数 |
伸缩组绑定RDS,可绑定多个 |
scs |
List |
否 |
RequestBody参数 |
伸缩组绑定SCS,可绑定多个 |
healthCheck |
HealthCheckConfig |
否 |
RequestBody参数 |
健康检查相关配置 |
expansionStrategy |
String |
否 |
RequestBody参数 |
伸缩组扩容时策略,单可用区时默认为Priority;Priority - 在单可用区优先创建,Balanced - 在所有可用区均衡创建 |
shrinkageStrategy |
String |
否 |
RequestBody参数 |
伸缩组缩容时策略;Earlier - 删除先创建实例,Later - 删除后创建实例 |
assignTagInfo |
AssignTagInfo |
是 |
伸缩组关联标签 |
伸缩组关联标签 |
nodes |
List<NodeInfo> |
是 |
RequestBody参数 |
伸缩组扩容时节点配置 |
eip |
EipInfo |
否 |
RequestBody参数 |
伸缩组绑定EIP配置 |
billing |
BillingInfo |
否 |
RequestBody参数 |
伸缩组Billing,后付费-post,抢占式-bidding |
cmdConfig |
CmdConfig |
是 |
RequestBody参数 |
扩缩容脚本配置 |
bccNameConfig |
BccNameConfig |
否 |
RequestBody参数 |
创建 bcc 名称相关配置 |
ZoneInfo
参数名 |
类型 |
是否必需 |
参数位置 |
描述 |
zone |
String |
是 |
RequestBody参数 |
可用区 |
subnetId |
String |
是 |
RequestBody参数 |
子网ID |
subnetUuid |
String |
否 |
RequestBody参数 |
子网UUID |
subnetName |
String |
否 |
RequestBody参数 |
子网名称 |
subnetType |
String |
否 |
RequestBody参数 |
子网类型 |
GroupConfig
参数名 |
类型 |
是否必需 |
参数位置 |
描述 |
minNodeNum |
int |
是 |
RequestBody参数 |
最小节点数量 |
maxNodeNum |
int |
是 |
RequestBody参数 |
最大节点数量 |
cooldownInSec |
int |
是 |
RequestBody参数 |
冷却时间 |
expectNum |
int |
是 |
RequestBody参数 |
期望节点数,不设置需要填写-1 |
BlbInfo
参数名 |
类型 |
是否必需 |
参数位置 |
描述 |
blbId |
String |
否 |
RequestBody参数 |
BLB实例ID |
blbName |
String |
否 |
RequestBody参数 |
BLB实例名称 |
blbType |
String |
否 |
RequestBody参数 |
blbType类型:Blb-普通型BLB,AppBLb-应用型BLB,Ipv6Blb-ipv6型BLB |
sgIds |
List |
否 |
RequestBody参数 |
当blb类型为应用型BLB时,服务器组必填,可选多个。其他类型BLB不需要填写该值。 |
EipInfo
参数名 |
类型 |
是否必需 |
参数位置 |
描述 |
ifBindEip |
Boolean |
否 |
RequestBody参数 |
是否绑定EIP |
bandwidthInMbps |
int |
否 |
RequestBody参数 |
EIP带宽 |
eipProductType |
String |
否 |
RequestBody参数 |
EIP产品类型 |
purchaseType |
String |
否 |
RequestBody参数 |
购买类型 |
NodeInfo
参数名 |
类型 |
是否必需 |
参数位置 |
描述 |
spec |
String |
否 |
RequestBody参数 |
套餐规格 |
cpuCount |
int |
是 |
RequestBody参数 |
CPU数量 |
memoryCapacityInGB |
int |
是 |
RequestBody参数 |
磁盘容量 |
sysDiskType |
String |
是 |
RequestBody参数 |
系统盘类型 |
sysDiskInGB |
int |
是 |
RequestBody参数 |
系统盘大小 |
bidModel |
String |
否 |
RequestBody参数 |
抢占式实例释放策略:市场价释放-market,自定义释放价格-custom |
bidPrice |
String |
否 |
RequestBody参数 |
自定义释放时,价格值 |
ephemeralDisks |
List<EphemeralDisk> |
否 |
RequestBody参数 |
本地盘信息 |
instanceType |
String |
是 |
RequestBody参数 |
实例类型 |
gpuCount |
int |
否 |
RequestBody参数 |
gpu数量 |
gpuCard |
String |
否 |
RequestBody参数 |
gpu卡属性 |
fpgaCard |
String |
否 |
RequestBody参数 |
fpga卡属性 |
fpgaCount |
int |
否 |
RequestBody参数 |
fpga卡数量 |
containsFpga |
Boolean |
否 |
RequestBody参数 |
是否包含fpga卡 |
imageId |
String |
是 |
RequestBody参数 |
实例镜像ID |
imageName |
String |
否 |
RequestBody参数 |
实例镜像名称 |
imageType |
String |
否 |
RequestBody参数 |
实例镜像类型 |
kunlunCard |
int |
否 |
RequestBody参数 |
昆仑卡属性 |
kunlunCount |
int |
否 |
RequestBody参数 |
昆仑卡数量 |
osType |
String |
否 |
RequestBody参数 |
操作系统类型 |
osName |
String |
否 |
RequestBody参数 |
操作系统名称 |
osVersion |
String |
否 |
RequestBody参数 |
操作系统版本 |
osArch |
String |
否 |
RequestBody参数 |
|
securityGroupId |
String |
是 |
RequestBody参数 |
安全组ID |
securityGroupName |
String |
否 |
RequestBody参数 |
安全组名称 |
totalCount |
int |
否 |
RequestBody参数 |
总数量 |
aspId |
String |
否 |
RequestBody参数 |
子网类型 |
cds |
List<CdsInfo> |
否 |
RequestBody参数 |
本地存储信息 |
zoneSubnet |
String |
是 |
RequestBody参数 |
zone subnet 信息json, 对应类为List. 格式:[{"zone": "zoneA","subnetId": "subnetA"},...] |
userData |
String |
否 |
RequestBody参数 |
用户高级配置能力 |
priorities |
int |
是 |
RequestBody参数 |
模板顺序 |
templateId |
String |
否 |
RequestBody参数 |
所属模板的ID |
EphemeralDisk
参数名 |
类型 |
是否必需 |
参数位置 |
描述 |
storageType |
String |
否 |
RequestBody参数 |
本地盘类型 |
sizeInGB |
int |
否 |
RequestBody参数 |
本地盘大小 |
CdsInfo
参数名 |
类型 |
是否必需 |
参数位置 |
描述 |
volumeType |
String |
否 |
RequestBody参数 |
磁盘类型 |
sizeInGB |
int |
否 |
RequestBody参数 |
磁盘大小 |
snapshotId |
String |
否 |
RequestBody参数 |
磁盘快照ID |
snapshotName |
String |
否 |
RequestBody参数 |
磁盘快照名称 |
HealthCheckConfig
参数名 |
类型 |
是否必需 |
参数位置 |
描述 |
healthCheckInterval |
String |
否 |
RequestBody参数 |
健康检查间隔 |
graceTime |
int |
否 |
RequestBody参数 |
健康检查时间 |
AssignTagInfo
参数名 |
类型 |
是否必需 |
参数位置 |
描述 |
relationTag |
boolean |
否 |
RequestBody参数 |
是否绑定标签 |
tags |
List<TagInfo> |
否 |
RequestBody参数 |
标签信息 |
TagInfo
参数名 |
类型 |
是否必需 |
参数位置 |
描述 |
tagKey |
String |
否 |
RequestBody参数 |
标签键 |
tagValue |
String |
否 |
RequestBody参数 |
标签值 |
BillingInfo
参数名 |
类型 |
是否必需 |
参数位置 |
描述 |
paymentTiming |
String |
否 |
RequestBody参数 |
伸缩组Billing,后付费-post,抢占式-bidding |
CmdConfig
参数名 |
类型 |
是否必需 |
参数位置 |
描述 |
hasDecreaseCmd |
boolean |
否 |
RequestBody参数 |
是否配置缩容脚本 |
decCmdStrategy |
ExecCmdStrategyType |
否 |
RequestBody参数 |
缩容策略,不可为空,失败暂停缩容、失败继续缩容:Proceed、Pause |
decCmdData |
String |
否 |
RequestBody参数 |
缩容脚本 |
decCmdTimeout |
int |
否 |
RequestBody参数 |
缩容脚本超时时间 |
decCmdManual |
String |
否 |
RequestBody参数 |
手动移出是否执行缩容脚本 |
hasIncreaseCmd |
boolean |
否 |
RequestBody参数 |
是否配置扩容脚本 |
incCmdStrategy |
ExecCmdStrategyType |
是 |
RequestBody参数 |
扩容策略,不可为空、失败继续扩容:Proceed、Pause |
incCmdData |
String |
否 |
RequestBody参数 |
扩容脚本 |
incCmdTimeout |
int |
否 |
RequestBody参数 |
扩容脚本超时时间 |
decCmdManual |
String |
否 |
RequestBody参数 |
手动移入是否执行扩容脚本 |
BccNameConfig
参数名 |
类型 |
是否必需 |
参数位置 |
描述 |
bccName |
String |
否 |
RequestBody参数 |
虚拟机名字(可选)。默认都不指定name。如果指定name:批量时name作为名字的前缀。后端将加上后缀 |
bccHostname |
String |
否 |
RequestBody参数 |
虚拟机主机名(可选)。默认都不指定hostname。如果指定hostname:批量时hostname作为名字的前缀。后端将加上后缀 |
autoSeqSuffix |
boolean |
否 |
RequestBody参数 |
是否自动生成name和hostname有序后缀(可选参数) 是:true 否:false |
openHostnameDomain |
boolean |
否 |
RequestBody参数 |
是否自动生成hostname domain(可选参数) 是:true 否:false |
响应参数
参数名 |
类型 |
描述 |
groupId |
String |
伸缩组ID |
orderId |
List |
订单ID |
请求示例
POST /v1/group
request body:
{
"groupName": "yyy-test-api",
"config": {
"minNodeNum": 0,
"expectNum": -1,
"maxNodeNum": 2000,
"cooldownInSec": 300
},
"zoneInfo": [
{
"zone": "zoneA",
"subnetId": "sbn-8*********"
}
],
"assignTagInfo": {
"relationTag": false,
"tags": []
},
"nodes": [
{
"cpuCount": 8,
"memoryCapacityInGB": 32,
"sysDiskType": "enhanced_ssd_pl1",
"sysDiskInGB": 20,
"instanceType": 13,
"imageId": "24********************2535",
"securityGroupId": "g-yh********",
"priorities": 1,
"zoneSubnet": "[{\"zone\":\"zoneA\",\"subnetId\":\"sbn-8********\",\"subnetName\":\"lyz2(192.168.0.0/24)\",\"subnetUuid\":\"59********d7c\"}]"
}
],
"cmdConfig": {
"incCmdStrategy": "Proceed"
}
}
响应示例
{
"groupId": "asg-Nz******",
"orderId": []
}
查询伸缩组列表
接口描述
查询伸缩组的列表。
请求结构
Method: GET
Url: /v1/group
请求参数
Param
参数名 |
类型 |
是否必需 |
参数位置 |
描述 |
keywordType |
否 |
String |
Query参数 |
关键字字段 |
order |
否 |
String |
Query参数 |
排序方式,desc |
orderBy |
否 |
String |
Query参数 |
排序字段,createTime |
pageNo |
是 |
Integer |
Query参数 |
页数 |
pageSize |
是 |
Integer |
Query参数 |
页码 |
响应参数
参数名 |
类型 |
描述 |
order |
String |
排序方式 |
pageNo |
int |
页码数 |
pageSize |
int |
每页返回结果数 |
totalCount |
int |
符合条件的查询结果数 |
result |
List |
查询结果 |
请求示例
GET /v1/group?keyword=djw-test&keywordType=groupName&pageNo=1
响应示例
{
"orderBy": "createTime",
"order": "desc",
"pageNo": 1,
"pageSize": 1000,
"totalCount": 1,
"result": [
{
"groupId": "asg-FKsD6xmT",
"groupName": "djw-test",
"region": "bj",
"status": "RUNNING",
"vpcId": "vpc-sxj974165fqt",
"zoneInfo": [
{
"zone": "zoneA",
"subnetId": "sbn-6jrjkmdx06d9",
"subnetUuid": "1c458aa7-a3b1-4142-a1dc-ba1c3f556e0f"
},
{
"zone": "zoneB",
"subnetId": "sbn-a6x44fkk6a9k",
"subnetUuid": "174c4380-5b8c-4718-8f85-3ee3afbaaf5c"
},
{
"zone": "zoneC",
"subnetId": "sbn-ieg8rh25rpix",
"subnetUuid": "ecb39d9a-4272-45fc-9dc7-e1cc49207556"
}
],
"config": {
"minNodeNum": 0,
"maxNodeNum": 2000,
"cooldownInSec": 300,
"expectNum": -1
},
"blb": null,
"nodeNum": 1,
"createTime": "2023-11-20T07:04:34Z"
}
]
}
查询伸缩组详情
接口描述
查询伸缩组的详情。
请求结构
Method: GET
Url: /v1/group/detail/{groupId}
请求参数
参数名 |
类型 |
是否必需 |
参数位置 |
描述 |
groupId |
是 |
String |
URL参数 |
伸缩组ID |
响应参数
参数名 |
类型 |
描述 |
result |
GroupDetailInfo |
伸缩组详情 |
请求示例
GET /v1/group/detail/asg-g*****
响应示例
{
"groupId": "asg-g*****",
"groupName": "yyy-test-gosdk2",
"region": "bj",
"status": "RUNNING",
"vpcInfo": {
"vpcName": "lyz",
"vpcId": "vpc-g*****",
"vpcUuid": "06*********38f"
},
"zoneInfo": [
{
"zone": "cn-bj-a",
"subnetId": "sbn-8*********",
"subnetUuid": "5911*********d7c",
"subnetName": "l**2",
"nodeCount": 0
}
],
"config": {
"minNodeNum": 0,
"maxNodeNum": 2000,
"cooldownInSec": 300,
"expectNum": -1
},
"blbId": null,
"nodeNum": 0,
"createTime": "2023-12-13T09:13:55Z",
"rdsIds": "",
"scsIds": "",
"expansionStrategy": "Priority",
"shrinkageStrategy": "Earlier",
"healthCheck": null
}
查询伸缩组下节点列表
接口描述
查询伸缩组下节点的详细信息。
请求结构
Method: GET
Url: /v1/node
请求参数
参数名 |
类型 |
是否必需 |
参数位置 |
描述 |
groupid |
是 |
String |
Query参数 |
伸缩组ID |
keywordType |
否 |
String |
Query参数 |
关键字字段 |
order |
否 |
String |
Query参数 |
排序方式,desc |
orderBy |
否 |
String |
Query参数 |
排序字段,createTime |
pageNo |
是 |
Integer |
Query参数 |
页数 |
pageSize |
是 |
Integer |
Query参数 |
页码 |
响应参数
参数名 |
类型 |
描述 |
order |
String |
排序方式 |
pageNo |
int |
页码数 |
pageSize |
int |
每页返回结果数 |
totalCount |
int |
符合条件的查询结果数 |
result |
List |
查询结果 |
请求示例
GET /v1/node?pageNo=1&pageSize=1&groupid=asg-F******
响应示例
{
"orderBy": "id",
"order": "desc",
"pageNo": 1,
"pageSize": 1,
"totalCount": 1,
"result": [
{
"instanceId": "i-S*********",
"instanceUuid": "e57c*********1a2ca2",
"instanceName": "instance-4q17zwof",
"floatingIp": "100.88.96.193",
"internalIp": "192.168.16.30",
"status": "ACTIVE",
"payment": "postpay",
"cpuCount": 1,
"memoryCapacityInGB": 4,
"instanceType": "34",
"sysDiskInGB": 20,
"createTime": "2023-11-27T06:32:09Z",
"eip": null,
"subnetType": "BCC",
"isProtected": false,
"nodeType": "NATIVE",
"tags": [
{
"tagKey": "默认项目",
"tagValue": ""
}
],
"groupId": "asg-F*********",
"isManaged": true,
"internalSpec": "bcc.g5.c1m4",
"logicalZone": "zoneB"
}
]
}
删除伸缩组
接口描述
删除伸缩组。
请求结构
Method: POST
Url: /v1/group/delete
请求参数
body
参数名 |
类型 |
是否必需 |
参数位置 |
描述 |
groupId |
是 |
List |
URL参数 |
伸缩组ID列表 |
响应参数
无
请求示例
POST /v1/group/delete/asg-g*****
响应示例
无