文档首页 > > API参考> API> 存储库> 创建存储库

创建存储库

分享
更新时间: 2020/06/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

描述

缺省值:''

最小长度:0

最大长度:64

name

String

存储库名称

最小长度:1

最大长度:64

resources

Array of ResourceCreate objects

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

tags

Array of Tag objects

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

enterprise_project_id

String

企业项目ID

auto_bind

Boolean

是否支持自动挂载。ture:支持自动挂载,false:不支持自动挂载

bind_rules

Object

表5 BillingCreate

参数

是否必选

参数类型

描述

cloud_type

String

云平台,云平台,公有云或者混合云

枚举值:

  • public

  • hybrid

consistent_level

String

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

枚举值:

  • app_consistent

  • crash_consistent

object_type

String

对象类型:云服务器(server),云硬盘(disk)。

枚举值:

  • server

  • disk

protect_type

String

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

枚举值:

  • backup

  • replication

size

Integer

容量,单位GB

最小值:1

最大值:10485760

charging_mode

String

创建模式,按需:post_paid,包周期:pre_paid,默认为post_paid

缺省值:post_paid

枚举值:

  • post_paid

  • pre_paid

period_type

String

创建类型,按年(year)或者按月(month)

枚举值:

  • year

  • month

period_num

Integer

创建类型的数量

is_auto_renew

Boolean

到期后是否自动续期,默认不续期

缺省值:false

is_auto_pay

Boolean

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

缺省值:false

console_url

String

跳转URL

最小长度:1

最大长度:255

extra_info

BillbingCreateExtraInfo object

创建参数扩展信息

表6 BillbingCreateExtraInfo

参数

是否必选

参数类型

描述

combined_order_id

String

组合创建ID,组合创建时必传。

combined_order_ecs_num

Integer

组合创建数量,组合创建时必填。

表7 ResourceCreate

参数

是否必选

参数类型

描述

extra_info

ResourceExtraInfo object

资源附加信息

id

String

待备份资源id

type

String

待备份资源的类型,如:"OS::Nova::Server","OS::Ironic::BareMetalServer","OS::Cinder::Volume"

枚举值:

  • OS::Nova::Server

  • OS::Cinder::Volume

  • OS::Ironic::BareMetalServer

name

String

名称

最小长度:0

最大长度:255

表8 ResourceExtraInfo

参数

是否必选

参数类型

描述

exclude_volumes

Array of strings

需要排除备份的卷id。仅虚拟机磁盘级备份有效

include_volumes

Array of ResourceExtraInfoIncludeVolumes objects

要备份的卷

表9 ResourceExtraInfoIncludeVolumes

参数

是否必选

参数类型

描述

id

String

卷ID,仅支持uuid

os_version

String

操作系统类型

表10 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 时:

表11 响应Body参数

参数

参数类型

描述

vault

VaultGet object

存储库查询返回对象

表12 VaultGet

参数

参数类型

描述

billing

Billing object

运营信息

description

String

存储库自定义描述信息。

最小长度:0

最大长度:255

id

String

保管库ID

name

String

保管库名称

最小长度:1

最大长度:64

project_id

String

项目ID

provider_id

String

保管库类型

resources

Array of ResourceResp objects

存储库资源

tags

Array of Tag objects

存储库标签

enterprise_project_id

String

企业项目id

auto_bind

String

是否自动绑定

bind_rules

String

绑定规则

user_id

String

用户id

created_at

String

创建时间

auto_bind

Boolean

是否自动绑定

billing

Billing object

created_at

String

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

description

String

描述

enterprise_project_id

String

企业项目id

id

String

保管库id

name

String

保管库名称

project_id

String

项目id

provider_id

String

resources

VaultResourceIntancesResp object

资源

tags

TagsResp object

标签

updated_at

String

更新时间,例如:"2020-02-05T10:38:34.209782"

user_id

String

用户id

version

String

版本

表13 Billing

参数

参数类型

描述

allocated

Integer

已分配容量,单位MB

charging_mode

String

创建模式

枚举值:

  • pre_paid

  • post_paid

cloud_type

String

云平台

枚举值:

  • public

  • hybrid

consistent_level

String

备份规格

枚举值:

  • crash_consistent

  • app_consistent

object_type

String

对象类型

枚举值:

  • server

  • disk

order_id

String

订单ID

product_id

String

产品ID

protect_type

String

保护类型

枚举值:

  • backup

  • replication

  • hybrid

size

Integer

容量,单位GB

最小值:1

最大值:10485760

spec_code

String

规格编码

枚举值:

  • vault.backup.server.normal

  • vault.backup.volume.normal

status

String

保管库状态

枚举值:

  • available

  • lock

  • frozen

  • deleting

  • error

storage_unit

String

存储库桶名

used

Integer

已使用容量,单位MB

frozen_scene

String

冻结场景

表14 VaultResourceIntancesResp

参数

参数类型

描述

resources

Array of TagResource objects

符合查询条件的资源列表(action为count时无此参数)。

total_count

Integer

符合查询条件的资源总个数

表15 TagResource

参数

参数类型

描述

resource_id

String

资源ID

resource_detail

Array of Vault objects

资源详情

tags

Array of Tag objects

标签列表 没有标签默认为空数字。

resource_name

String

资源名称

sys_tags

Array of SysTag objects

仅op_service权限才可以可以获取此字段:

目前只包含一个resource_tag 结构体。

key:_sys_enterprise_project_id

value:企业项目id,0表示默认企业项目

非op_service场景不能返回此字段。

表16 Vault

参数

参数类型

描述

billing

Billing object

运营信息

description

String

存储库自定义描述信息。

最小长度:0

最大长度:255

id

String

保管库ID

name

String

保管库名称

最小长度:1

最大长度:64

project_id

String

项目ID

provider_id

String

保管库类型

resources

Array of ResourceResp objects

存储库资源

tags

Array of Tag objects

存储库标签

enterprise_project_id

String

企业项目id

auto_bind

String

是否自动绑定

bind_rules

String

绑定规则

user_id

String

用户id

created_at

String

创建时间

表17 ResourceResp

参数

参数类型

描述

extra_info

ResourceExtraInfo 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

backup_size

String

副本大小

backup_count

String

副本数量

表18 ResourceExtraInfo

参数

参数类型

描述

exclude_volumes

Array of strings

需要排除备份的卷id。仅虚拟机磁盘级备份有效

include_volumes

Array of ResourceExtraInfoIncludeVolumes objects

要备份的卷

表19 ResourceExtraInfoIncludeVolumes

参数

参数类型

描述

id

String

卷ID,仅支持uuid

os_version

String

操作系统类型

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

表21 SysTag

参数

参数类型

描述

key

String

键。 系统标签的key,从白名单中取,不能随意定义。 目前仅支持 _sys_enterprise_project_id字段,对应 的value为企业项目ID。

value

String

值。 目前仅会用到企业项目ID,其中默 认的企业项目ID为“0”。

表22 TagsResp

参数

参数类型

描述

key

String

键。

key最大长度36个字符。

key不能为空字符串。

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

values

String

值列表。

value最大长度43个字符。

value可以为空字符串。

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

状态码为 400 时:

表23 响应Body参数

参数

参数类型

描述

error_code

String

请参见错误码

error_msg

String

错误信息

请求示例

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&locale=zh-cn#/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"
    } ],
    "tags" : [ {
      "key" : "key01",
      "value" : "value01"
    } ],
    "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" : {
      "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.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 时:

{
  "error_code" : "string",
  "error_msg" : "string"
}

状态码

状态码

描述

200

OK

400

Bad Request

错误码

请参见错误码

分享:

    相关文档

    相关产品

文档是否有解决您的问题?

提交成功!

非常感谢您的反馈,我们会继续努力做到更好!

反馈提交失败,请稍后再试!

*必选

请至少选择或填写一项反馈信息

字符长度不能超过200

提交反馈 取消

如您有其它疑问,您也可以通过华为云社区问答频道来与我们联系探讨

智能客服提问云社区提问