
# 创建云硬盘(废弃) - CreateDisk
#### 功能介绍
创建一个或多个云硬盘。由于兼容性原因导致存在该接口，目前已经废弃。请使用性能更佳的接口。
#### 调用方法
请参见[如何调用API](https://support.huaweicloud.com/api-evs/evs_04_0009.html)。
#### 授权信息
账号具备所有API的调用权限，如果使用账号下的IAM用户调用当前API，该IAM用户需具备调用API所需的权限。
- 如果使用角色与策略授权，具体权限要求请参见[权限和授权项](https://support.huaweicloud.com/api-evs/evs_04_0023.html)。
- 如果使用身份策略授权，需具备如下身份策略权限。
  
  | 授权项                | 访问级别  | 资源类型（\*为必须） | 条件键                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           | 别名 | 依赖的授权项 |
  |:---|:---|:---|:---|:---|:---|
  | evs:volumes:create | Write | volume \*   | -                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             | -  | -      |
  | evs:volumes:create | Write | -           | - g:RequestTag/\<tag-key\>   - g:TagKeys   - g:EnterpriseProjectId   - evs:Encrypted   - cbr:VaultId   - evs:KmsKeyId   - evs:ImageId   - evs:BackupId   - evs:SnapshotId   - evs:AvailabilityZone   - evs:VolumeType   - evs:VolumeSize   - evs:VolumeIops   - evs:VolumeThroughput   - evs:ChargingMode   - evs:ServerServiceType   - ecs:ServerId   - bms:ServerId   - evs:SourceAvailabilityZone    | -  | -      |
     
  
 
#### 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 | 云硬盘调度参数，可用于指定云硬盘创建到某个专属存储池中 |
   
 表4CreateDiskOption 
| 参数                    | 是否必选 | 参数类型                 | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
|:---|:---|:---|:---|
| 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的方法请参考："[查询密钥列表](https://support.huaweicloud.com/api-dew/ListKeys.html)"。   - \[__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               | 云硬盘类型。 通过[查询云硬盘类型列表](https://support.huaweicloud.com/api-evs/evs_04_3035.html)接口获取当前可用的云硬盘类型 - "SATA"为普通IO云硬盘(已售罄)   - "SAS"为高IO云硬盘   - "GPSSD"为通用型SSD云硬盘   - "SSD"为超高IO云硬盘   - "ESSD"为极速型SSD云硬盘   - "GPSSD2"为通用型SSD V2云硬盘   - "ESSD2"为极速型SSD V2云硬盘    当指定的云硬盘类型在availability_zone内不存在时，则创建云硬盘失败。 说明： 从快照创建云硬盘时，volume_type字段必须和快照源云硬盘保持一致。 了解不同云硬盘类型的详细信息，请参见[云硬盘类型及性能介绍](https://support.huaweicloud.com/productdesc-evs/zh-cn_topic_0044524691.html)。                                                                              |
| tags                  | 否    | Map\<String,String\> | 云硬盘标签信息。 单个云硬盘最多可以创建10个标签。 标签的key需要唯一。重复的key会做去重操作，即如果有重复的key，最终只保留一个作为有效的标签。 标签的key：String类型，最大长度36个字符。 由英文字母、数字、下划线、中划线、UNICODE字符（\\u4E00-\\u9FFF）组成。 标签的value：String类型，最大长度43个字符，可以为空字符串。 由英文字母、数字、下划线、点、中划线、UNICODE字符（\\u4E00-\\u9FFF）组成。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
   
 表5CreateVolumeSchedulerHints 
| 参数                   | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                  |
|:---|:---|:---|:---|
| dedicated_storage_id | 否    | String | **参数解释** 指定专属存储池ID，表示将云硬盘创建在该ID对应的存储池中。 **约束限制** 可选参数。 **取值范围** 不涉及。 **默认取值** 不传递时使用默认调度策略 |
   
#### 响应参数
**状态码：202**
表6响应Body参数 
| 参数         | 参数类型             | 描述                                                                                                                                                                                   |
|:---|:---|:---|
| job_id     | String           | 任务ID，云硬盘为按需计费时返回该参数。 通过JobId查询云硬盘创建任务是否完成[查询job的状态](https://support.huaweicloud.com/api-evs/evs_04_0054.html)。                                        |
| volume_ids | Array of strings | 待创建的云硬盘ID列表。 说明： 通过云硬盘ID查询云硬盘详情 ，若返回404 可能云硬盘正在创建中或者已经创建失败。 通过JobId查询云硬盘创建任务是否完成[查询job的状态](https://support.huaweicloud.com/api-evs/evs_04_0054.html)。 |
   
**状态码：400**
表7响应Body参数 
| 参数    | 参数类型                                         | 描述                                                                                                                                                                                                                        |
|:---|:---|:---|
| error | [Error] object | **参数解释** 出现错误时，返回的错误码。错误码和其对应的含义请参考[错误码说明](https://support.huaweicloud.com/api-evs/evs_04_0038.html)。 **取值范围** 包含错误码和错误消息的对象 |
   
 表8Error 
| 参数      | 参数类型   | 描述                                                                                                                                                                                                           |
|:---|:---|:---|
| code    | String | **参数解释** 出现错误时，返回的错误码。 **取值范围** 错误码和其对应的含义请参考[错误码说明](https://support.huaweicloud.com/api-evs/evs_04_0038.html)。 |
| 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 |
   
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-evs/evs_04_0038.html)。
