创建存储库
功能介绍
创建存储库
请求参数
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
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 |
存储库使用是否允许超出容量,只有创建包周期存储库时才允许该值为 true |
sys_lock_source_service |
否 |
String |
用于标识SMB服务,支持传入SMB和空,默认值为空 SMB:标识为SMB服务调用 空字符串:表示为普通服务调用 |
locked |
否 |
Boolean |
功能说明:用于标识当前存储库是否已锁定,锁定的存储库不支持解锁。 关于备份锁定的详细信息,请参考"开启备份锁定"。 取值范围: |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
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 |
名称 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
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 |
存储库自定义描述信息。 |
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,默认为‘0’。 获取方法请参见"获取企业项目ID"。 |
auto_bind |
Boolean |
功能说明:是否支持自动挂载。默认为false。 取值范围: |
bind_rules |
VaultBindRules object |
绑定规则 |
user_id |
String |
用户id |
created_at |
String |
创建时间,例如:"2020-02-05T10:38:34.209782" |
auto_expand |
Boolean |
功能说明:是否开启存储库自动扩容能力(只支持按需存储库),默认为false。取值范围:true:支持自动扩容;false:不支持自动扩容。 |
smn_notify |
Boolean |
功能说明:是否发送smn通知开关,默认为true 取值范围: |
threshold |
Integer |
功能说明:存储库容量阈值,存储库已用容量和总容量的百分比超过该值,如果smn_notify为开,将发送相关通知。 取值范围:[1, 100],默认值为80 |
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 |
功能说明:用于标识当前存储库是否已锁定,锁定的存储库不支持解锁。 关于备份锁定的详细信息,请参考"开启备份锁定"。 取值范围: |
参数 |
参数类型 |
描述 |
---|---|---|
allocated |
Integer |
已分配容量,单位GB |
charging_mode |
String |
功能说明:计费模式。默认值为post_paid。取值范围:post_paid:按需,pre_paid:包年包月 |
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:文件 |
order_id |
String |
订单ID |
product_id |
String |
产品ID |
protect_type |
String |
保护类型,取值范围如下: backup:备份,replication:复制 |
size |
Integer |
容量,单位GB |
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备份,默认为false 取值范围: |
参数 |
参数类型 |
描述 |
---|---|---|
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 |
错误码
请参见错误码。