创建CDS磁盘
更新时间:2024-11-12
- 本接口用于创建CDS磁盘。支持从快照创建的方式,但系统盘快照不能用来创建CDS磁盘。
- 请求参数中 cdsSizeInGB 和 snapshotId 必须选择其中一项来指定磁盘的大小或使用快照创建磁盘。
- 当snapshotId 参数存在且不为空时,cdsSizeInGB参数如果未指定,默认使用快照大小创建CDS磁盘。如果指定了cdsSizeInGB参数,则参数值不能小于快照大小值。
- 创建接口为异步接口,可通过查询磁盘详情接口查询磁盘状态
- 当预付费CDS挂载到已经开通自动续费的BCC时,CDS磁盘自动开通自动续费
请求结构
POST /v{version}/volume?clientToken={clientToken} HTTP/1.1
Host: bcc.bj.baidubce.com
Authorization: authorization string
{
"storageType": storageType,
"cdsSizeInGB" : cdsSizeInGB,
"snapshotId": snapshotId,
"purchaseCount" : purchaseCount,
"name": name,
"description": description,
"instanceId": "instanceId",
"encryptKey": encryptKey,
"renewTimeUnit": "renewTimeUnit",
"renewTime": renewTime,
"relationTag": relationTag,
"chargeType" : chargeType,
"zoneName": "zoneName",
"tags": [
{
"tagKey": "tagKey",
"tagValue": "tagValue"
}
],
"resGroupId": "groupId",
"clusterId": "clusterId",
"autoSnapshotPolicy": {
"autoSnapshotPolicyId": "autoSnapshotPolicyId"
}
}
请求头域
除公共头域外,无其它特殊头域。
请求参数
参数名称 | 类型 | 是否必需 | 参数位置 | 描述 |
---|---|---|---|---|
version | String | 是 | URL参数 | API版本号 |
clientToken | String | 是 | Query参数 | 幂等性Token,是一个长度不超过64位的ASCII字符串,详见幂等性。 |
purchaseCount | int | 否 | RequestBody参数 | 批量创建的CDS磁盘的个数,必须为大于0的整数,单次创建不能超过5个。可选参数,缺省为1 |
name | String | 否 | RequestBody参数 | 磁盘新的名称,自定义镜像名称,支持大小写字母、数字、中文以及-_ /.特殊字符,必须以字母开头,长度1-65。 |
description | String | 否 | RequestBody参数 | 磁盘新的描述信息 |
cdsSizeInGB | int | 否 | RequestBody参数 | CDS磁盘容量,必须为大于0的整数,单位为GB,大小为5~32765GB,其中 SSD 类型云磁盘的起售容量不小于 50GB。当参数snapshotId为空或不存在时该参数必需。 |
storageType | StorageType | 否 | RequestBody参数 | CDS磁盘存储类型,包括enhanced_ssd_pl1【增强型SSD_PL】,enhanced_ssd_pl2【增强型SSD_PL2】,cloud_hp1 或 premium_ssd 【通用型SSD】 和 hp1 或 ssd 【高性能云磁盘】 四种类型,默认 hp1。 |
chargeType | String | 否 | RequestBody参数 | 计费类型,付费方式,包括预支付(Prepaid)和后支付(Postpaid),该参数仅当instanceId非空,且对应实例类型为预付费时需要指定。如果instanceId为空,则创建后付费类型CDS;如果instanceId非空: 如果实例为预付费,需要指定chargeType;如果实例为后付费,创建后付费CDS |
snapshotId | String | 否 | RequestBody参数 | 快照ID,支持从快照创建磁盘。当此参数存在时且不为空时,cdsSizeInGB参数将被忽略,此时非必需。 |
zoneName | String | 否 | RequestBody参数 | 指定可用区信息,默认为空,由系统自动选择。 |
autoSnapshotPolicy | List<AutoSnapshotPolicyModel> | 否 | RequestBody参数 | 磁盘当前配置的自动快照策略 |
renewTimeUnit | String | 否 | RequestBody参数 | 按月付费或者按年付费 月是"month",年是"year"。注意:该参数已废弃,当创建预付费CDS并挂载到已经开通自动续费的BCC时,CDS磁盘自动开通自动续费且续费周期和BCC实例保持一致。 |
renewTime | int | 否 | RequestBody参数 | 自动续费的时间 按月是1-9 按年是 1-3。注意:该参数已废弃,当创建预付费CDS并挂载到已经开通自动续费的BCC时,CDS磁盘自动开通自动续费且续费周期和BCC实例保持一致。 |
instanceId | String | 否 | RequestBody参数 | 创建磁盘并挂载到该虚机上。注意:当创建预付费CDS并挂载到已经开通自动续费的BCC时,CDS磁盘自动开通自动续费且续费周期和BCC实例保持一致。 |
encryptKey | String | 否 | RequestBody参数 | KMS密钥ID。 |
relationTag | boolean | 否 | RequestBody参数 | 待创建CDS指定的标签是否需要和已有标签键进行关联,默认为false。注意值为true时要保证该标签键已存在 |
tags | List<TagModel> | 否 | RequestBody参数 | 待绑定的标签列表 |
clusterId | String | 否 | RequestBody参数 | CDS专属集群ID |
resGroupId | String | 否 | RequestBody参数 | 资源组ID |
返回头域
除公共头域,无其它特殊头域。
返回参数
参数名称 | 类型 | 描述 |
---|---|---|
volumeIds | List |
磁盘ID,符合BCE规范,必须是一个定长字符串,且只允许包含大小写字母、数字、连字号(-)和下划线(_)。 |
warningList | List |
挂载磁盘产生的warning信息 |
错误码
错误码 | 错误描述 | HTTP状态码 | 中文解释 |
---|---|---|---|
Volume.SystemSnapshotForbiddenOperation | System snapshot can not be used to create volume. | 403 | 系统快照不允许创建磁盘 |
请求示例
POST http://bcc.bj.baidubce.com/v2/volume?clientToken=3A8d84403d-a94b-40ce-9d6a-f6225dd26676
Host: bcc.bj.baidubce.com
Authorization: bce-auth-v1/f81d3b34e48048fbb2634dc7882d7e21/2015-08-11T04:17:29Z/3600/host/74c506f68c65e26c633bfa104c863fffac5190fdec1ec24b7c03eb5d67d2e1de
{
"storageType": "hp1",
"cdsSizeInGB" : 5,
"purchaseCount" : 2,
"name": "TestName2",
"description": "TestDesc2",
"chargeType": "Postpaid"
}
返回示例
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Date: Wed, 08 Jul 2015 03:28:11 GMT
x-bce-request-id: d8752367-38e8-45e4-b4c7-e53be3137ce5
Server: BWS
{
"volumeIds": [
"v-NSuv0ssl",
"v-MPO0YONO"
],
"warningList": [
"warning info"
]
}