本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
主题配置复制权限
copyTopicConfigurations启用后(默认),复制器将从源集群读取主题级配置。这包括 retention.ms、cleanup.policy 和 max.message.bytes。然后,复制器将这些配置应用于目标集群上相应的已复制主题,使它们与源更改保持同步。
服务执行角色 IAM 策略(MSK 集群)
将以下语句添加到主题复制策略中。无论命名模式如何,源集群的权限都是一样的。目标集群权限因您的topicNameConfiguration设置而异。
源集群
源集群需要读取主题配置的权限。
{ "Sid": "SourceTopicConfigReadPermissions", "Effect": "Allow", "Action": [ "kafka-cluster:DescribeTopicDynamicConfiguration" ], "Resource": [ "arn:aws:kafka:${region}:${account}:topic/${SourceClusterName}/${SourceClusterUUID}/${topicPattern}" ] }
目标集群 — PREFIXED_WITH_SOURCE_CLUSTER_ALIAS(默认)
目标集群需要权限才能更改已复制主题的主题配置和分区。由于复制器创建后才知道完整的别名,因此在主题模式中使用通配符前缀。
{ "Sid": "TargetTopicConfigWritePermissions", "Effect": "Allow", "Action": [ "kafka-cluster:DescribeTopicDynamicConfiguration", "kafka-cluster:AlterTopicDynamicConfiguration", "kafka-cluster:AlterTopic" ], "Resource": [ "arn:aws:kafka:${region}:${account}:topic/${TargetClusterName}/${TargetClusterUUID}/*.${topicPattern}" ] }
目标集群-相同
使用相同的主题命名时,复制的主题与源上的主题名称相同。使用与来源相同的主题模式。
{ "Sid": "TargetTopicConfigWritePermissions", "Effect": "Allow", "Action": [ "kafka-cluster:DescribeTopicDynamicConfiguration", "kafka-cluster:AlterTopicDynamicConfiguration", "kafka-cluster:AlterTopic" ], "Resource": [ "arn:aws:kafka:${region}:${account}:topic/${TargetClusterName}/${TargetClusterUUID}/${topicPattern}" ] }
注意
如果禁copyTopicConfigurations用AlterTopicDynamicConfiguration,则不需要目标数据主题的和AlterTopic权限。如果两者都copyTopicConfigurations被禁用,您也可以DescribeTopicDynamicConfiguration从源数据主题中省略。detectAndCopyNewTopics
Kafka ACL(非 MSK 集群)
Non-MSK 作为来源
启用主题配置复制并且源为非 MSK 集群时,复制器需要描述主题配置。
| 资源类型 | 模式 | 操作 |
|---|---|---|
主题(数据) |
每个主题都有前缀或字面意思 |
DescribeConfigs |
Non-MSK 作为目标 — PREFIXED_WITH_SOURCE_CLUSTER_ALIAS
启用主题配置复制且目标为非 MSK 集群时,请使用带有源集群名称前 28 个字符的前缀 ACL 来涵盖所有复制的主题。
| 资源类型 | 模式 | 操作 |
|---|---|---|
主题(数据) |
|
DescribeConfigs, AlterConfigs,改变 |
Non-MSK 作为目标 — 相同
使用相同的主题命名时,请使用与源主题名称相同的 ACL。
| 资源类型 | 模式 | 操作 |
|---|---|---|
主题(数据) |
每个主题都有前缀或字面意思(与来源相同) |
DescribeConfigs, AlterConfigs,改变 |