• 沒有找到結果。

5.10 其他接口

5.10.4 查询实例在 CES 的监控层级关系

}, {

"type" : "cluster",

"product_id" : "c6.16u32g.cluster", "ecs_flavor_id" : "c6.4xlarge.2", "billing_code" : "dms.platinum.c6", "arch_types" : [ "X86" ],

"charging_mode" : [ "monthly", "hourly" ], "ios" : [ {

"io_spec" : "dms.physical.storage.high.v2", "type" : "evs",

"available_zones" : [ "cn-north-4b", "cn-north-4g", "cn-north-4c", "cn-north-4a" ], "unavailable_zones" : [ "cn-north-4f", "cn-north-4d", "cn-north-4e", "cn-north-4f" ] }, {

"io_spec" : "dms.physical.storage.ultra.v2", "type" : "evs",

"available_zones" : [ "cn-north-4b", "cn-north-4g", "cn-north-4c", "cn-north-4a" ], "unavailable_zones" : [ "cn-north-4d", "cn-north-4e", "cn-north-4f" ]

} ],

"max_partition_per_broker" : "2000", "max_broker" : "30",

"max_storage_per_node" : "30000", "max_consumer_per_broker" : "4000", "min_broker" : "3",

"max_bandwidth_per_broker" : "100", "min_storage_per_node" : "1600", "max_tps_per_broker" : "250000"

}

调试

您可以在API Explorer中调试该接口。

URI

GET /v2/{project_id}/instances/{instance_id}/ces-hierarchy

5-178 路径参数

参数 是否必选 参数类型 描述

project_id 是 String 项目ID。

instance_id 是 String 实例ID。

请求参数

响应参数

状态码: 200

5-179 响应 Body 参数

参数 参数类型 描述

dimensions Array of

dimensions

objects

监控维度。

instance_ids Array of

instance_ids

objects

实例信息。

nodes Array of

nodes objects

节点信息。

queues Array of

queues

objects

队列信息。

groups Array of

groups

objects

消费组信息。

5-180 dimensions

参数 参数类型 描述

name String 监控维度名称。

metrics Array of

strings 监控指标名称。

key_name Array of

strings 监控查询使用的key。

dim_router Array of

strings 监控维度路由。

children Array of

children

objects

子维度列表。

5-181 children

参数 参数类型 描述

name String 子维度名称。

metrics Array of

strings 监控指标名称列表。

key_name Array of

strings 监控查询使用的key。

dim_router Array of

strings 监控维度路由。

5-182 instance_ids

参数 参数类型 描述

name String 实例ID。

5-183 nodes

参数 参数类型 描述

name String 节点名称。

5-184 queues

参数 参数类型 描述

name String topic名称。

partitions Array of

partitions

objects

分区列表。

5-185 partitions

参数 参数类型 描述

name String 分区名称。

5-186 groups

参数 参数类型 描述

name String 消费组名称。

queues Array of

queues

objects

topic信息。

5-187 queues

参数 参数类型 描述

name String topic名称。

partitions Array of

partitions

objects

分区信息。

5-188 partitions

参数 参数类型 描述

name String 分区名称。

请求示例

GET https://{endpoint}/v2/{project_id}/instances/{instance_id}/ces-hierarchy

响应示例

状态码: 200 列表成功。

{ "dimensions" : [ {

"name" : "kafka_instance_id",

"metrics" : [ "current_partitions", "current_topics", "group_messages" ], "key_name" : [ "instance_ids" ],

"dim_router" : [ "kafka_instance_id" ] }, {

"name" : "kafka_broker",

"metrics" : [ "broker_data_size", "broker_messages_in_rate", "broker_bytes_out_rate",

"broker_bytes_in_rate", "broker_produce_mean", "broker_fetch_mean" ], "key_name" : [ "nodes" ],

"dim_router" : [ "kafka_instance_id", "kafka_broker" ] }, {

"name" : "kafka_rest",

"metrics" : [ "rest_produce_success", "rest_produce_failed", "rest_produce_latency",

"rest_produce_msg_num", "rest_produce_flow", "rest_consume_success", "rest_consume_failed",

"rest_consume_latency", "rest_consume_msg_num", "rest_consume_flow", "rest_commit_success",

"rest_commit_failed", "rest_commit_latency", "rest_commit_msg_num", "rest_commit_flow" ], "key_name" : [ "nodes" ],

"dim_router" : [ "kafka_instance_id", "kafka_rest" ] }, {

"name" : "kafka_topics",

"metrics" : [ "topic_data_size", "topic_messages_in_rate", "topic_bytes_out_rate", "topic_bytes_in_rate",

"topic_messages" ],

"key_name" : [ "queues" ],

"dim_router" : [ "kafka_instance_id", "kafka_topics" ], "children" : [ {

"name" : "kafka_partitions",

"metrics" : [ "produced_messages", "partition_messages" ], "key_name" : [ "queues", "partitions" ],

"dim_router" : [ "kafka_instance_id", "kafka_topics", "kafka_partitions" ] } ]

}, {

"name" : "kafka_groups_partitions",

"metrics" : [ "messages_consumed", "messages_remained" ], "key_name" : [ "groups", "queues", "partitions" ],

"dim_router" : [ "kafka_instance_id", "kafka_groups", "kafka_groups_topics", "kafka_groups_partitions" ] } ],

"instance_ids" : [ {

"name" : "68f3f6a0-3741-453b-bda9-a6ff6b5bb6f7"

} ],

"name" : "topic-84234378", "partitions" : [ {

"name" : "0"

}, {

"name" : "1"

}, {

"name" : "2"

} ] } ],

"groups" : [ {

"name" : "test-consumer-group", "queues" : [ {

"name" : "mytest", "partitions" : [ { "name" : "0"

}, {

"name" : "1"

}, {

"name" : "2"

} ] } ] } ] }

状态码

状态码 描述

200 列表成功。

错误码

请参见错误码。

6 权限策略和授权项

如果您需要对您所拥有的DMS for Kafka实例进行精细的权限管理,您可以使用统一身 份认证服务(Identity and Access Management,简称IAM),如果华为云帐号已经 能满足您的要求,不需要创建独立的IAM用户,您可以跳过本章节,不影响您使用 DMS for Kafka实例的其它功能。

默认情况下,新建的IAM用户没有任何权限,您需要将其加入用户组,并给用户组授 予策略或角色,才能使用户组中的用户获得相应的权限,这一过程称为授权。授权 后,用户就可以基于已有权限对云服务进行操作。

权限根据授权的精细程度,分为角色和策略。角色以服务为粒度,是IAM最初提供的 一种根据用户的工作职能定义权限的粗粒度授权机制。策略以API接口为粒度进行权限 拆分,授权更加精细,可以精确到某个操作、资源和条件,能够满足企业对权限最小 化的安全管控要求。

说明

如果您要允许或是禁止某个接口的操作权限,请使用策略。

帐号具备所有接口的调用权限,如果使用帐号下的IAM用户发起API请求时,该IAM用 户必须具备调用该接口所需的权限,否则,API请求将调用失败。每个接口所需要的权 限,与各个接口所对应的授权项相对应,只有发起请求的用户被授予授权项所对应的 策略,该用户才能成功调用该接口。例如,用户要调用接口来创建Kafka实例,那么这 个IAM用户被授予的策略中必须包含允许“dms:instance:create”的授权项,该接口才 能调用成功。

支持的授权项

策略包含系统策略和自定义策略,如果系统策略不满足授权要求,管理员可以创建自 定义策略,并通过给用户组授予自定义策略来进行精细的访问控制。策略支持的操作 与API相对应,授权项列表说明如下:

● 权限:允许或拒绝某项操作。

● 对应API接口:自定义策略实际调用的API接口。

● 授权项:自定义策略中支持的Action,在自定义策略中的Action中写入授权项,

可以实现授权项对应的权限功能。

● IAM项目(Project)/企业项目(Enterprise Project):自定义策略的授权范围,

包括IAM项目与企业项目。授权范围如果同时支持IAM项目和企业项目,表示此授 权项对应的自定义策略,可以在IAM和企业管理两个服务中给用户组授权并生

效。如果仅支持IAM项目,不支持企业项目,表示仅能在IAM中给用户组授权并生 效,如果在企业管理中授权,则该自定义策略不生效。关于IAM项目与企业项目 的区别,详情请参见:IAM与企业管理的区别。

DMS for Kafka的支持自定义策略授权项如下表所示。用户调用如下API时,需要获取 对应的权限。权限获取请参考统一身份认证服务(IAM)的帮助指导。

6-1 DMS for Kafka 授权项明细

权限 对应API接口 授权项 IAM项目

(Project) 企业项目 (Enterprise Project) 创建实例

(按需)

POST /v2/

{project_id}/

instances

dms:instance:

create √ √

查询指定实

例 GET /v2/{project_id}/

instances/

{instance_id}

dms:instance:

get √ √

修改实例信

息 PUT /v2/{project_id}/

instances/

GET /v2/{project_id}/

instances dms:instance:l

ist √ √

批量重启或 删除实例

POST /v2/

{project_id}/

instances/action

重启:dms:instance:

modifyStatus 删除:dms:instance:

delete

√ √

重置Manager密 码

PUT /v2/{project_id}/

instances/

{instance_id}/kafka-manager-password

dms:instance:

resetAuthInfo √ √

重置密码 POST /v2/

resetAuthInfo √ √

重启Manager PUT /v2/{project_id}/

instances/

{instance_id}/restart-kafka-manager

dms:instance:

modifyStatus √ √

权限 对应API接口 授权项 IAM项目

(Project) 企业项目 (Enterprise Project) 开启或关闭

实例自动创 建topic功能

POST /v2/

{project_id}/

POST /v2/

{project_id}/

connector √ √

创建转储任

POST /v2/

{project_id}/

务列表 GET /v2/{project_id}/

connectors/

储任务 GET /v2/{project_id}/

connectors/

PUT /v2/{project_id}/

connectors/

权限 对应API接口 授权项 IAM项目

(Project) 企业项目 (Enterprise Project) Kafka实例批

量删除Topic POST /v2/

{project_id}/

建Topic POST /v2/

{project_id}/

询Topic GET /v2/{project_id}/

instances/

{instance_id}/topics

dms:instance:

get √ √

修改Kafka实

例Topic PUT /v2/{project_id}/

instances/

{instance_id}/topics

dms:instance:

modify √ √

批量删除用

户 PUT /v2/{project_id}/

instances/

PUT /v2/{project_id}/

instances/

表 GET /v2/{project_id}/

instances/

{instance_id}/users

dms:instance:

get √ √

查询用户权

限 GET /v1/{project_id}/

instances/

权限 对应API接口 授权项 IAM项目

(Project) 企业项目 (Enterprise Project) 查询消息 GET /v2/{project_id}/

instances/

DELETE /v2/

{project_id}/

GET /v2/{project_id}/

instances/

GET /v2/{project_id}/

instances/

POST /v2/

{project_id}/kafka/

签 GET /v2/{project_id}/

kafka/tags dms:instance:

get √ √

查询实例标 签

GET /v2/{project_id}/

kafka/{instance_id}/

7 历史 API