• 沒有找到結果。

4.4 存储库

4.4.1 创建存储库

功能介绍

创建存储库

调试

您可以在API Explorer中调试该接口。

URI

POST /v3/{project_id}/vaults

4-102 路径参数

参数 是否必选 参数类型 描述

project_id 是 String 项目ID

请求参数

4-103 请求 Header 参数

参数 是否必选 参数类型 描述

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

4-104 请求 Body 参数

参数 是否必选 参数类型 描述

vault 是 VaultCreate

object 存储库创建参数

4-105 VaultCreate

参数 是否必选 参数类型 描述

backup_policy

_id 否 String 备份策略ID,不设置时为null,

不自动备份。

billing 是 BillingCreate

object 创建参数信息

description 否 String 描述

最小长度:0 最大长度:64

name 是 String 存储库名称

最小长度:1 最大长度:64 resources 是 Array of

ResourceRes p objects

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

tags 否 Array of Tag

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

tags中key不允许重复。

enterprise_pro

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

auto_bind 否 Boolean 是否支持自动挂载。

bind_rules 否 VaultBindRul

es object 自动挂载的规则

auto_expand 否 Boolean 是否开启存储库自动扩容能力

(只支持按需存储库)。

4-106 BillingCreate

参数 是否必选 参数类型 描述

cloud_type 否 String 公有云:public ;混合云:hybrid consistent_lev

el 是 String 规格,崩溃一致性

(crash_consistent)或应用一 致性(app_consistent)

object_type 是 String 对象类型:云服务器

(server),云硬盘(disk),

文件系统(turbo)。

protect_type 是 String 保护类型:备份(backup)、

复制(replication)。

参数 是否必选 参数类型 描述

size 是 Integer 容量,单位GB

最小值:1

最大值:10485760 charging_mod

e 否 String 创建模式,按需:post_paid,

包周期:pre_paid,默认为 post_paid

缺省值:post_paid

period_type 否 String 创建类型,charging_mode为 pre_paid必填,按年(year)或者 按月(month)

枚举值:

● year

● month

period_num 否 Integer 创建类型的数量,

charging_mode为pre_paid必填 is_auto_renew 否 Boolean 到期后是否自动续期,默认不续

缺省值:false

is_auto_pay 否 Boolean 是否自动付费,默认为不自动付 费

缺省值:false console_url 否 String 跳转URL

最小长度:1 最大长度:255 extra_info 否 BillbingCreat

eExtraInfo object

创建参数扩展信息

4-107 BillbingCreateExtraInfo

参数 是否必选 参数类型 描述

combined_ord

er_id 否 String 组合创建ID,组合创建时必传。

combined_ord

er_ecs_num 否 Integer 组合创建数量,组合创建时必 填。

4-108 ResourceResp

参数 是否必选 参数类型 描述

extra_info 否 ResourceExtr

aInfo object 资源附加信息

id 是 String 待备份资源id

name 是 String 待备份资源名称

最小长度:0 最大长度:255 protect_status 否 String 保护状态

枚举值:

● available

● error

● protecting

● restoring

● removing

size 否 Integer 资源已分配容量,单位为GB

type 是 String 待备份资源的类型: backup_size 否 Integer 副本大小 backup_count 否 Integer 副本数量

4-109 ResourceExtraInfo

参数 是否必选 参数类型 描述

4-110 ResourceExtraInfoIncludeVolumes

参数 是否必选 参数类型 描述

id 是 String 卷ID,仅支持uuid

os_version 否 String 操作系统类型

4-111 VaultBindRules

参数 是否必选 参数类型 描述

tags 否 Array of Tag

objects 按tags过滤自动绑定的资源

4-112 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只能由中文,字母,数 字,“-”,“_”,“.”组成。

响应参数

状态码: 200

4-113 响应 Body 参数

参数 参数类型 描述

vault Vault object 存储库查询返回对象

4-114 Vault

参数 参数类型 描述

billing Billing object 运营信息

description String 存储库自定义描述信息。

最小长度:0 最大长度:255

id String 存储库ID

name String 存储库名称

最小长度:1 最大长度:64 project_id String 项目ID

provider_id String 存储库资源类型id resources Array of

ResourceRes p objects

存储库资源

tags Array of Tag

objects 存储库标签 enterprise_pro

ject_id String 企业项目id,默认为‘0’。

auto_bind Boolean 是否自动绑定,默认为false,不支持。

bind_rules VaultBindRul

es object 绑定规则 user_id String 用户id

created_at String 创建时间,例如:"2020-02-05T10:38:34.209782"

auto_expand Boolean 是否开启存储库自动扩容能力(只支持按需存储 库)。

smn_notify Boolean 存储库smn消息通知开关 缺省值:true

参数 参数类型 描述

threshold Integer 存储库容量阈值,已用容量占总容量达到此百分 比即发送相关通知

最小值:1 最大值:100 缺省值:80

4-115 Billing

参数 参数类型 描述

allocated Integer 已分配容量,单位GB charging_mod

e String 创建模式,按需:post_paid,包周期:

pre_paid,默认为post_paid cloud_type String 公有云:public ;混合云:hybrid consistent_lev

el String 规格,崩溃一致性(crash_consistent)或应用一 致性(app_consistent)

object_type String 对象类型:云服务器(server),云硬盘

(disk),文件系统(turbo)。

order_id String 订单ID product_id String 产品ID

protect_type String 保护类型:备份(backup)、复制 (replication)。

size Integer 容量,单位GB

最小值:1

最大值: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 冻结场景

4-116 ResourceResp

参数 参数类型 描述

extra_info ResourceExtr

aInfo object 资源附加信息

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::Ironic::BareMetalServer, OS::Native::Server, OS::Sfs::Turbo

backup_size Integer 副本大小 backup_count Integer 副本数量

4-117 ResourceExtraInfo

参数 参数类型 描述

include_volu

mes Array of ResourceExtr aInfoInclude Volumes objects

指定需要备份的卷,若有指定值,则每次备份都只 备份指定的卷,如虚拟机绑定存储库之后新绑定 的卷不会备份;若为空默认为资源全部卷;仅虚 拟机磁盘级备份特性中有效。

4-118 ResourceExtraInfoIncludeVolumes

参数 参数类型 描述

id String 卷ID,仅支持uuid

os_version String 操作系统类型

4-119 VaultBindRules

参数 参数类型 描述

tags Array of Tag

objects 按tags过滤自动绑定的资源

4-120 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只能由中文,字母,数字,“-”,“_”,

“.”组成。

状态码: 400

4-121 响应 Body 参数

参数 参数类型 描述

error_code String 请参见错误码。

error_msg String 错误信息

请求示例

● 创建云硬盘存储库,只包含必备参数

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,

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" : {

"include_volumes" : [ {

"id" : "73ee8446-bce7-4371-9650-b440b5f4c1d0", "os_version" : "CentOS 7.6 64bit"

} ] },

"id" : "23a320a5-3efd-4568-b1aa-8dd9183cc64c", "type" : "OS::Nova::Server"

"enterprise_project_id" : "0"

}}

响应示例

状态码: 200 OK

{ "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" : {

"spec_code" : "vault.backup.server.normal", "size" : 100,

"cloud_type" : "public", "product_id" : null,

"consistent_level" : "crash_consistent", "storage_unit" : null,

"charging_mode" : "post_paid"

},

"created_at" : "2019-05-23T12:51:10.071232", "project_id" : "fc347bc64ccd4589ae52e4f44b7433c7", "resources" : [ {

"name" : "ecs-b977-0002", "backup_size" : 0,

"protect_status" : "available", "backup_count" : 0,

"extra_info" : {

"include_volumes" : [ {

"os_version" : "CentOS 7.6 64bit",

"id" : "73ee8446-bce7-4371-9650-b440b5f4c1d0"

} ] },

"type" : "OS::Nova::Server",

"id" : "23a320a5-3efd-4568-b1aa-8dd9183cc64c", "size" : 40

400 Bad Request

错误码

请参见错误码。