文档首页 > > API参考> API v3> 云硬盘> 创建云硬盘

创建云硬盘

分享
更新时间: 2019/12/18 GMT+08:00

功能介绍

创建一个或多个云硬盘。支持企业项目授权功能。

URI

  • URI格式

    POST /v3/{project_id}/cloudvolumes

  • 参数说明

    参数

    是否必选

    描述

    project_id

    项目ID。

    获取方法请参见获取项目ID

请求消息

  • 请求参数

    参数

    参数类型

    是否必选

    描述

    volume

    Object

    待创建的云硬盘信息,请参见•volume参数说明

  • 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”,“SAS”和“SATA”三种。
    • “SSD”为超高IO云硬盘
    • “SAS”为高IO云硬盘
    • “SATA”为普通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:表示为非共享云硬盘。

    请参见共享云硬盘及使用方法了解更多信息。

    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类型。
  • 请求样例
    {
        "volume": {
            "backup_id": null, 
            "count": 1, 
            "availability_zone": "az-dc-1", 
            "description": "test_volume_1", 
            "size": 120, 
            "name": "test_volume_1", 
            "volume_type": "SSD", 
            "metadata": {
                "__system__encrypted": "1", 
                "__system__cmkid": "37b0d52e-c249-40d6-83cb-2b93f22445bd"
            }
        }
    }

响应消息

  • 响应参数

    参数

    参数类型

    描述

    job_id

    String

    正常返回时返回的任务ID。

    说明:

    如果需要查询job的状态,请参考查询job的状态

    error

    String

    出现错误时,返回的错误信息,具体请参见•error参数说明

  • error参数说明

    参数

    参数类型

    描述

    message

    String

    出现错误时,返回的错误消息。

    code

    String

    出现错误时,返回的错误码。

    错误码和其对应的含义请参考错误码说明

  • 响应样例
    {
        "job_id": "70a599e0-31e7-49b7-b260-868f441e862b"
    }

    {
        "error": {
            "message": "XXXX", 
            "code": "XXX"
        }
    }

状态码

  • 正常

    200

错误码

请参考错误码说明

分享:

    相关文档

    相关产品

文档是否有解决您的问题?

提交成功!

非常感谢您的反馈,我们会继续努力做到更好!

反馈提交失败,请稍后再试!

*必选

请至少选择或填写一项反馈信息

字符长度不能超过200

提交反馈 取消

如您有其它疑问,您也可以通过华为云社区问答频道来与我们联系探讨

跳转到云社区