文档首页 > > API参考> API> 标签> 查询存储库资源实例

查询存储库资源实例

分享
更新时间:2020/10/29 GMT+08:00

功能介绍

使用标签过滤实例 标签管理服务需要提供按标签过滤各服务实例并汇总显示在列表中,需要各服务提供查询能力

URI

POST /v3/{project_id}/vault/resource_instances/action

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

项目id

请求参数

表2 请求Body参数

参数

是否必选

参数类型

描述

without_any_tag

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 objects

仅op_service权限可以使用此字段做资源实例过滤条件。

目前TMS调用时只包含一个tag结构体。

  • key: _sys_enterprise_project_id

  • values:企业项目id列表

目前TMS调用时,key下面只包含一个value,0表示默认企业项目。

sys_tags和租户标签过滤条件(tags、tags_any、not_tags、not_tags_any)不能同时使用。

无sys_tags时按照tag接口处理,无tag过滤条件时返回全量数据。

sys_tags不能为空列表

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

表3 TagsReq

参数

是否必选

参数类型

描述

key

String

键。

最大长度127个unicode字符。

不允许为空字符串。

前后的空格会被丢弃。

values

Array of strings

值列表。

values中最多包含10个value。

每个value最大长度255个unicode字符。前后的空格会被丢弃。

values中value不允许重复。

values中多个value之间是"或"的关系。

values允许为空列表,value允许为空字符串。

values如果为空列表,表示任意值。

*为系统保留字符,如果value是以*开头表示按照*后面的值全模糊匹配,不能只传入“*”。

表4 SysTags

参数

是否必选

参数类型

描述

key

String

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

values

Array of strings

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

表5 Match

参数

是否必选

参数类型

描述

key

String

键。 key取值范围为:"resource_name",资源名称

value

String

值。 最大长度255个字符。 key为"resource_name"时,value为空字符串时精确匹配,为非空字符串时模糊匹配。

响应参数

状态码为 200 时:

表6 响应Body参数

参数

参数类型

描述

resources

Array of TagResource objects

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

total_count

Integer

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

表7 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场景不能返回此字段。

表8 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,默认为‘0’。

auto_bind

Boolean

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

bind_rules

VaultBindRules object

绑定规则

user_id

String

用户id

created_at

String

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

auto_expand

Boolean

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

表9 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

冻结场景

表10 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, OS::Native::Server, OS::Sfs::Turbo

backup_size

Integer

副本大小

backup_count

Integer

副本数量

表11 ResourceExtraInfo

参数

参数类型

描述

exclude_volumes

Array of strings

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

include_volumes

Array of ResourceExtraInfoIncludeVolumes objects

要备份的卷

表12 ResourceExtraInfoIncludeVolumes

参数

参数类型

描述

id

String

卷ID,仅支持uuid

os_version

String

操作系统类型

表13 VaultBindRules

参数

参数类型

描述

tags

Array of Tag objects

按tags过滤自动绑定的资源

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

表15 SysTag

参数

参数类型

描述

key

String

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

value

String

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

状态码为 400 时:

表16 响应Body参数

参数

参数类型

描述

error_code

String

请参见错误码

error_msg

String

错误信息

请求示例

响应示例

状态码

状态码

描述

200

OK

400

Bad Request

错误码

请参见错误码

分享:

    相关文档

    相关产品

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

提交成功!非常感谢您的反馈,我们会继续努力做到更好!
反馈提交失败,请稍后再试!

*必选

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

字符长度不能超过200

提交反馈 取消

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

智能客服提问云社区提问