调试
您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。
URI
POST /v2.1/{project_id}/cloudvolumes
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
project_id |
是 |
String |
项目ID。获取方法请参见"获取项目ID"。 |
请求参数
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
X-Auth-Token |
是 |
String |
用户Token。 通过调用 IAM 服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 |
X-Client-Token |
否 |
String |
请求的幂等标识。该参数的值由客户端生成,需要确保不同请求的参数值唯一,取值为36位的UUID格式字符串,有效期为8小时。携带相同幂等标识的多个请求,会认为多个请求为同一个幂等请求,会返回相同的响应体。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
bssParam |
否 |
按需和包周期的扩展参数 |
|
volume |
是 |
待创建的云硬盘信息 |
|
server_id |
否 |
String |
创建云硬盘并挂载到目标虚拟机。 创建的云硬盘的计费模式会与虚拟机的计费模式保持一致。 目前只支持ECS服务的虚拟机,暂不支持BMS的 裸金属服务器 。 |
OS-SCH-HNT:scheduler_hints |
否 |
云硬盘调度参数,可用于指定云硬盘创建到某个专属存储池中 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
chargingMode |
否 |
String |
功能说明:计费模式。默认值为postPaid。 取值范围:
缺省值:postPaid 枚举值:
|
isAutoPay |
否 |
String |
功能说明:是否立即支付。chargingMode为PrePaid时该参数会生效。默认值为false。 取值范围:
缺省值:false 枚举值:
|
isAutoRenew |
否 |
String |
功能说明:是否自动续订。chargingMode为prePaid时该参数会生效。默认值为false。 取值范围:
缺省值:false 枚举值:
|
periodNum |
否 |
Integer |
功能说明:订购周期数,chargingMode为prePaid时该参数会生效,并且该参数为为必选。 取值范围:
|
periodType |
否 |
String |
功能说明:订购周期单位。chargingMode为prePaid时该参数会生效,并且该参数为必选。 取值范围:
枚举值:
|
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
availability_zone |
是 |
String |
指定要创建云硬盘的可用区。 |
backup_id |
否 |
String |
备份ID,从备份创建云硬盘时为必选。 |
count |
否 |
Integer |
批量创云硬盘的个数。如果无该参数,表明只创建1个云硬盘,目前最多支持批量创建100个。 从备份创建云硬盘时,不支持批量创建,数量只能为“1”。 如果发送请求时,将参数值设置为小数,则默认取小数点前的整数。 |
description |
否 |
String |
云硬盘的描述。最大支持255个字节。 |
ent erp rise_project_id |
否 |
String |
企业项目ID。创建云硬盘时,给云硬盘绑定企业项目ID。 |
imageRef |
否 |
String |
镜像 ID,指定该参数表示创建云硬盘方式为从镜像创建云硬盘。 |
metadata |
否 |
Map<String,String> |
创建云硬盘的metadata信息 可选参数如下:[__system__cmkid]metadata中的加密cmkid字段,与__system__encrypted配合表示需要加密,cmkid长度固定为36个字节。 说明:
请求获取密钥ID的方法请参考:"查询密钥列表"。 [__system__encrypted]metadata中的表示加密功能的字段,0代表不加密,1代表加密。不指定该字段时,云硬盘的加密属性与数据源保持一致,如果不是从数据源创建的场景,则默认不加密。 [full_clone]从快照创建云硬盘时,如需使用link克隆方式,请指定该字段的值为0。 [hw:passthrough]
|
multiattach |
否 |
Boolean |
是否为共享云硬盘。true为共享盘,false为普通云硬盘。 |
name |
否 |
String |
云硬盘名称。如果为创建单个云硬盘,name为云硬盘名称。最大支持255个字节。创建的云硬盘数量(count字段对应的值)大于1时,为区分不同云硬盘,创建过程中系统会自动在名称后加“-0000”的类似标记。例如:volume-0001、volume-0002。最大支持250个字节。 |
size |
是 |
Integer |
云硬盘大小,单位为GiB,其限制如下: 系统盘:1GiB-1024GiB 数据盘:10GiB-32768GiB 创建空白云硬盘和从 镜像/快照 创建云硬盘时,size为必选,且云硬盘大小不能小于 镜像/快照 大小。 从备份创建云硬盘时,size为可选,不指定size时,云硬盘大小和备份大小一致。 |
snapshot_id |
否 |
String |
快照ID,指定该参数表示创建云硬盘方式为从快照创建云硬盘。 |
volume_type |
是 |
String |
云硬盘类型。目前支持"SATA","SAS","GPSSD","SSD","ESSD","GPSSD2","ESSD2"七种。- "SATA"为普通IO云硬盘(已售罄)- "SAS"为高IO云硬盘- "GPSSD"为通用型SSD云硬盘- "SSD"为超高IO云硬盘- "ESSD"为极速IO云硬盘- "GPSSD2"为通用型SSD V2云硬盘- "ESSD2"为极速型SSD V2云硬盘当指定的云硬盘类型在avaliability_zone内不存在时,则创建云硬盘失败。> 说明:> 从快照创建云硬盘时,volume_type字段必须和快照源云硬盘保持一致。> 了解不同云硬盘类型的详细信息,请参见 云硬盘类型及性能介绍。 枚举值:
|
tags |
否 |
Map<String,String> |
云硬盘标签信息。 |
iops |
否 |
Integer |
给云硬盘配置iops,购买GPSSD2、ESSD2类型的云硬盘时必填,其他类型不能设置。说明:1、了解GPSSD2、ESSD2类型的iops大小范围,请参见 云硬盘类型及性能介绍里面的云硬盘性能数据表。2、只支持按需计费。 |
throughput |
否 |
Integer |
给云硬盘配置吞吐量,单位是MiB/s,购买GPSSD2类型云盘时必填,其他类型不能设置。说明:1、了解GPSSD2类型的吞吐量大小范围,请参见 云硬盘类型及性能介绍里面的云硬盘性能数据表。2、只支持按需计费。 |
响应参数
状态码: 202
参数 |
参数类型 |
描述 |
---|---|---|
job_id |
String |
任务ID,云硬盘为按需计费时返回该参数。> > > 如果需要查询job的状态,请参考:"查询job的状态"。 |
order_id |
String |
订单ID,云硬盘为包周期计费时返回该参数。> 直接在包周期 云服务器 上新增云硬盘,系统会自动将云硬盘挂载到包周期 云服务 器上。该情形下也会返回该参数。>> > - 如果您需要支付订单,请参考: |
volume_ids |
Array of strings |
待创建的云硬盘ID列表。> 说明:> 通过云硬盘ID查询云硬盘详情 ,若返回404 可能云硬盘正在创建中或者已经创建失败。> 通过JobId查询云硬盘创建任务是否完成查询job的状态。 |
状态码: 400
参数 |
参数类型 |
描述 |
---|---|---|
error |
出现错误时,返回的错误信息,具体请参见 error参数说明。 |
参数 |
参数类型 |
描述 |
---|---|---|
code |
String |
出现错误时,返回的错误码。错误码和其对应的含义请参考错误码说明。 |
message |
String |
出现错误时,返回的错误消息。 |
请求示例
创建一个带标签的共享云硬盘,云硬盘的类型为普通IO,大小为120GiB,包年计费,从帐户余额中自动扣费,且自动续订。
POST https://{endpoint}/v2.1/{project_id}/cloudvolumes
{
"volume" : {
"name" : "test_volume_3",
"availability_zone" : "az1.dc1",
"volume_type" : "SATA",
"size" : 120,
"description" : "test",
"multiattach" : true,
"count" : 1,
"tags" : {
"key1" : "value1",
"key2" : "value2"
}
},
"bssParam" : {
"chargingMode" : "prePaid",
"periodType" : "year",
"periodNum" : 1,
"isAutoPay" : "true",
"isAutoRenew" : "true"
}
}
响应示例
状态码: 202
Accepted
{
"job_id" : "70a599e0-31e7-49b7-b260-868f441e862b",
"volume_ids" : [ "e1fa3e72-8c92-4871-9152-bf66fef0afe9" ]
}
状态码: 400
Bad Request
{
"error" : {
"message" : "XXXX",
"code" : "XXX"
}
}
状态码
状态码 |
描述 |
---|---|
202 |
Accepted |
400 |
Bad Request |
错误码
请参见错误码。