4.8 标签
4.8.1 查询存储库资源实例
功能介绍
使用标签过滤实例 标签管理服务需要提供按标签过滤各服务实例并汇总显示在列表 中,需要各服务提供查询能力
调试
您可以在API Explorer中调试该接口。
URI
POST /v3/{project_id}/vault/resource_instances/action
表4-304 路径参数
参数 是否必选 参数类型 描述
project_id 是 String 项目id
请求参数
表4-305 请求 Body 参数
参数 是否必选 参数类型 描述
without_any_t
ag 否 Boolean 不包含任意一个标签,该字段为
true时查询所有不带标签的资 源,此时忽略 “tags”、
“tags_any”、“not_tags”、
“not_tags_any”字段。
tags 否 Array of
TagsReq objects
包含标签。
tags不允许为空列表。
tags中最多包含10个key。
tags中key不允许重复。
tags中多个key之间是“与”的 关系。
结果返回包含所有标签的资源列 表,key之间是与的关系,key-value结构中value是或的关系。
无过滤条件时返回全量数据。
参数 是否必选 参数类型 描述 tags_any 否 Array of
TagsReq objects
包含任一标签。
tags不允许为空列表。
tags中最多包含10个key。
tags中key不允许重复。
结果返回包含任一标签的资源列 表,key之间是或的关系,key-value结构中value是或的关系。
无过滤条件时返回全量数据。
not_tags 否 Array of TagsReq objects
不包含标签。
tags不允许为空列表。
tags中最多包含10个key。
tags中key不允许重复。
结果返回不包含所有标签的资源 列表,key之间是与的关系,
key-value结构中value是或的关 系。
无过滤条件时返回全量数据。
not_tags_any 否 Array of TagsReq objects
不包含任一标签。
tags不允许为空列表。
tags中最多包含10个key。
tags中key不允许重复。
结果返回不包含任一标签的资源 列表,key之间是或的关系,
key-value结构张value是或的关 系。
无过滤条件时返回全量数据。
参数 是否必选 参数类型 描述 sys_tags 否 Array of
SysTags
● values:企业项目id列表 目前TMS调用时,key下面只包
limit 否 String 查询记录数(action为count时 无此参数)如果action为filter 时,默认为1000,limit最小值 为1,limit最大值为1000, 不在 范围内报错。返回的结果中记录 数不超过limit。
offset 否 String 索引位置(action为count时无 此参数)如果action为filter时,
默认为0,offset最小值为0。返 回的结果中第一条记录为符合查 询条件的第offset+1条记录。
action 是 String 操作标识取值范围为:"filter",
"count"。如果是filter就是分页 查询,如果是count只需按照条 件将总条数返回即可
matches 否 Array of Match objects
资源本身支持的查询条件。
matches不允许为空列表。
matches中key不允许重复。
cloud_type 否 String 云类型
枚举值:
● public
● hybrid
参数 是否必选 参数类型 描述 object_type 否 String 资源类型
枚举值:
● server
● disk
表4-306 TagsReq
参数 是否必选 参数类型 描述
key 是 String 键。
最大长度127个unicode字符。
不允许为空字符串。
前后的空格会被丢弃。
values 是 Array of
strings 值列表。
values中最多包含10个value。
表4-307 SysTags
参数 是否必选 参数类型 描述
key 是 String 键。 系统标签的key,从白名单
中取,不能随意定义。 目前仅 支持 _sys_enterprise_project_id 字段,对应 的value为企业项目 ID。
values 是 Array of
strings 值列表。 目前仅会用到企业项 目ID,其中默 认的企业项目ID 为“0”。
表4-308 Match
参数 是否必选 参数类型 描述
key 是 String 键。 key取值范围为:
"resource_name",资源名称
value 是 String 值。 最大长度255个字符。 key
为"resource_name"时,value 为空字符串时精确匹配,为非空 字符串时模糊匹配。
响应参数
状态码: 200
表4-309 响应 Body 参数
参数 参数类型 描述
resources Array of TagResource objects
符合查询条件的资源列表(action为count时无此 参数)。
total_count Integer 符合查询条件的资源总个数
表4-310 TagResource
参数 参数类型 描述
resource_id String 资源ID resource_deta
il Array of
Vault objects 资源详情 tags Array of Tag
objects 标签列表 没有标签默认为空数字。
resource_nam
e String 资源名称
sys_tags Array of SysTag objects
仅op_service权限才可以获取此字段:
目前只包含一个resource_tag 结构体。
key:_sys_enterprise_project_id
value:企业项目id,0表示默认企业项目 非op_service场景不能返回此字段。
表4-311 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-312 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-313 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-314 ResourceExtraInfo
参数 参数类型 描述
include_volu
mes Array of ResourceExtr aInfoInclude Volumes objects
指定需要备份的卷,若有指定值,则每次备份都只 备份指定的卷,如虚拟机绑定存储库之后新绑定 的卷不会备份;若为空默认为资源全部卷;仅虚 拟机磁盘级备份特性中有效。
表4-315 ResourceExtraInfoIncludeVolumes
参数 参数类型 描述
id String 卷ID,仅支持uuid
os_version String 操作系统类型
表4-316 VaultBindRules
参数 参数类型 描述
tags Array of Tag
objects 按tags过滤自动绑定的资源
表4-317 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只能由中文,字母,数字,“-”,“_”,
“.”组成。
表4-318 SysTag
参数 参数类型 描述
key String 键。 系统标签的key,从白名单中取,不能随意 定义。 目前仅支持 _sys_enterprise_project_id字 段,对应 的value为企业项目ID。
value String 值。 目前仅会用到企业项目ID,其中默认的企业 项目ID为“0”。
状态码: 400
表4-319 响应 Body 参数
参数 参数类型 描述
error_code String 请参见错误码。
error_msg String 错误信息
请求示例
POST https://{endpoint}/v3/{project_id}/vault/resource_instances/action
响应示例
状态码: 200 OK
{ "tags" : [ { "key" : "string", "value" : null } ]
}
状态码
状态码 描述
200 OK
400 Bad Request
错误码
请参见错误码。