Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Thema: Replikationsberechtigungen
Verwenden Sie Amazon MSK Replicator, um Themen zwischen Clustern zu replizieren. Erteilen Sie der Rolle „Service Execution“ Berechtigungen, um eine Verbindung zu beiden Clustern herzustellen, interne Replikator-Themen zu verwalten, Daten aus Quellthemen zu lesen und replizierte Daten in den Zielcluster zu schreiben.
Die Berechtigungen für Datenthemen auf dem Zielcluster unterscheiden sich je nach Einstellung: topicNameConfiguration
PREFIXED_WITH_SOURCE_CLUSTER_ALIAS (Standard) — Replizierte Themen auf dem Ziel werden mit dem Quellcluster-Alias als Präfix benannt (z. B.).
source-alias.my-topicDa der vollständige Quell-Alias zum Zeitpunkt der Erstellung nicht bekannt ist, verwenden Sie ihn als IAM-Zieldatenthema-Ressource.*.${topicPattern}Verwenden Sie für Kafka-ACLs auf Nicht-MSK-Clustern die ersten 28 Zeichen des MSK-Clusternamens als Muster mit PRÄFIX.IDENTISCH — Replizierte Themen auf dem Ziel behalten den gleichen Namen wie auf der Quelle. Die Ziel-Datenthema-Ressource verwendet dasselbe Muster wie die Quelle.
IAM-Richtlinie für die Rolle „Dienstausführung“ (MSK-Cluster)
Fügen Sie der Dienstausführungsrolle die folgende Richtlinie hinzu. Ersetzen Sie die Platzhalterwerte durch Ihre Clusternamen, UUIDs und Themenmuster. Wählen Sie die TargetDataTopicPermissions Aussage aus, die Ihrer Einstellung entspricht. topicNameConfiguration
PREFIXED_WITH_SOURCE_CLUSTER_ALIAS (Standard)
Replizierte Themen auf dem Ziel werden mit dem Quell-Cluster-Alias als Präfix benannt (z. B.). source-alias.my-topic Da der vollständige Alias erst bekannt ist, wenn der Replikator erstellt wurde, verwenden Sie ein Platzhalterpräfix mit dem Themenmuster (z. B.*.${topicPattern}) in der Zieldatenthema-Ressource. IAM unterstützt mehrere Platzhalter in einem Ressourcen-ARN.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "ClusterPermissions", "Effect": "Allow", "Action": [ "kafka-cluster:Connect", "kafka-cluster:DescribeCluster", "kafka-cluster:WriteDataIdempotently" ], "Resource": [ "arn:aws:kafka:${region}:${account}:cluster/${SourceClusterName}/${SourceClusterUUID}", "arn:aws:kafka:${region}:${account}:cluster/${TargetClusterName}/${TargetClusterUUID}" ] }, { "Sid": "SourceInternalTopicPermissions", "Effect": "Allow", "Action": [ "kafka-cluster:CreateTopic", "kafka-cluster:ReadData", "kafka-cluster:WriteData", "kafka-cluster:DescribeTopic", "kafka-cluster:DescribeTopicDynamicConfiguration", "kafka-cluster:AlterTopic", "kafka-cluster:AlterTopicDynamicConfiguration" ], "Resource": [ "arn:aws:kafka:${region}:${account}:topic/${SourceClusterName}/${SourceClusterUUID}/*__amazon_msk_replicator_*", "arn:aws:kafka:${region}:${account}:topic/${SourceClusterName}/${SourceClusterUUID}/mskr-offset-syncs.*", "arn:aws:kafka:${region}:${account}:topic/${SourceClusterName}/${SourceClusterUUID}/*.checkpoints.internal" ] }, { "Sid": "SourceDataTopicPermissions", "Effect": "Allow", "Action": [ "kafka-cluster:ReadData", "kafka-cluster:DescribeTopic", "kafka-cluster:DescribeTopicDynamicConfiguration" ], "Resource": [ "arn:aws:kafka:${region}:${account}:topic/${SourceClusterName}/${SourceClusterUUID}/${topicPattern}" ] }, { "Sid": "TargetInternalTopicPermissions", "Effect": "Allow", "Action": [ "kafka-cluster:CreateTopic", "kafka-cluster:ReadData", "kafka-cluster:WriteData", "kafka-cluster:DescribeTopic", "kafka-cluster:DescribeTopicDynamicConfiguration", "kafka-cluster:AlterTopic", "kafka-cluster:AlterTopicDynamicConfiguration" ], "Resource": [ "arn:aws:kafka:${region}:${account}:topic/${TargetClusterName}/${TargetClusterUUID}/*__amazon_msk_replicator_*", "arn:aws:kafka:${region}:${account}:topic/${TargetClusterName}/${TargetClusterUUID}/mskr-offset-syncs.*", "arn:aws:kafka:${region}:${account}:topic/${TargetClusterName}/${TargetClusterUUID}/*.checkpoints.internal" ] }, { "Sid": "TargetDataTopicPermissions", "Effect": "Allow", "Action": [ "kafka-cluster:CreateTopic", "kafka-cluster:WriteData", "kafka-cluster:DescribeTopic", "kafka-cluster:DescribeTopicDynamicConfiguration" ], "Resource": [ "arn:aws:kafka:${region}:${account}:topic/${TargetClusterName}/${TargetClusterUUID}/*.${topicPattern}" ] }, { "Sid": "TargetGroupPermissions", "Effect": "Allow", "Action": [ "kafka-cluster:AlterGroup", "kafka-cluster:DescribeGroup" ], "Resource": [ "arn:aws:kafka:${region}:${account}:group/${TargetClusterName}/${TargetClusterUUID}/*__amazon_msk_replicator_*" ] } ] }
IDENTISCH
Replizierte Themen auf dem Ziel behalten den gleichen Namen wie auf der Quelle. Ersetzen Sie die TargetDataTopicPermissions Aussage durch folgenden Text:
{ "Sid": "TargetDataTopicPermissions", "Effect": "Allow", "Action": [ "kafka-cluster:CreateTopic", "kafka-cluster:WriteData", "kafka-cluster:DescribeTopic", "kafka-cluster:DescribeTopicDynamicConfiguration" ], "Resource": [ "arn:aws:kafka:${region}:${account}:topic/${TargetClusterName}/${TargetClusterUUID}/${topicPattern}" ] }
${topicPattern}Ersetzen Sie es durch den Themennamen oder das Muster, das Sie für die Replikation konfiguriert haben (z. my-app-* B. durch einen bestimmten Themennamen).
Anmerkung
Beide MSK-Cluster benötigen Berechtigungen für alle internen Themen (*__amazon_msk_replicator_*mskr-offset-syncs.*, und*.checkpoints.internal). Verwenden Sie diese Richtlinie, um beide Cluster abzudecken, unabhängig davon, welcher Cluster kein MSK-Cluster ist.
Kafka-ACLs (Nicht-MSK-Cluster)
Wenn Ihre Quelle oder Ihr Ziel ein selbstverwalteter Apache Kafka-Cluster ist, konfigurieren Sie die folgenden ACLs mit der CLI. kafka-acls Alle ACLs verwenden den ALLOW Berechtigungstyp und den Prinzipal, mit dem sich Ihr Replikator authentifiziert. Sofern nicht anders angegeben, verwenden ACLs den Mustertyp. PREFIXED
Wenn es sich um einen Nicht-MSK-Cluster handelt, platziert der Replikator die meisten internen Themen (Offset-Syncs, Checkpoints, Worker-Group-Status) auf dem MSK-Cluster. Der Nicht-MSK-Cluster hostet nur Heartbeat-Themen und Datenthemen.
Non-MSK als Quelle
Wenn es sich bei der Quelle um einen selbstverwalteten Cluster handelt, platziert der Replikator alle internen Themen auf dem MSK-Ziel. Die Nicht-MSK-Quelle benötigt nur ACLs für Heartbeat-Themen und Themen zum Lesen von Daten.
| Ressourcentyp | Muster | Operationen |
|---|---|---|
Cluster |
|
Erstellen, Beschreiben, IdempotentWrite DescribeConfigs |
Thema (Herzschlag) |
|
Erstellen, Lesen, Schreiben, Beschreiben DescribeConfigs, Ändern, AlterConfigs |
Thema (Daten) |
PREFIXED oder LITERAL pro Thema |
Lesen, beschreiben, DescribeConfigs |
Non-MSK als Ziel
Wenn das Ziel ein selbstverwalteter Cluster ist, platziert der Replikator alle internen Themen in der MSK-Quelle. Das Nicht-MSK-Ziel benötigt nur ACLs für Heartbeat-Themen und zum Schreiben von Datenthemen. Das Muster des Datentopics hängt von Ihrer Einstellung ab. topicNameConfiguration
| Ressourcentyp | Muster | Operationen |
|---|---|---|
Cluster |
|
Erstellen, Beschreiben, IdempotentWrite DescribeConfigs |
Thema (Herzschlag) |
|
Erstellen, Lesen, Schreiben, Beschreiben DescribeConfigs, Ändern, AlterConfigs |
Thema (replizierter Herzschlag) |
|
Erstellen, Lesen, Schreiben, Beschreiben DescribeConfigs, Ändern, AlterConfigs |
Thema (Daten) |
|
Erstellen, Schreiben, Beschreiben DescribeConfigs, Ändern, AlterConfigs |
Wenn Sie die Benennung von IDENTICAL Themen verwenden, ersetzen Sie die Zeile mit dem Datenthema durch den folgenden Text.
| Ressourcentyp | Muster | Operationen |
|---|---|---|
Thema (Daten) |
PREFIXED oder LITERAL pro Thema (gleicher Name wie Quelle) |
Erstellen, Schreiben, Beschreiben, Ändern DescribeConfigs, AlterConfigs |