创建存储库
功能介绍
创建存储库
URI
POST /v3/{project_id}/vaults
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
project_id |
是 |
String |
项目ID,默认取值不涉及。 获取方法请参见"获取项目ID"。 |
请求参数
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
X-Auth-Token |
是 |
String |
用户Token,通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。默认取值不涉及。 |
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
vault |
是 |
VaultCreate object |
存储库创建参数 |
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
backup_policy_id |
否 |
String |
备份策略ID,用于指定自动备份时的备份策略。默认值为null。 获取方法请参见"获取备份策略ID"。 |
|
billing |
是 |
BillingCreate object |
创建存储库运营参数 |
|
description |
否 |
String |
存储库的描述。不能包含“<”,“>”,最大支持255个字符。默认取值不涉及。 |
|
name |
是 |
String |
存储库名称,最大支持64字符,只能由中文、字母、数字、“_”、“-”组成。默认取值不涉及。 |
|
resources |
是 |
Array of ResourceCreate objects |
绑定的备份资源,未在创建时绑定资源填[],最大支持同时绑定255个资源。默认取值不涉及。 |
|
tags |
否 |
Array of Tag objects |
标签列表,默认取值不涉及。 约束限制: tags中最多包含10个key。 |
|
enterprise_project_id |
否 |
String |
企业项目ID,默认为‘0’。默认取值不涉及。 获取方法请参见"获取企业项目ID"。 |
|
auto_bind |
否 |
Boolean |
功能说明:是否支持自动挂载。默认为false。 取值范围: |
|
bind_rules |
否 |
VaultBindRules object |
自动挂载的规则 |
|
auto_expand |
否 |
Boolean |
功能说明:是否开启存储库自动扩容能力(只支持按需存储库),默认为false。取值范围:true:支持自动扩容;false:不支持自动扩容。 |
|
threshold |
否 |
Integer |
功能说明:存储库容量阈值,存储库已用容量和总容量的百分比超过该值,如果smn_notify为开,将发送相关通知。 取值范围:[1, 100],默认值为80。 |
|
smn_notify |
否 |
Boolean |
功能说明:是否发送smn通知开关,默认为true 取值范围: |
|
backup_name_prefix |
否 |
String |
功能说明:备份名称前缀,设置后该存储库自动备份产生的备份副本都将携带该备份名称前缀。 取值范围:最大支持32个字符。默认取值不涉及。 |
|
demand_billing |
否 |
Boolean |
功能说明:存储库使用是否允许超出容量,默认值为false,只有创建包周期存储库时才允许该值为true。 取值范围: |
|
sys_lock_source_service |
否 |
String |
功能说明:用于标识SMB服务,支持传入SMB和空,默认值为空 取值范围: |
|
locked |
否 |
Boolean |
功能说明:用于标识当前存储库是否已锁定,锁定的存储库不支持解锁。默认值为false。 关于备份锁定的详细信息,请参考"开启备份锁定"。 取值范围: |
|
availability_zone |
否 |
String |
存储库可用区信息,最大支持32字符。 |
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
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时该参数会生效,并且该参数为必选。默认取值不涉及。 取值范围: |
|
period_num |
否 |
Integer |
功能说明:订购周期数,charging_mode为pre_paid时该参数会生效,并且该参数为为必选。默认取值不涉及。 取值范围:[1-9] |
|
is_auto_renew |
否 |
Boolean |
功能说明:到期后是否自动续期,默认为false 取值范围: |
|
is_auto_pay |
否 |
Boolean |
功能说明:是否是否自动付费,默认为false 取值范围: |
|
console_url |
否 |
String |
云服务console_url。 订购订单支付完成后,客户可以通过此URL跳转到云服务Console页面查看信息。(仅手动支付时涉及)。默认取值不涉及。 |
|
is_multi_az |
否 |
Boolean |
功能说明:存储库是否具有多AZ属性,即底层备份是否为多AZ备份,默认为false 取值范围: |
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
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 |
资源名称,长度限制:0-255字符。默认取值不涉及。 |
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
exclude_volumes |
否 |
Array of strings |
需要排除备份的卷id。仅在多盘备份特性中有效,排除不需要备份的磁盘。当虚拟机新绑定磁盘时,也能继续排除之前设置不用备份的卷。默认取值不涉及。 |
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
key |
是 |
String |
键。默认取值不涉及。 key最大长度为36个字符。 key不能为空字符串。 key前后空格会被丢弃。 key不能包含非打印字符ASCII(0-31),“=”,“*”,“<”,“>”,“\”,“,”,“|”,“/”。 key只能由中文,字母,数字,“-”,“_”组成。 |
|
value |
是 |
String |
值。默认取值不涉及。 添加标签时value值必选,删除标签时value值可选。 value最大长度为43个字符。 value可以为空字符串。 value前后的空格会被丢弃。 value不能包含非打印字符ASCII(0-31),“=”,“*”,“<”,“>”,“\”,“,”,“|”,“/”。 value只能由中文,字母,数字,“-”,“_”,“.”组成。 |
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
tags |
否 |
Array of BindRulesTags objects |
按tags过滤自动绑定的资源 最小长度:0 最大长度:5 |
响应参数
状态码:200
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
vault |
VaultCreateResource object |
存储库查询返回对象(仅按需创建时显示) |
|
orders |
Array of CbcOrderResult objects |
包周期创建订单信息(仅包周期创建时显示) |
|
retCode |
Integer |
包周期订购结果(仅包周期创建时显示) |
|
errText |
String |
包周期创建错误信息(仅包周期创建时显示) |
|
error_code |
String |
包周期创建错误码(仅包周期创建时显示) |
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
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 |
存储库标签 |
|
enterprise_project_id |
String |
企业项目ID。 获取方法请参见"获取企业项目ID"。 |
|
auto_bind |
Boolean |
功能说明:是否支持自动挂载。 取值范围: |
|
bind_rules |
VaultBindRules object |
绑定规则 |
|
user_id |
String |
用户id,取值范围不涉及。 |
|
created_at |
String |
创建时间,例如:"2020-02-05T10:38:34.209782",取值范围不涉及。 |
|
auto_expand |
Boolean |
功能说明:是否开启存储库自动扩容能力(只支持按需存储库)。取值范围:true:支持自动扩容;false:不支持自动扩容。 |
|
smn_notify |
Boolean |
功能说明:是否发送smn通知开关。 取值范围: |
|
threshold |
Integer |
功能说明:存储库容量阈值,存储库已用容量和总容量的百分比超过该值,如果smn_notify为开,将发送相关通知。 取值范围:[1, 100]。 |
|
backup_name_prefix |
String |
备份名称前缀,设置后该存储库自动备份产生的备份副本都将携带该备份名称前缀。最大支持32个字符。 |
|
demand_billing |
Boolean |
是否允许使用超出存储库容量 |
|
cbc_delete_count |
Integer |
存储库删除次数,取值范围不涉及。 |
|
frozen |
Boolean |
存储库是否冻结 |
|
sys_lock_source_service |
String |
用于标识SMB服务,支持传入SMB和空。 SMB:标识为SMB服务调用 空字符串:表示为普通服务调用 |
|
locked |
Boolean |
功能说明:用于标识当前存储库是否已锁定,锁定的存储库不支持解锁。 关于备份锁定的详细信息,请参考"开启备份锁定"。 取值范围: |
|
availability_zone |
String |
存储库可用区信息,最大支持32字符。 |
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
allocated |
Integer |
已分配容量,单位GB。取值范围:10-10485760。 |
|
charging_mode |
String |
功能说明:计费模式。取值范围:post_paid:按需,pre_paid:包年包月 |
|
cloud_type |
String |
云类型,支持类型如下。 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:文件。 |
|
order_id |
String |
订单ID,UUID格式。 |
|
product_id |
String |
产品ID,UUID格式。 |
|
protect_type |
String |
保护类型,取值范围如下: backup:备份,replication:复制 |
|
size |
Integer |
容量,单位GB。取值范围:10-10485760。 |
|
spec_code |
String |
规格编码,取值范围如下: 云服务备份存储库:vault.backup.server.normal;云硬盘备份存储库:vault.backup.volume.normal;文件备份存储库:vault.backup.turbo.normal |
|
status |
String |
存储库状态,取值范围如下: |
|
storage_unit |
String |
存储库桶名,取值范围不涉及。 |
|
used |
Integer |
已使用容量,单位MB,取值范围不涉及。 |
|
frozen_scene |
String |
冻结场景,取值范围如下: |
|
is_multi_az |
Boolean |
功能说明:存储库是否具有多AZ属性,即底层备份是否为多AZ备份。 取值范围: |
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
extra_info |
ResourceExtraInfo object |
资源附加信息 |
|
id |
String |
待备份资源id,需要该资源已经绑定到该存储库中,且属于可备份的状态。 获取方法请参见"查询存储库绑定资源信息","查询资源可保护性"。 |
|
name |
String |
待备份资源名称,长度限制:0-255字符。 |
|
protect_status |
String |
保护状态,取值范围如下: |
|
size |
Integer |
资源已分配容量,单位为GB,取值范围不涉及。 |
|
type |
String |
待备份资源的类型: OS::Nova::Server:云服务器; OS::Cinder::Volume:云硬盘;OS::Ironic::BareMetalServer:裸金属服务器;OS::Sfs::Turbo:SFS Turbo文件系统;OS::Workspace::DesktopV2:云桌面。 |
|
backup_size |
Integer |
备份副本大小。单位GB。取值范围不涉及。 |
|
backup_count |
Integer |
副本数量,取值范围不涉及。 |
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
exclude_volumes |
Array of strings |
需要排除备份的卷id。仅在多盘备份特性中有效,排除不需要备份的磁盘。当虚拟机新绑定磁盘时,也能继续排除之前设置不用备份的卷。默认取值不涉及。 |
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
key |
String |
键。默认取值不涉及。 key最大长度为36个字符。 key不能为空字符串。 key前后空格会被丢弃。 key不能包含非打印字符ASCII(0-31),“=”,“*”,“<”,“>”,“\”,“,”,“|”,“/”。 key只能由中文,字母,数字,“-”,“_”组成。 |
|
value |
String |
值。默认取值不涉及。 添加标签时value值必选,删除标签时value值可选。 value最大长度为43个字符。 value可以为空字符串。 value前后的空格会被丢弃。 value不能包含非打印字符ASCII(0-31),“=”,“*”,“<”,“>”,“\”,“,”,“|”,“/”。 value只能由中文,字母,数字,“-”,“_”,“.”组成。 |
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
key |
String |
key不能包含非打印字符ASCII(0-31),“=”,“*”,“<”,“>”,“\”,“,”,“|”,“/”。默认取值不涉及。 key只能由中文,字母,数字,“-”,“_”组成。 |
|
value |
String |
value不能包含非打印字符ASCII(0-31),“=”,“*”,“<”,“>”,“\”,“,”,“|”,“/”。默认取值不涉及。 value只能由中文,字母,数字,“-”,“_”,“.”组成。 |
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
cloudServiceId |
String |
云服务ID,取值范围不涉及,默认取值不涉及。 |
|
orderId |
String |
订单ID,取值范围不涉及,默认取值不涉及。 |
|
subscribeResult |
Integer |
订购结果,取值范围:1:成功;0:失败。默认取值不涉及。 |
|
resourceId |
String |
包周期资源预生成资源id。取值范围不涉及,默认取值不涉及。 |
状态码:400
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
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®ion=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" } } -
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 |
错误码
请参见错误码。