View a markdown version of this page

消费组偏移同步权限 - Amazon Managed Streaming for Apache Kafka

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

消费组偏移同步权限

synchroniseConsumerGroupOffsets启用后(默认),复制器会转换来自源集群的使用者组偏移量并将其写入目标集群。启用此功能后,使用者可以在故障转移后从正确位置恢复。

有两种同步模式可供选择:LEGACY(默认)和ENHANCED。在 LEGACY 模式下,当生产者写入源集群时,复制器会同步偏移。在增强模式下,无论生产者在哪里写入,复制器都会同步偏移量。增强模式需要双向复制。两种模式都使用相同的 IAM 权限。

注意

两个集群的复制权限主题已经涵盖了增强模式所依赖的内部主题(mskr-offset-syncs.**.checkpoints.internal)。

以下语句添加了专门用于消费组偏移同步的权限。由于偏移量同步依赖于数据复制,因此某些权限与主题复制策略重叠。

服务执行角色 IAM 策略(MSK 集群)

源集群

服务执行角色必须具有描述消费者组及其在源上使用的主题的权限。

[ { "Sid": "SourceGroupPermissions", "Effect": "Allow", "Action": [ "kafka-cluster:DescribeGroup" ], "Resource": [ "arn:aws:kafka:${region}:${account}:group/${SourceClusterName}/${SourceClusterUUID}/${consumerGroupPattern}" ] }, { "Sid": "SourceUserTopicPermissions", "Effect": "Allow", "Action": [ "kafka-cluster:DescribeTopic" ], "Resource": [ "arn:aws:kafka:${region}:${account}:topic/${SourceClusterName}/${SourceClusterUUID}/${topicsConsumedByGroup}" ] } ]
目标集群

服务执行角色必须有权描述复制的主题并更改目标上的使用者组,这样才能提交翻译后的偏移量。

[ { "Sid": "TargetCheckpointTopicPermissions", "Effect": "Allow", "Action": [ "kafka-cluster:DescribeTopic" ], "Resource": [ "arn:aws:kafka:${region}:${account}:topic/${TargetClusterName}/${TargetClusterUUID}/${replicatedTopicPattern}" ] }, { "Sid": "TargetCheckpointGroupPermissions", "Effect": "Allow", "Action": [ "kafka-cluster:AlterGroup", "kafka-cluster:DescribeGroup" ], "Resource": [ "arn:aws:kafka:${region}:${account}:group/${TargetClusterName}/${TargetClusterUUID}/${consumerGroupPattern}" ] } ]

按如下方式替换前面语句中的占位符:

  • ${consumerGroupPattern}替换为为复制配置的使用者组名称或模式(例如my-app-group-*)。

  • ${topicsConsumedByGroup}替换为消费者组在来源上读取的主题模式。

  • ${replicatedTopicPattern}替换为目标上相应的复制主题模式(*.${topicPattern}用于前缀命名或${topicPattern}相同命名)。

Kafka ACL(非 MSK 集群)

Non-MSK 作为来源

当源是非 MSK 集群时,使用者组偏移同步需要以下 ACL。

资源 Type 图案类型 操作 用途

${consumerGroupPattern}

Group

字面意思或前缀

描述

读取已提交的偏移量 () OffsetFetch

${topicsConsumedByGroup}

Topic

字面意思或前缀

描述

偏移翻译的主题元数据

Non-MSK 作为目标

当目标为非 MSK 群集时,使用者组偏移同步需要以下 ACL。

资源 Type 图案类型 操作 用途

${replicatedTopicPattern}

Topic

字面意思或前缀

描述

日志末端偏移量 (ListOffsets)

${consumerGroupPattern}

Group

字面意思或前缀

描述

FindCoordinator, DescribeGroup

${consumerGroupPattern}

Group

字面意思或前缀

读取

提交转换后的偏移量 () OffsetCommit