更新时间:2026-01-09 GMT+08:00

创建存储库

功能介绍

创建存储库

URI

POST /v3/{project_id}/vaults

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

项目ID,默认取值不涉及。

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

用户Token,通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。默认取值不涉及。

表3 请求Body参数

参数

是否必选

参数类型

描述

vault

VaultCreate object

存储库创建参数

表4 VaultCreate

参数

是否必选

参数类型

描述

backup_policy_id

String

备份策略ID,用于指定自动备份时的备份策略。默认值为null。

billing

BillingCreate object

创建存储库运营参数

description

String

存储库的描述。不能包含“<”,“>”,最大支持255个字符。默认取值不涉及。

name

String

存储库名称,最大支持64字符,只能由中文、字母、数字、“_”、“-”组成。默认取值不涉及。

resources

Array of ResourceCreate objects

绑定的备份资源,未在创建时绑定资源填[],最大支持同时绑定255个资源。默认取值不涉及。

tags

Array of Tag objects

标签列表,默认取值不涉及。

约束限制:

tags中最多包含10个key。

  • tags不允许为空列表。

  • tags中key不允许重复。

auto_bind

Boolean

功能说明:是否支持自动挂载。默认为false。

取值范围:

  • true:支持自动挂载

  • false:不支持自动挂载

bind_rules

VaultBindRules object

自动挂载的规则

backup_name_prefix

String

功能说明:备份名称前缀,设置后该存储库自动备份产生的备份副本都将携带该备份名称前缀。

取值范围:最大支持32个字符。默认取值不涉及。

sys_lock_source_service

String

功能说明:用于标识SMB服务,支持传入SMB和空,默认值为空

取值范围:

  • SMB:标识为SMB服务调用

  • 空字符串:表示为普通服务调用

availability_zone

String

存储库可用区信息,最大支持32字符。

表5 BillingCreate

参数

是否必选

参数类型

描述

cloud_type

String

云类型,默认为public,支持类型如下。

public:公有云

consistent_level

String

功能描述:存储库规格。取值范围:crash_consistent: 崩溃一致性。默认取值不涉及。

object_type

String

对象类型,支持"server", "disk"和"turbo"共三种。server:云服务器,disk:云硬盘,turbo:文件系统。默认取值不涉及。

protect_type

String

保护类型,默认取值不涉及。取值范围如下:

backup:备份

size

Integer

资源容量大小,单位GB,取值范围:10-10485760,默认取值不涉及。

charging_mode

String

description: |-

功能说明:计费模式。当前仅支持post_paid,代表按需计费模式。默认取值不涉及。

is_auto_renew

Boolean

功能说明:到期后是否自动续期,默认为false

取值范围:

  • true:到期后自动续期

  • false:到期后不自动续期

is_auto_pay

Boolean

功能说明:是否自动付费,默认为false

取值范围:

  • true:下单后自动付费

  • false:下单后不自动付费

console_url

String

云服务console_url。 订购订单支付完成后,客户可以通过此URL跳转到云服务Console页面查看信息。(仅手动支付时涉及)。默认取值不涉及。

表6 ResourceCreate

参数

是否必选

参数类型

描述

id

String

待备份资源id,需要该资源已经绑定到该存储库中,且属于可备份的状态。默认取值不涉及。

type

String

待备份资源的类型: OS::Nova::Server:云服务器;OS::Cinder::Volume:云硬盘;OS::Sfs::Turbo:SFS Turbo文件系统。默认取值不涉及。

name

String

资源名称,长度限制:0-255字符。默认取值不涉及。

表7 VaultBindRules

参数

是否必选

参数类型

描述

tags

Array of BindRulesTags objects

按tags过滤自动绑定的资源

最小长度:0

最大长度:5

表8 DataEncryption

参数

是否必选

参数类型

描述

encrypted_algorithm

String

存储库的加密算法类型。如果为非加密存储库,默认值为None

响应参数

状态码:200

表9 响应Body参数

参数

参数类型

描述

vault

VaultCreateResource object

存储库查询返回对象(仅按需创建时显示)

retCode

Integer

包周期订购结果(仅包周期创建时显示)

errText

String

包周期创建错误信息(仅包周期创建时显示)

error_code

String

包周期创建错误码(仅包周期创建时显示)

表10 VaultCreateResource

参数

参数类型

描述

billing

Billing object

运营信息

description

String

存储库自定义描述信息,不能包含“<”,“>”,最大支持255个字符。

id

String

存储库ID,取值范围不涉及。

name

String

存储库名称,最大支持64字符,只能由中文、字母、数字、“_”、“-”组成。

project_id

String

项目ID,取值范围不涉及。

provider_id

String

存储库资源类型id,取值范围不涉及。

resources

Array of ResourceResp objects

存储库资源

tags

Array of Tag objects

存储库标签

auto_bind

Boolean

功能说明:是否支持自动挂载。

取值范围:

  • true:支持自动挂载

  • false:不支持自动挂载

bind_rules

VaultBindRules object

绑定规则

user_id

String

用户id,取值范围不涉及。

created_at

String

创建时间,例如:"2020-02-05T10:38:34.209782",取值范围不涉及。

auto_expand

Boolean

功能说明:是否开启存储库自动扩容能力。取值范围:true:支持自动扩容;false:不支持自动扩容。

backup_name_prefix

String

备份名称前缀,设置后该存储库自动备份产生的备份副本都将携带该备份名称前缀。最大支持32个字符。

demand_billing

Boolean

是否允许使用超出存储库容量

  • true:允许使用超出存储库容量

  • false:不允许使用超出存储库容量

cbc_delete_count

Integer

存储库删除次数,取值范围不涉及。

frozen

Boolean

存储库是否冻结

  • true:存储库冻结

  • false:存储库未冻结

sys_lock_source_service

String

用于标识SMB服务,支持传入SMB和空。

SMB:标识为SMB服务调用

空字符串:表示为普通服务调用

availability_zone

String

存储库可用区信息,最大支持32字符。

表11 Billing

参数

参数类型

描述

allocated

Integer

已分配容量,单位GB。取值范围:10-10485760。

charging_mode

String

功能说明:计费模式。当前仅支持post_paid,代表按需计费模式。

cloud_type

String

云类型,支持类型如下。

public:公有云

consistent_level

String

功能描述:存储库规格。取值范围:crash_consistent: 崩溃一致性。

object_type

String

对象类型,支持"server", "disk"和"turbo"共三种。server:云服务器,disk:云硬盘,turbo:文件系统。

order_id

String

订单ID,UUID格式。

product_id

String

产品ID,UUID格式。

protect_type

String

保护类型,取值范围如下:

backup:备份

size

Integer

容量,单位GB。取值范围:10-10485760。

spec_code

String

规格编码,取值范围如下:

云服务备份存储库:vault.backup.server.normal;云硬盘备份存储库:vault.backup.volume.normal;文件备份存储库:vault.backup.turbo.normal

status

String

存储库状态,取值范围如下:

  • available: 可用

  • lock: 锁定

  • frozen: 冻结

  • deleting: 删除中

  • error: 异常

storage_unit

String

存储库桶名,取值范围不涉及。

used

Integer

已使用容量,单位MB,取值范围不涉及。

frozen_scene

String

冻结场景,取值范围如下:

  • POLICE:公安冻结场景

  • ARREAR:欠费场景

  • ILLEGAL:违规冻结场景

  • VERIFY:客户未实名认证冻结场景

  • DELETE_ACCOUNT:退订删除场景

表12 ResourceResp

参数

参数类型

描述

id

String

待备份资源id,需要该资源已经绑定到该存储库中,且属于可备份的状态。

name

String

待备份资源名称,长度限制:0-255字符。

protect_status

String

保护状态,取值范围如下:

  • available: 可用

  • error: 异常

  • protecting: 保护中

  • restoring: 恢复中

  • removing: 删除中

size

Integer

资源已分配容量,单位为GB,取值范围不涉及。

type

String

待备份资源的类型: OS::Nova::Server:云服务器;OS::Cinder::Volume:云硬盘;OS::Sfs::Turbo:SFS Turbo文件系统。

backup_size

Integer

备份副本大小。单位GB。取值范围不涉及。

backup_count

Integer

副本数量,取值范围不涉及。

表13 VaultBindRules

参数

参数类型

描述

tags

Array of BindRulesTags objects

按tags过滤自动绑定的资源

最小长度:0

最大长度:5

状态码:400

表14 响应Body参数

参数

参数类型

描述

error_code

String

请参见错误码

error_msg

String

错误信息

请求示例

  • 创建一个云服务器存储库,存储库容量为100G,按需计费,且同时绑定资源和添加标签。

    POST https://{endpoint}/v3/f841e01fd2b14e7fa41b6ae7aa6b0594/vaults
    
    {
      "vault" : {
        "backup_policy_id" : "6dd81d7d-a4cb-443e-b8ed-1af0bd3a261b",
        "billing" : {
          "cloud_type" : "public",
          "consistent_level" : "crash_consistent",
          "object_type" : "server",
          "protect_type" : "backup",
          "size" : 100,
          "charging_mode" : "post_paid",
          "is_auto_renew" : false,
          "is_auto_pay" : false,
          "console_url" : "https://console.demo.com/cbr/?agencyId=97fcd896b7914cb98f553a087232e243&region=testregion/cbr/manager/csbs/vaultList"
        },
        "description" : "vault_description",
        "name" : "vault_name",
        "resources" : [ {
          "extra_info" : {
            "exclude_volumes" : [ "43a320a5-3efd-4568-b1aa-8dd9183cc64b" ]
          },
          "id" : "23a320a5-3efd-4568-b1aa-8dd9183cc64c",
          "type" : "OS::Nova::Server"
        } ],
        "tags" : [ {
          "key" : "key01",
          "value" : "value01"
        } ],
        "enterprise_project_id" : "0"
      }
    }
  • 创建一个云硬盘备份存储库,存储库容量为40G,按需计费。

    POST https://{endpoint}/v3/f841e01fd2b14e7fa41b6ae7aa6b0594/vaults
    
    {
      "vault" : {
        "billing" : {
          "consistent_level" : "crash_consistent",
          "object_type" : "disk",
          "protect_type" : "backup",
          "size" : 40,
          "charging_mode" : "post_paid",
          "is_auto_renew" : false,
          "is_auto_pay" : false
        },
        "name" : "test",
        "resources" : [ ]
      }
    }

响应示例

状态码:200

创建存储库成功响应体。按需创建时只有vault对象,包周期创建时只有orders,retCode,errText,error_code对象。

{
  "vault" : {
    "provider_id" : "0daac4c5-6707-4851-97ba-169e36266b66",
    "description" : "vault_description",
    "tags" : [ {
      "value" : "value01",
      "key" : "key01"
    } ],
    "enterprise_project_id" : 0,
    "auto_bind" : false,
    "id" : "ad7627ae-5b0b-492e-b6bd-cd809b745197",
    "user_id" : "38d65be2ecd840d19046e239e841a734",
    "name" : "vault_name",
    "billing" : {
      "status" : "available",
      "used" : 0,
      "protect_type" : "backup",
      "object_type" : "server",
      "allocated" : 40,
      "spec_code" : "vault.backup.server.normal",
      "size" : 100,
      "cloud_type" : "public",
      "consistent_level" : "crash_consistent",
      "charging_mode" : "post_paid"
    },
    "created_at" : "2019-05-23T12:51:10.071+00:00",
    "project_id" : "fc347bc64ccd4589ae52e4f44b7433c7",
    "resources" : [ {
      "name" : "ecs-b977-0002",
      "backup_size" : 0,
      "protect_status" : "available",
      "backup_count" : 0,
      "extra_info" : {
        "exclude_volumes" : [ "1855eb9a-2b5e-4938-a9f0-aea08b6f9243", "5a51e8b3-2f65-4045-896f-f8ffae14b064" ]
      },
      "type" : "OS::Nova::Server",
      "id" : "23a320a5-3efd-4568-b1aa-8dd9183cc64c",
      "size" : 40
    } ]
  }
}

状态码

状态码

描述

200

创建存储库成功响应体。按需创建时只有vault对象,包周期创建时只有orders,retCode,errText,error_code对象。

400

Bad Request

错误码

请参见错误码