翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
コンシューマーグループのオフセット同期アクセス許可
synchroniseConsumerGroupOffsets が有効になっている場合 (デフォルト)、レプリケーターはソースクラスターからコンシューマーグループのオフセットを変換し、ターゲットクラスターに書き込みます。この機能を有効にすると、コンシューマーはフェイルオーバー後に正しい位置から再開できます。
LEGACY (デフォルト) と の 2 つの同期モードを使用できますENHANCED。レガシーモードでは、プロデューサーがソースクラスターに書き込むと、レプリケーターはオフセットを同期します。ENHANCED モードでは、プロデューサーが書き込む場所に関係なく、レプリケーターはオフセットを同期します。ENHANCED モードには双方向レプリケーションが必要です。どちらのモードも同じ IAM アクセス許可を使用します。
注記
ENHANCED モードが依存する内部トピック (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}PREFIXED 命名の場合は 、IDENTICAL 命名${topicPattern}の場合は )。
Kafka ACLs (非 MSK クラスター)
ソースとしての非 MSK
ソースが MSK 以外のクラスターの場合、コンシューマーグループのオフセット同期には次の ACLs が必要です。
| [リソース] | タイプ | パターンタイプ | 運用 | 目的 |
|---|---|---|---|---|
|
Group |
リテラルまたはプリフィックス |
説明 |
コミットされたオフセットの読み取り (OffsetFetch) |
|
Topic |
リテラルまたはプリフィックス |
説明 |
オフセット変換のトピックメタデータ |
ターゲットとしての非 MSK
ターゲットが非 MSK クラスターの場合、コンシューマーグループのオフセット同期には次の ACLs が必要です。
| [リソース] | タイプ | パターンタイプ | 運用 | 目的 |
|---|---|---|---|---|
|
Topic |
リテラルまたはプリフィックス |
説明 |
ログ終了オフセット (ListOffsets) |
|
Group |
リテラルまたはプリフィックス |
説明 |
FindCoordinator、DescribeGroup |
|
Group |
リテラルまたはプリフィックス |
読み取り |
コミット変換オフセット (OffsetCommit) |