创建云硬盘
功能介绍
创建云硬盘。
URI
- URI格式
- 参数说明 
    参数 是否必选 描述 project_id 是 项目ID。 获取方法请参见获取项目ID。 
请求消息
- 请求参数 
    参数 参数类型 是否必选 描述 volume Object 是 待创建的云硬盘信息,请参见•volume参数说明。 
- volume参数说明 
    参数 参数类型 是否必选 描述 availability_zone String 是 指定要创建云硬盘的所属AZ,若指定的AZ不存在,则创建云硬盘失败。 说明:获取AZ的方法:请参考查询所有的可用分区信息获取。 source_volid String 否 源云硬盘ID,指定该参数表示创建云硬盘方式为从源云硬盘克隆。当前云硬盘服务不支持该功能。 description String 否 云硬盘的描述。最大支持255个字节。 snapshot_id String 否 快照ID,指定该参数表示创建云硬盘方式为从快照创建。 说明:size Integer 是 云硬盘大小,单位为GB,其限制如下:- 系统盘:1GB-1024GB
- 数据盘:10GB-32768GB
 创建空白云硬盘,size为必选,请在范围内根据需求自定义。 从快照创建云硬盘时,size为必选,且云硬盘大小不能小于快照大小。 从镜像创建云硬盘时,size为必选,且云硬盘大小不小于镜像属性中min_disk要求的最小云硬盘容量。 name String 否 云硬盘名称。最大支持255个字节。 imageRef String 否 镜像ID,指定该参数表示创建云硬盘方式为从镜像创建。 说明:获取镜像ID的方法:请参见“镜像服务API参考 > 查询镜像列表”。 volume_type String 否 云硬盘类型。 目前支持“SSD”,“SAS”三种。- “SSD”为超高IO云硬盘
- “SAS”为高IO云硬盘
 说明:- 从快照创建云硬盘时,volume_type字段必须和快照源云硬盘保持一致。
- 了解不同磁盘类型的详细信息,请参见“云硬盘用户指南 > 磁盘类型及性能介绍”。
 metadata Object 否 云硬盘的metadata数据,metadata中的key和value长度不大于255个字节。 “metadata”字段信息说明请参见“metadata字段说明”表格,表格中列举了部分字段,您还可以根据创建磁盘的要求输入其他字段,请参见•metadata参数说明。 说明:metadata里面不能有value为null的键值对。 source_replica String 否 该参数表示从磁盘的克隆来创建云硬盘,当前云硬盘服务不支持该功能。 consistencygroup_id String 否 预留属性。 count 否 Integer 批量创云硬盘的个数。如果无该参数,表明只创建1个云硬盘,目前最多支持批量创建100个。 从备份创建云硬盘时,不支持批量创建,数量只能为“1”。 如果发送请求时,将参数值设置为小数,则默认取小数点前的整数。 shareable String 否 扩展属性:共享云硬盘标志位,true为共享盘,false为普通云硬盘。当前云硬盘服务不支持该字段。 说明:该字段已经废弃,请使用multiattach。 multiattach Boolean 否 创建共享云硬盘的信息。默认值为false。- true:表示为共享云硬盘。
- false:表示为非共享云硬盘。
   不支持同时使用“source_volid”、“snapshot_id”和“imageRef”这三个字段中的任意两个 
- metadata参数说明 
    参数 参数类型 是否必选 描述 hw:passthrough String 否 - true表示云硬盘的设备类型为SCSI类型,即允许ECS操作系统直接访问底层存储介质。支持SCSI锁命令。
- false表示云硬盘的设备类型为VBD (虚拟块存储设备, Virtual Block Device)类型,即为默认类型,VBD只能支持简单的SCSI读写命令。
- 该字段不存在时,云硬盘默认为VBD类型。
           说明:当shareable参数值设置为true,不指定hw:passthrough参数值时,创建的云硬盘为VBD类型共享云硬盘。 
 full_clone String 否 从快照创建云硬盘时,如需使用link克隆方式,请指定该字段的值为0。   以上表格中仅提供了部分“metadata”字段信息说明供您参考,您还可以根据创建磁盘的要求输入其他字段。 - 如果是从快照创建云硬盘,则不支持传入“hw:passthrough”字段,创建出来的云硬盘的设备类型与快照源云硬盘保持一致。
- 如果是从镜像创建云硬盘,则不支持传入“hw:passthrough”字段,创建出来的云硬盘的设备类型为VBD类型。
 
- 请求样例
    { "volume": { "name": "openapi_vol01", "imageRef": "027cf713-45a6-45f0-ac1b-0ccc57ac12e2", "availability_zone": "az-dc-1", "description": "create for api test", "volume_type": "SAS", "metadata": { "volume_owner": "openapi" }, "multiattach": false, "size": 40 }, }
响应消息
- 响应参数 
    参数 参数类型 描述 volume Object 创建出来的云硬盘,请参见•volumes参数说明。 error Object 出现错误时,返回的错误信息,具体请参见•error参数说明。 
- volumes参数说明 
    参数 参数类型 描述 id String 云硬盘ID。 links list 云硬盘URI自描述信息,请参见•links参数说明。 name String 云硬盘名称。 status String 云硬盘状态,具体请参见云硬盘状态。 attachments list 挂载信息,请参见•attachments参数说明。 availability_zone String 云硬盘所属AZ。 bootable String 是否为启动云硬盘。- true:表示为启动云硬盘。
- false:表示为非启动云硬盘。
 encrypted Boolean 当前云硬盘服务不支持该字段。 created_at String 创建云硬盘的时间。 时间格式:UTC YYYY-MM-DDTHH:MM:SS.XXXXXX description String 云硬盘描述。 volume_type String 云硬盘类型。 目前支持“SSD”,“SAS”三种。- “SSD”为超高IO云硬盘
- “SAS”为高IO云硬盘
 replication_status String 预留属性。 consistencygroup_id String 所属一致性组ID。 当前云硬盘服务不支持该字段。 source_volid String 源云硬盘ID。 当前云硬盘服务不支持该字段。 snapshot_id String 快照ID。 metadata Object 元数据,请参见•metadata参数说明。 size Integer 云硬盘大小,单位为GB。 user_id String 预留属性。 updated_at String 云硬盘更新时间。 时间格式:UTC YYYY-MM-DDTHH:MM:SS.XXXXXX shareable Boolean 是否为可共享云硬盘。 说明:该字段已经废弃,请使用multiattach。 multiattach Boolean 是否为共享云硬盘。- true:表示为共享云硬盘。
- false:表示为非共享云硬盘。
 storage_cluster_id String 预留属性。 
- links参数说明 
    参数 参数类型 描述 href String 对应的快捷链接。 rel String 快捷链接标记名称。 
- attachments参数说明 
    参数 参数类型 描述 server_id String 云硬盘挂载到的云服务器的ID。 attachment_id String 挂载信息对应的ID。 attached_at String 挂载的时间信息。 时间格式:UTC YYYY-MM-DDTHH:MM:SS.XXXXXX host_name String 云硬盘挂载到的云服务器对应的物理主机的名称。 volume_id String 云硬盘ID。 device String 挂载点。 id String 挂载的资源ID。 
- metadata参数说明 
    参数 参数类型 描述 hw:passthrough String metadata中的表示云硬盘设备类型的字段。- true表示云硬盘的设备类型为SCSI类型,即允许ECS操作系统直接访问底层存储介质。支持SCSI锁命令。
- false表示云硬盘的设备类型为VBD类型,即为默认类型,VBD只能支持简单的SCSI读写命令。
- 该字段不存在时,云硬盘默认为VBD类型。
 full_clone String 从快照创建云硬盘时,字段的值为0表示使用link克隆方式。 
- error参数说明 
    参数 参数类型 描述 message String 出现错误时,返回的错误消息。 code String 出现错误时,返回的错误码。 错误码和其对应的含义请参考错误码。 
- 响应样例
    { "volume": { "attachments": [ ], "availability_zone": "az-dc-1", "bootable": "false", "consistencygroup_id": null, "created_at": "2016-05-25T02:38:40.392463", "description": "create for api test", "encrypted": false, "id": "8dd7c486-8e9f-49fe-bceb-26aa7e312b66", "links": [ { "href": "https://volume.localdomain.com:8776/v2/5dd0b0056f3d47b6ab4121667d35621a/volumes/8dd7c486-8e9f-49fe-bceb-26aa7e312b66", "rel": "self" }, { "href": "https://volume.localdomain.com:8776/5dd0b0056f3d47b6ab4121667d35621a/volumes/8dd7c486-8e9f-49fe-bceb-26aa7e312b66", "rel": "bookmark" } ], "metadata": { "volume_owner": "openapi" }, "name": "openapi_vol01", "replication_status": "disabled", "multiattach": false, "size": 40, "snapshot_id": null, "source_volid": null, "status": "creating", "updated_at": null, "user_id": "39f6696ae23740708d0f358a253c2637", "volume_type": "SAS" } }或 { "error": { "message": "XXXX", "code": "XXX" } }其中error是泛指的错误,有badRequest、itemNotFound等,如报错为: { "badRequest": { "message": "XXXX", "code": "XXX" } }
错误码
请参考错误码。
 
    