功能介绍
本接口兼容“创建云硬盘(废弃)”接口的功能,同时合入新功能,支持创建包周期的云硬盘。支持企业项目授权功能。
- 如果您需要查看订单可用的优惠券,请参考查询订单可用优惠券。
- 如果您需要支付订单,请参考支付包周期产品订单。
- 如果您需要查询订单的资源开通详情,请参考查询订单的资源开通详情。
- 如果您需要退订该包周期资源,请参考“退订包周期资源”。
URI
- URI格式
- 参数说明
参数
是否必选
描述
project_id
是
项目ID。
获取方法请参见获取项目ID。
请求消息
- 请求参数
参数
参数类型
是否必选
描述
volume
Object
是
待创建的云硬盘信息,请参见?volume参数说明。
bssParam
Object
否
按需和包周期的扩展参数,请参见?bssParam参数说明。
- volume参数说明
参数
参数类型
是否必选
描述
backup_id
String
否
备份ID,从备份创建云硬盘时为必选。
说明:获取备份ID的方法:请参见查询所有备份。
availability_zone
String
是
指定要创建云硬盘的所属AZ,若指定的AZ不存在,则创建云硬盘失败。
说明:获取AZ的方法:请参考查询所有的可用分区信息获取。
description
String
否
云硬盘的描述。最大支持255个字节。
size
Integer
否
云硬盘大小,单位为GB,其限制如下:- 系统盘:1GB-1024GB
- 数据盘:10GB-32768GB
创建空白云硬盘,size为必选,请在范围内根据需求自定义。
从快照创建云硬盘时,size为必选,且云硬盘大小不能小于快照大小。
从镜像创建云硬盘时,size为必选,且云硬盘大小不小于镜像属性中min_disk要求的最小云硬盘容量。
从备份创建云硬盘时,size为可选,不指定size时,云硬盘大小和备份大小一致。
说明:如果发送请求时,将参数值设置为小数,则默认取小数点前的整数。
name
String
否
云硬盘名称。
- 如果为创建单个云硬盘,name为云硬盘名称。最大支持255个字节。
- 创建的云硬盘数量(count字段对应的值)大于1时,为区分不同云硬盘,创建过程中系统会自动在名称后加“-0000”的类似标记。例如:volume-0001、volume-0002。最大支持250个字节。
snapshot_id
String
否
快照ID,指定该参数表示创建云硬盘方式为从快照创建云硬盘。
说明:获取快照ID的方法:请参见查询云硬盘快照详细信息列表。
imageRef
String
否
IMS中镜像ID,指定该参数表示创建云硬盘方式为从镜像创建云硬盘。
说明:不支持通过BMS的镜像创建BMS系统盘。
获取镜像ID的方法:请参见查询镜像列表。
volume_type
String
是
云硬盘类型。
目前支持“SSD”,“GPSSD”和“SAS”三种。- “SSD”为超高IO云硬盘
- “GPSSD”为通用型SSD云硬盘
- “SAS”为高IO云硬盘
当指定的云硬盘类型在avaliability_zone内不存在时,则创建云硬盘失败。
说明:- 从快照创建云硬盘时,volume_type字段必须和快照源云硬盘保持一致。
- 了解不同磁盘类型的详细信息,请参见磁盘类型及性能介绍。
count
Integer
否
批量创云硬盘的个数。如果无该参数,表明只创建1个云硬盘,目前最多支持批量创建100个。
从备份创建云硬盘时,不支持批量创建,数量只能为“1”。
说明:如果发送请求时,将参数值设置为小数,则默认取小数点前的整数。
shareable
String
否
是否为共享云硬盘。true为共享盘,false为普通云硬盘。
说明:该字段已经废弃,请使用multiattach。
metadata
Object
否
创建云硬盘的metadata信息,metadata中的key和value长度不大于255个字节。
“metadata”字段信息说明请参见?metadata参数说明,创建磁盘时仅支持表格中提供的字段。
说明:metadata里面不能有value为null的键值对。
multiattach
Boolean
否
创建共享云硬盘的信息。默认值为false。- true:表示为共享云硬盘。
- false:表示为非共享云硬盘。
请参见共享云硬盘及使用方法了解更多信息。
tags
Object
否
创建云硬盘的时候,给云硬盘绑定标签。
单个云硬盘最多可以创建10个标签。
标签的key需要唯一。重复的key会做去重操作,即如果有重复的key,最终只保留一个作为有效的标签。
enterprise_project_id
String
否
企业项目ID。创建云硬盘时,给云硬盘绑定企业项目ID。
该参数不传,或者将该参数值设置为0,则将资源绑定给默认企业项目。
说明:关于企业项目ID的获取及企业项目特性的详细信息,请参见企业管理用户指南。
不支持同时使用“backup_id”、“snapshot_id”和“imageRef”这三个字段中的任意两个。
- metadata参数说明
参数
参数类型
是否必选
描述
__system__encrypted
String
否
metadata中的表示加密功能的字段,0代表不加密,1代表加密。
该字段不存在时,云硬盘默认为不加密。
__system__cmkid
String
否
metadata中的加密cmkid字段,与__system__encrypted配合表示需要加密,cmkid长度固定为36个字节。
说明:请参考查询密钥列表,通过HTTPS请求获取密钥ID。
hw:passthrough
String
否
- true表示云硬盘的设备类型为SCSI类型,即允许ECS操作系统直接访问底层存储介质。支持SCSI锁命令。
- false表示云硬盘的设备类型为VBD (虚拟块存储设备 , Virtual Block Device)类型,即为默认类型,VBD只能支持简单的SCSI读写命令。
- 该字段不存在时,云硬盘默认为VBD类型。
full_clone
String
否
从快照创建云硬盘时,如需使用link克隆方式,请指定该字段的值为0。
创建磁盘时, “metadata”仅支持以上表格中提供的字段。
- 如果是从快照创建云硬盘,则不支持传入“__system__encrypted”和“__system__cmkid”字段,创建出来的云硬盘与快照源云硬盘的加密属性一致。
- 如果是从镜像创建云硬盘,则不支持传入“__system__encrypted”和“__system__cmkid”字段,创建出来的云硬盘与镜像的加密属性一致。
- 如果是从快照创建云硬盘,则不支持传入“hw:passthrough”字段,创建出来的云硬盘的设备类型与快照源云硬盘保持一致。
- 如果是从镜像创建云硬盘,则不支持传入“hw:passthrough”字段,创建出来的云硬盘的设备类型为VBD类型。
- bssParam参数说明
参数
参数类型
是否必选
描述
chargingMode
String
否
- 功能说明:计费模式。默认值为postPaid。
- 取值范围
- prePaid:包年包月
- postPaid:按需
periodType
String
否
- 功能说明:订购周期单位。chargingMode为prePaid时该参数会生效,并且该参数为必选。
- 取值范围
- month:月
- year:年
periodNum
Integer
否
- 功能说明:订购周期数,chargingMode为prePaid时该参数会生效,并且该参数为必选。
- 取值范围
- periodType为month时,为[1-9]
- periodType为year时,为[1-1]
isAutoPay
String
否
- 功能说明:是否立即支付。chargingMode为PrePaid时该参数会生效。默认值为false。
- 取值范围
- false:不立即支付,创建订单暂不支付
- true:立即支付,从帐户余额中自动扣费
isAutoRenew
String
否
- 功能说明:是否自动续订。chargingMode为prePaid时该参数会生效。默认值为false。
- 取值范围
- false:不自动续订
- true:自动续订,自动续订周期与订购周期相同
- 请求样例
{ "volume": { "name": "test_volume_3", "availability_zone": "cn-north-1a", "volume_type": "SATA", "size": 120, "description": "hehehe", "multiattach": true, "count": 1 }, "bssParam": { "chargingMode": "prePaid", "periodType": "year", "periodNum": 1, "isAutoPay": "true", "isAutoRenew": "true" } }
响应消息
- 响应参数
参数
参数类型
描述
job_id
String
任务ID,创建按需云硬盘时返回该参数。
说明:如果需要查询job的状态,请参考查询job的状态。
order_id
String
订单号,创建包周期云硬盘时返回该参数。
说明:- 如果您需要支付订单,请参考支付包周期产品订单。
- 如果您需要查询订单的资源开通详情,请参考查询订单的资源开通详情。
- 如果您需要退订该包周期资源,请参考“退订包周期资源”。
error
Object
出现错误时,返回的错误信息,具体请参见?error参数说明。
- error参数说明
参数
参数类型
描述
message
String
出现错误时,返回的错误消息。
code
String
出现错误时,返回的错误码。
错误码和其对应的含义请参考错误码说明。
- 响应样例
{ "job_id": "70a599e0-31e7-49b7-b260-868f441e862b" }
或
{ "order_id": "CS1711152257C60TL" }
或
{ "error": { "message": "XXXX", "code": "XXX" } }
错误码
请参考错误码说明。