步驟 1:準備 Amazon MSK 來源叢集 - Amazon Managed Streaming for Apache Kafka

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

步驟 1:準備 Amazon MSK 來源叢集

如果您已經為MSK複製器建立了MSK來源叢集,請確定它符合本節所述的需求。否則,請依照下列步驟建立MSK已佈建或無伺服器來源叢集。

建立跨區域和相同區域MSK複製器來源叢集的程序類似。差異會在下列程序中指明。

  1. 建立MSK已佈建或無伺服器叢集,並在來源區域中開啟IAM存取控制。您的來源叢集必須至少要有三個代理程式。

  2. 對於跨區域MSK複製器,如果來源是佈建的叢集,請將其設定為開啟IAM存取控制配置的多VPC私有連線。請注意,當多重開啟時,不支援未驗證的驗證類型。VPC您不需要為其他驗證配置 (m TLS 或SASL/SCRAM) 開啟多VPC專用連線。您可以同時為連接到MSK叢集的其他用戶端使用 m TLS 或SASL/SCRAMauth 方案。您可以在主控台叢集詳細資料網路設定或使用 UpdateConnectivityAPI. VPC 請參閱叢集擁有者開啟多重功能VPC。如果您的來源叢集是MSK無伺服器叢集,則不需要開啟多VPC私有連線。

    對於相同區域MSK複製器,MSK來源叢集不需要多重VPC私有連線,而且使用未驗證驗證類型的其他用戶端仍可存取叢集。

  3. 對於跨區域MSK複寫器,您必須將以資源為基礎的權限原則附加至來源叢集。這允許連接MSK到此叢集以複製資料。您可以使用CLI或執行此操作 AWS 控制台程序如下。另請參閱 Amazon MSK 以資源為基礎的政策。您不需要針對相同區域MSK複寫器執行此步驟。

Console: create resource policy

使用以下內容更新來源叢集原則JSON。將預留位置取代為來源叢集ARN的。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": [ "kafka.amazonaws.com" ] }, "Action": [ "kafka:CreateVpcConnection", "kafka:GetBootstrapBrokers", "kafka:DescribeClusterV2" ], "Resource": "<sourceClusterARN>" } ] }

在叢集詳細資訊頁面上,使用動作選單下的編輯叢集政策選項。

在主控台中編輯叢集政策
CLI: create resource policy

注意:如果您使用 AWS 控制台創建源集群並選擇創建新IAM角色的選項, AWS 將必要的信任原則附加至角色。如果您想MSK要使用現有的IAM角色,或者您自行建立角色,請將下列信任原則附加到該角色,以便MSK複寫者可以承擔。如需有關如何修改角色之信任關係的資訊,請參閱修改角色

  1. 使用此命令取得MSK叢集原則的目前版本。以實際叢集ARN取代預留位置。

    aws kafka get-cluster-policy —cluster-arn <Cluster ARN> { "CurrentVersion": "K1PA6795UKM GR7", "Policy": "..." }
  2. 建立以資源為基礎的政策,以允許MSK複製器存取您的來源叢集。使用下列語法做為範本,以實際的來源叢集取代預留位置ARN。

    aws kafka put-cluster-policy --cluster-arn "<sourceClusterARN>" --policy '{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": [ "kafka.amazonaws.com" ] }, "Action": [ "kafka:CreateVpcConnection", "kafka:GetBootstrapBrokers", "kafka:DescribeClusterV2" ], "Resource": "<sourceClusterARN>" } ]