文档首页/ 云备份 CBR/ API参考/ API/ 存储库/ 创建包周期存储库
更新时间:2025-07-12 GMT+08:00
分享

创建包周期存储库

功能介绍

创建包周期存储库

URI

POST /v3/{project_id}/vaults/order

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

项目ID

获取方法请参见"获取项目ID"。

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

用户Token。

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

表3 请求Body参数

参数

是否必选

参数类型

描述

vault

VaultOrder object

存储库

表4 VaultOrder

参数

是否必选

参数类型

描述

name

String

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

billing

BillingCreate object

创建存储库运营参数

resources

Array of ResourceCreate objects

绑定的备份资源,未在创建时绑定资源填[]

description

String

描述

最小长度:0

最大长度:255

backup_policy_id

String

备份策略ID,默认值为null,不自动备份。

获取方法请参见"获取备份策略ID"。

tags

Array of Tag objects

标签列表 tags不允许为空列表。 tags中最多包含10个key。 tags中key不允许重复。

enterprise_project_id

String

企业项目ID,默认为‘0’。

获取方法请参见"获取企业项目ID"。

auto_bind

Boolean

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

取值范围:

  • true:支持自动挂载

  • false:不支持自动挂载

bind_rules

VaultBindRules object

自动挂载的规则

threshold

Integer

功能说明:存储库容量阈值,存储库已用容量和总容量的百分比超过该值,如果smn_notify为开,将发送相关通知。

取值范围:[1, 100],默认值为80

smn_notify

Boolean

功能说明:是否发送smn通知开关,默认为true

取值范围:

  • true:发送smn通知

  • false:不发送smn通知

parameters

VaultCreateParameters object

存储库订单联合参数

auto_expand

Boolean

功能说明:是否开启存储库自动扩容能力(只支持按需存储库),默认为false。

取值范围:

  • true:支持自动扩容;

  • false:不支持自动扩容。

locked

Boolean

功能说明:用于标识当前存储库是否已锁定,锁定的存储库不支持解锁。

关于备份锁定的详细信息,请参考"开启备份锁定"。

取值范围:

  • true:锁定存储库

  • false:不锁定存储库

表5 BillingCreate

参数

是否必选

参数类型

描述

cloud_type

String

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

public:公有云; hybrid: 混合云

consistent_level

String

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

object_type

String

对象类型,支持"server", "disk", "turbo", "workspace", "vmware", "rds"和"file"共七种。server:云服务器,disk:云硬盘,turbo:文件系统,workspace:云桌面,vmware:VMware,rds:关系型数据库,file:文件

protect_type

String

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

backup:备份,replication:复制

size

Integer

资源容量大小,单位GB,取值范围:10-10485760

charging_mode

String

description: |-

功能说明:计费模式。默认值为post_paid。取值范围:post_paid:按需,pre_paid:包年包月

period_type

String

功能说明:订购周期单位。charging_mode参数为pre_paid时该参数会生效,并且该参数为必选。

取值范围:

  • month:月

  • year:年

period_num

Integer

功能说明:订购周期数,charging_mode为pre_paid时该参数会生效,并且该参数为为必选。

取值范围:[1-9]

is_auto_renew

Boolean

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

取值范围:

  • true:到期后自动续期

  • false:到期后不自动续期

is_auto_pay

Boolean

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

取值范围:

  • true:下单后自动付费

  • false:下单后不自动付费

console_url

String

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

is_multi_az

Boolean

功能说明:存储库是否具有多AZ属性,即底层备份是否为多AZ备份,默认为false

取值范围:

  • true:存储库具有多AZ属性

  • false:存储库不具有多AZ属性

表6 ResourceCreate

参数

是否必选

参数类型

描述

extra_info

ResourceExtraInfo object

资源附加信息

id

String

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

获取方法请参见"查询存储库绑定资源信息","查询资源可保护性"。

type

String

待备份资源的类型: OS::Nova::Server:云服务器; OS::Cinder::Volume:云硬盘;OS::Ironic::BareMetalServer:裸金属服务器;OS::Sfs::Turbo:SFS Turbo文件系统;OS::Workspace::DesktopV2:云桌面

name

String

名称

表7 ResourceExtraInfo

参数

是否必选

参数类型

描述

exclude_volumes

Array of strings

需要排除备份的卷id。仅在多盘备份特性中有效,排除不需要备份的磁盘。当虚拟机新绑定磁盘时,也能继续排除之前设置不用备份的卷。

表8 Tag

参数

是否必选

参数类型

描述

key

String

键。

key最大长度为36个字符。

key不能为空字符串。

key前后空格会被丢弃。

key不能包含非打印字符ASCII(0-31),“=”,“*”,“<”,“>”,“\”,“,”,“|”,“/”。

key只能由中文,字母,数字,“-”,“_”组成。

value

String

值。

添加标签时value值必选,删除标签时value值可选。

value最大长度为43个字符。

value可以为空字符串。

value前后的空格会被丢弃。

value不能包含非打印字符ASCII(0-31),“=”,“*”,“<”,“>”,“\”,“,”,“|”,“/”。

value只能由中文,字母,数字,“-”,“_”,“.”组成。

表9 VaultBindRules

参数

是否必选

参数类型

描述

tags

Array of BindRulesTags objects

按tags过滤自动绑定的资源

最小长度:0

最大长度:5

表10 BindRulesTags

参数

是否必选

参数类型

描述

key

String

key不能包含非打印字符ASCII(0-31),“=”,“*”,“<”,“>”,“\”,“,”,“|”,“/”。

key只能由中文,字母,数字,“-”,“_”组成。

value

String

value不能包含非打印字符ASCII(0-31),“=”,“*”,“<”,“>”,“\”,“,”,“|”,“/”。

value只能由中文,字母,数字,“-”,“_”,“.”组成。

表11 VaultCreateParameters

参数

是否必选

参数类型

描述

combined_order

CombinedOrder object

组合订单。

表12 CombinedOrder

参数

是否必选

参数类型

描述

combined_order_id

String

组合订单 ID

combined_order_ecs_num

Integer

组合订单中 ECS 服务器数量,当前批量最大为 500。

最小值:1

最大值:1000

combined_order_num

Integer

组合订单数量。

最小值:1

最大值:1000

响应参数

状态码:200

表13 响应Body参数

参数

参数类型

描述

orders

Array of CbcOrderResult objects

订单详情

retCode

Integer

创建结果代码

0:成功

errText

String

创建结果信息

error_code

String

操作错误码

0:无错误

表14 CbcOrderResult

参数

参数类型

描述

cloudServiceId

String

云服务ID

orderId

String

订单ID

subscribeResult

Integer

订购结果,1:成功;0:失败

resourceId

String

包周期资源预生成资源id。

状态码:400

表15 响应Body参数

参数

参数类型

描述

error_code

String

请参见错误码

error_msg

String

错误信息

请求示例

  • 创建一个包周期云服务器备份存储库,存储库容量为80G,周期为一个月且绑定一个资源。

    POST https://{endpoint}/v3/f841e01fd2b14e7fa41b6ae7aa6b0594/vaults/order
    
    {
      "vault" : {
        "name" : "vault_name",
        "billing" : {
          "consistent_level" : "app_consistent",
          "object_type" : "server",
          "protect_type" : "backup",
          "size" : 80,
          "charging_mode" : "pre_paid",
          "period_type" : "month",
          "period_num" : 1
        },
        "resources" : [ {
          "id" : "23a320a5-3efd-4568-b1aa-8dd9183cc64c",
          "type" : "OS::Nova::Server"
        } ]
      }
    }
  • 创建一个包周期云服务器备份存储库,存储库容量阈值为80G,云服务器数量为5,周期为一个月同时绑定一个资源并添加标签。

    POST https://{endpoint}/v3/f841e01fd2b14e7fa41b6ae7aa6b0594/vaults/order
    
    {
      "vault" : {
        "name" : "123",
        "description" : "description",
        "backup_policy_id" : "70e9c916-7109-472d-94e7-120900e4ba61",
        "tags" : [ {
          "key" : "key",
          "value" : "value"
        } ],
        "auto_bind" : false,
        "threshold" : 80,
        "smn_notify" : true,
        "parameters" : {
          "combined_order" : {
            "combined_order_id" : "CS2303030959MR1IT",
            "combined_order_ecs_num" : 5,
            "combined_order_num" : 5
          }
        },
        "bind_rules" : {
          "tags" : [ {
            "key" : "bind_rules_key",
            "value" : "bind_rules_value"
          } ]
        },
        "billing" : {
          "cloud_type" : "public",
          "is_auto_renew" : false,
          "is_auto_pay" : false,
          "console_url" : "https://www.com",
          "consistent_level" : "app_consistent",
          "object_type" : "server",
          "protect_type" : "backup",
          "size" : 80,
          "charging_mode" : "pre_paid",
          "period_type" : "month",
          "period_num" : 1
        },
        "resources" : [ {
          "id" : "8ef08ba1-81f7-4e41-ae49-d3e2fb0ba388",
          "type" : "OS::Nova::Server",
          "name" : "server_name",
          "extra_info" : {
            "exclude_volumes" : [ "1855eb9a-2b5e-4938-a9f0-aea08b6f9243" ]
          }
        } ]
      }
    }

响应示例

状态码:200

OK

{
  "orders" : [ {
    "orderId" : "CS2303030941NJJIW",
    "cloudServiceId" : "cbr",
    "subscribeResult" : 1,
    "resourceId" : "ef3bf6bb-1ffb-46c0-8b23-f935ded5024a"
  } ],
  "retCode" : 0,
  "errText" : "success",
  "error_code" : 0
}

状态码

状态码

描述

200

OK

400

Bad Request

错误码

请参见错误码

相关文档