文档首页/ 云硬盘 EVS/ API参考/ API/ 云硬盘管理/ 创建云硬盘(废弃)
更新时间:2025-08-20 GMT+08:00

创建云硬盘(废弃)

功能介绍

创建一个或多个云硬盘。由于兼容性原因导致存在该接口,目前已经废弃。请使用性能更佳的接口。

调用方法

请参见如何调用API

URI

POST /v2/{project_id}/cloudvolumes

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

项目 ID

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

Token的有效期为24小时,需要使用一个Token鉴权时,可以先缓存起来,避免频繁调用。

表3 请求Body参数

参数

是否必选

参数类型

描述

volume

CreateDiskOption object

待创建的云硬盘信息。

OS-SCH-HNT:scheduler_hints

CreateVolumeSchedulerHints object

云硬盘调度参数,可用于指定云硬盘创建到某个专属存储池中

表4 CreateDiskOption

参数

是否必选

参数类型

描述

availability_zone

String

指定要创建云硬盘的可用区。

backup_id

String

备份ID,从备份创建云硬盘时为必选。

count

Integer

批量创云硬盘的个数。如果无该参数,表明只创建1个云硬盘,目前最多支持批量创建100个。

从备份创建云硬盘时,不支持批量创建,数量只能为“1”。

如果发送请求时,将参数值设置为小数,则默认取小数点前的整数。

description

String

云硬盘的描述。最大支持85个字符。

enterprise_project_id

String

企业项目ID。创建云硬盘时,给云硬盘绑定企业项目ID。

imageRef

String

镜像ID,指定该参数表示创建云硬盘方式为从镜像创建云硬盘。

metadata

Map<String,String>

云硬盘的metadata信息 ,调用方可以添加或删除metadata信息。当前部分key在EVS服务中有业务场景含义,这部分key的描述如下:

  • [__system__cmkid]

    metadata中的加密cmkid字段,与__system__encrypted配合表示需要加密,cmkid长度固定为36个字节。

    请求获取密钥ID的方法请参考:"查询密钥列表"。

  • [__system__encrypted]

    metadata中的表示加密功能的字段,0代表不加密,1代表加密。不指定该字段时,云硬盘的加密属性与数据源保持一致,如果不是从数据源创建的场景,则默认不加密。

  • [hw:passthrough]

    • true表示云硬盘的设备类型为SCSI类型,即允许ECS操作系统直接访问底层存储介质。支持SCSI锁命令。

    • false表示云硬盘的设备类型为VBD (虚拟块存储设备 , Virtual Block Device)类型,即为默认类型,VBD只能支持简单的SCSI读写命令。

    • 该字段不存在时,云硬盘默认为VBD类型。 该字段不存在时,云硬盘默认为VBD类型。"

multiattach

Boolean

是否为共享云硬盘。true为共享盘,false为普通云硬盘。

name

String

云硬盘名称。

如果为创建单个云硬盘,name为云硬盘名称。最大支持64个字符。

创建的云硬盘数量(count字段对应的值)大于1时,为区分不同云硬盘,创建过程中系统会自动在名称后加“-0000”的类似标记。例如:volume-0001、volume-0002。最大支持64个字符。

shareable

String

是否为共享云硬盘。true为共享盘,false为普通云硬盘。\n

该字段已经废弃,请使用multiattach。

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"为极速型SSD云硬盘

  • "GPSSD2"为通用型SSD V2云硬盘

  • "ESSD2"为极速型SSD V2云硬盘

当指定的云硬盘类型在availability_zone内不存在时,则创建云硬盘失败。

说明:
从快照创建云硬盘时,volume_type字段必须和快照源云硬盘保持一致。

了解不同云硬盘类型的详细信息,请参见云硬盘类型及性能介绍

tags

Map<String,String>

云硬盘标签信息。

表5 CreateVolumeSchedulerHints

参数

是否必选

参数类型

描述

dedicated_storage_id

String

参数解释

指定专属存储池ID,表示将云硬盘创建在该ID对应的存储池中。

约束限制

不涉及。

取值范围

不涉及。

默认取值

不涉及。

响应参数

状态码:202

表6 响应Body参数

参数

参数类型

描述

job_id

String

任务ID,云硬盘为按需计费时返回该参数。

通过JobId查询云硬盘创建任务是否完成查询job的状态

volume_ids

Array of strings

待创建的云硬盘ID列表。

说明:
通过云硬盘ID查询云硬盘详情 ,若返回404 可能云硬盘正在创建中或者已经创建失败。

通过JobId查询云硬盘创建任务是否完成查询job的状态

状态码:400

表7 响应Body参数

参数

参数类型

描述

error

Error object

参数解释

出现错误时,返回的错误码。错误码和其对应的含义请参考错误码说明

取值范围

不涉及。

表8 Error

参数

参数类型

描述

code

String

参数解释

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

取值范围

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

message

String

参数解释

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

取值范围

不涉及。

请求示例

{
  "volume" : {
    "backup_id" : null,
    "count" : 1,
    "availability_zone" : "az1.dc1",
    "description" : "test_volume_1",
    "size" : 120,
    "name" : "test_volume_1",
    "imageRef" : null,
    "volume_type" : "SSD",
    "metadata" : {
      "__system__encrypted" : "0",
      "__system__cmkid" : null
    }
  }
}

响应示例

状态码:202

Accepted

{
  "job_id" : "70a599e0-31e7-49b7-b260-868f441e862b"
}

状态码:400

Bad Request

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

状态码

状态码

描述

202

Accepted

400

Bad Request

错误码

请参见错误码