创建云硬盘

最近更新时间:2024-04-03 11:12:03

我的收藏

1. 接口描述

接口请求域名: cbs.tencentcloudapi.com 。

本接口(CreateDisks)用于创建云硬盘。

  • 预付费云盘的购买会预先扣除本次云盘购买所需金额,在调用本接口前请确保账户余额充足。
  • 本接口支持传入数据盘快照来创建云盘,实现将快照数据复制到新购云盘上。
  • 本接口为异步接口,当创建请求下发成功后会返回一个新建的云盘ID列表,此时云盘的创建并未立即完成。可以通过调用DescribeDisks接口根据DiskId查询对应云盘,如果能查到云盘,且状态为'UNATTACHED'或'ATTACHED',则表示创建成功。

默认接口请求频率限制:20次/秒。

推荐使用 API Explorer
点击调试
API Explorer 提供了在线调用、签名验证、SDK 代码生成和快速检索接口等能力。您可查看每次调用的请求内容和返回结果以及自动生成 SDK 调用示例。

2. 输入参数

以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见 公共请求参数

参数名称 必选 类型 描述
Action String 公共参数,本接口取值:CreateDisks。
Version String 公共参数,本接口取值:2017-03-12。
Region String 公共参数,详见产品支持的 地域列表
Placement Placement 实例所在的位置。通过该参数可以指定实例所属可用区,所属项目。若不指定项目,将在默认项目下进行创建。
DiskChargeType String 云硬盘计费类型。
  • PREPAID:预付费,即包年包月

  • POSTPAID_BY_HOUR:按小时后付费

  • CDCPAID:独享集群付费
    各类型价格请参考云硬盘价格总览

  • 示例值:PREPAID
    DiskType String 硬盘介质类型。取值范围:
  • CLOUD_BASIC:表示普通云硬盘

  • CLOUD_PREMIUM:表示高性能云硬盘

  • CLOUD_BSSD:表示通用型SSD云硬盘

  • CLOUD_SSD:表示SSD云硬盘

  • CLOUD_HSSD:表示增强型SSD云硬盘

  • CLOUD_TSSD:表示极速型SSD云硬盘。

  • 示例值:CLOUD_HSSD
    DiskName String 云盘显示名称。不传则默认为“未命名”。最大长度不能超60个字节。
    Tags.N Array of Tag 云盘绑定的标签。
    SnapshotId String 快照ID,如果传入则根据此快照创建云硬盘,快照类型必须为数据盘快照,可通过DescribeSnapshots接口查询快照,见输出参数DiskUsage解释。
    DiskCount Integer 创建云硬盘数量,不传则默认为1。单次请求最多可创建的云盘数有限制,具体参见云硬盘使用限制
    示例值:1
    ThroughputPerformance Integer 可选参数。使用此参数可给云硬盘购买额外的性能。
    当前仅支持极速型云盘(CLOUD_TSSD)和增强型SSD云硬盘(CLOUD_HSSD)
    示例值:100
    DiskSize Integer 云硬盘大小,单位为GB。
  • 如果传入SnapshotId则可不传DiskSize,此时新建云盘的大小为快照大小

  • 如果传入SnapshotId同时传入DiskSize,则云盘大小必须大于或等于快照大小

  • 云盘大小取值范围参见云硬盘产品分类的说明。

  • 示例值:500
    Shareable Boolean 可选参数,默认为False。传入True时,云盘将创建为共享型云盘。
    ClientToken String 用于保证请求幂等性的字符串。该字符串由客户生成,需保证不同请求之间唯一,最大值不超过64个ASCII字符。若不指定该参数,则无法保证请求的幂等性。
    Encrypt String 传入该参数用于创建加密云盘,取值固定为ENCRYPT。
    DiskChargePrepaid DiskChargePrepaid 预付费模式,即包年包月相关参数设置。通过该参数指定包年包月云盘的购买时长、是否设置自动续费等属性。
    创建预付费云盘该参数必传,创建按小时后付费云盘无需传该参数。
    DeleteSnapshot Integer 销毁云盘时删除关联的非永久保留快照。0 表示非永久快照不随云盘销毁而销毁,1表示非永久快照随云盘销毁而销毁,默认取0。快照是否永久保留可以通过DescribeSnapshots接口返回的快照详情的IsPermanent字段来判断,true表示永久快照,false表示非永久快照。
    示例值:0
    AutoMountConfiguration AutoMountConfiguration 创建云盘时指定自动挂载并初始化该数据盘。
    DiskBackupQuota Integer 指定云硬盘备份点配额。
    示例值:0
    BurstPerformance Boolean 创建云盘时是否开启性能突发
    示例值:True

    3. 输出参数

    参数名称 类型 描述
    DiskIdSet Array of String 创建的云硬盘ID列表。
    注意:此字段可能返回 null,表示取不到有效值。
    示例值:["disk-lzrg2pwi"]
    RequestId String 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。

    4. 示例

    示例1 使用基本参数购买

    新购云盘具体配置如下:云盘所在位置为广州二区,云盘大小50GB,云盘类型为普通云盘,所属项目ID为0,付费模式为预付费,购买时长1个月,通知过期且自动续费。

    输入示例

    POST / HTTP/1.1
    Host: cbs.tencentcloudapi.com
    Content-Type: application/json
    X-TC-Action: CreateDisks
    <公共请求参数>
    
    {
        "Placement": {
            "ProjectId": "0",
            "Zone": "ap-guangzhou-2"
        },
        "DiskChargeType": "PREPAID",
        "DiskCount": "1",
        "DiskType": "CLOUD_HSSD",
        "ThroughputPerformance": "100",
        "DiskSize": "500",
        "DiskChargePrepaid": {
            "RenewFlag": "NOTIFY_AND_AUTO_RENEW",
            "Period": "1"
        }
    }

    输出示例

    {
        "Response": {
            "DiskIdSet": [
                "disk-lzrg2pwi"
            ],
            "RequestId": "6a57da9a-2049-7182-2de3-5a1f8014ccfd"
        }
    }

    示例2 根据快照新建云硬盘

    传入快照创建云硬盘,未传DiskSize参数,此时新购云盘的大小为快照大小,新购云盘复制了快照数据。

    输入示例

    POST / HTTP/1.1
    Host: cbs.tencentcloudapi.com
    Content-Type: application/json
    X-TC-Action: CreateDisks
    <公共请求参数>
    
    {
        "Placement": {
            "ProjectId": "0",
            "Zone": "ap-guangzhou-2"
        },
        "DiskChargeType": "PREPAID",
        "DiskCount": "1",
        "DiskType": "CLOUD_BASIC",
        "DiskChargePrepaid": {
            "RenewFlag": "NOTIFY_AND_AUTO_RENEW",
            "Period": "1"
        },
        "SnapshotId": "snap-iepc4w3h"
    }

    输出示例

    {
        "Response": {
            "DiskIdSet": [
                "disk-6rz0ilvu"
            ],
            "RequestId": "5e93a212-ca01-0fdc-eedd-5a1fce5e83e6"
        }
    }

    示例3 创建按小时后付费云盘

    在广州三区创建一块云硬盘,云盘类型为高性能云硬盘,大小100GB,付费类型为按小时后付费。

    输入示例

    POST / HTTP/1.1
    Host: cbs.tencentcloudapi.com
    Content-Type: application/json
    X-TC-Action: CreateDisks
    <公共请求参数>
    
    {
        "DiskName": "postPayDisk",
        "Placement": {
            "ProjectId": "0",
            "Zone": "ap-guangzhou-3"
        },
        "DiskChargeType": "POSTPAID_BY_HOUR",
        "DiskCount": "1",
        "DiskType": "CLOUD_PREMIUM",
        "DiskSize": "100"
    }

    输出示例

    {
        "Response": {
            "DiskIdSet": [
                "disk-ecjc4cpw"
            ],
            "RequestId": "fe2274fa-eaec-4009-807b-6ffc00963fec"
        }
    }

    5. 开发者资源

    腾讯云 API 平台

    腾讯云 API 平台 是综合 API 文档、错误码、API Explorer 及 SDK 等资源的统一查询平台,方便您从同一入口查询及使用腾讯云提供的所有 API 服务。

    API Inspector

    用户可通过 API Inspector 查看控制台每一步操作关联的 API 调用情况,并自动生成各语言版本的 API 代码,也可前往 API Explorer 进行在线调试。

    SDK

    云 API 3.0 提供了配套的开发工具集(SDK),支持多种编程语言,能更方便的调用 API。

    命令行工具

    6. 错误码

    以下仅列出了接口业务逻辑相关的错误码,其他错误码详见 公共错误码

    错误码 描述
    InternalError.ComponentError 依赖组件请求失败,请联系客服人员解决。
    InvalidAccount.InsufficientBalance 账户余额不足。
    InvalidInstanceId.NotFound 输入实例的InstanceId不存在。
    InvalidParameter.DiskConfigNotSupported 当前地域不支持当前配置的云盘。
    InvalidParameter.ProjectIdNotExist 项目ID不存在。
    InvalidParameterValue 参数取值错误。
    InvalidParameterValue.LimitExceeded 参数值数量超过限制。
    InvalidSnapshotId.NotFound 输入的SnapshotId不存在。
    LimitExceeded.InstanceAttachedDisk 实例挂载云盘数量超过限制。
    MissingParameter 缺少参数错误。
    ResourceBusy 资源繁忙,请稍后重试。
    ResourceInsufficient 资源不足。
    TradeDealConflict 订单冲突。
    UnauthorizedOperation 未授权操作。
    UnauthorizedOperation.NotCertification 账号没有实名认证,支付失败。
    UnauthorizedOperation.NotHavePaymentRight 没有支付权限。
    UnauthorizedOperation.RoleNotExists 授权角色不存在。