本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
準備 Amazon MSK來源叢集
如果您已為MSK複寫器建立MSK來源叢集,請確定其符合本節中所述的要求。否則,請依照下列步驟建立MSK佈建或無伺服器來源叢集。
建立跨區域和相同區域MSK複寫器來源叢集的程序類似。差異會在下列程序中指明。
在來源區域中建立已MSK佈建或無伺服器叢集,並IAM開啟存取控制。您的來源叢集必須至少要有三個代理程式。
對於跨區域 MSKReplicator,如果來源是佈建叢集,請針對IAM存取控制機制,在開啟多VPC私有連線的情況下設定它。請注意,開啟多重VPC時,不支援未經驗證的身分驗證類型。您不需要為其他身分驗證機制 (其他用戶端連線至MSK叢集的 MTLS SASL/SCRAM). You can simultaneously use mTLS or SASL/SCRAM 或身分驗證機制) 開啟多VPC私有連線。您可以在主控台叢集詳細資訊 網路設定或使用 UpdateConnectivity
設定多VPC私有連線API。請參閱叢集擁有者開啟多重VPC。如果您的來源叢集是 MSK Serverlesss 叢集,則不需要開啟多VPC私有連線。
對於同區域 MSKReplicator,MSK來源叢集不需要多VPC私有連線,而且叢集仍可由其他用戶端使用未經驗證的身分驗證類型來存取。
-
對於跨區域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角色或自行建立角色,請將下列信任政策連接至該角色,以便 Replicator MSK 可以擔任該角色。如需有關如何修改角色之信任關係的資訊,請參閱修改角色。
使用此命令取得目前版本的MSK叢集政策。將預留位置取代為實際叢集 ARN。
aws kafka get-cluster-policy —cluster-arn <Cluster ARN>
{
"CurrentVersion": "K1PA6795UKM GR7",
"Policy": "..."
}
建立資源型政策,以允許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>"
}
]