

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

# 從非 MSK Apache Kafka 叢集遷移至 Amazon MSK Express 代理程式
<a name="msk-replicator-migrate-external"></a>

您可以使用 MSK Replicator 將 Apache Kafka 工作負載從自我管理環境遷移至具有 Express 代理程式的 Amazon MSK 佈建叢集。MSK Replicator 支援從已啟用 SASL/SCRAM 身分驗證的 Kafka 部署 (Kafka 2.8.1 版或更新版本） 進行資料遷移。

**注意**  
只有 MSK Replicator 需要 SASL/SCRAM 身分驗證才能連線至自我管理的 Kafka 叢集。您的用戶端應用程式可以繼續使用其現有的身分驗證機制。

**先決條件**  
開始之前，請確定您有下列項目：

1. 執行 2.8.1 版或更新版本的來源 Apache Kafka 叢集

1. 在來源叢集上啟用 SASL/SCRAM 身分驗證

1. 在來源叢集上設定的 SSL 加密

1. 透過 AWS Site-to-Site或 AWS Direct Connect 進行網路連線

1. 針對 Secrets Manager 存取設定的 VPC 子網路

如需詳細說明，請參閱 [使用自我管理的 Apache Kafka 叢集設定 MSK Replicator 的先決條件](msk-replicator-external-prereqs.md)。

**步驟 1：建立 Amazon MSK Express 叢集**  
建立已啟用 IAM 身分驗證的 MSK 佈建叢集。跨三個可用AZs。請參閱 [準備目標叢集](msk-replicator-prepare-clusters.md#msk-replicator-prepare-target)。

**步驟 2：建立 IAM 執行角色**  
連接 `AWSMSKReplicatorExecutionRole` 和 `AWSSecretsManagerClientReadOnlyAccess` 受管政策。設定 的信任政策`kafka.amazonaws.com`。請參閱 [使用自我管理的 Apache Kafka 叢集設定 MSK Replicator 的先決條件](msk-replicator-external-prereqs.md)。

**步驟 3：在自我管理叢集上設定 SASL/SCRAM 和 SSL**  
建立具有必要 ACL 許可的專用 SCRAM 使用者。設定 SSL 憑證。請參閱 [使用自我管理的 Apache Kafka 叢集設定 MSK Replicator 的先決條件](msk-replicator-external-prereqs.md)。

**步驟 4：在 AWS Secrets Manager 中存放登入資料**  
使用 `username`、 `password`和 `certificate`鍵/值對建立秘密。請參閱 [使用自我管理的 Apache Kafka 叢集設定 MSK Replicator 的先決條件](msk-replicator-external-prereqs.md)。

**步驟 5：建立複寫器**  
使用 `CreateReplicator` API 搭配`EARLIEST`起始位置、相同主題名稱複寫，並將 `synchroniseConsumerGroupOffsets`設定為 `true`。如果您計劃為轉返功能設定雙向複寫 （步驟 6)，也請在向前和反向複寫器`ENHANCED`上`consumerGroupOffsetSyncMode`將 設定為 。等待約 30 分鐘，讓複寫器達到 RUNNING 狀態。請參閱 [自我管理 Kafka 叢集的 CreateReplicator API 範例](msk-replicator-external-api-examples.md)。

**步驟 6：（選用） 設定雙向複寫**  
從 MSK Express 叢集建立反向複寫器，再回到自我管理叢集以復原功能。請參閱 [自我管理 Kafka 叢集的 CreateReplicator API 範例](msk-replicator-external-api-examples.md)。

**步驟 7：監控複寫進度**  
監控下列指標：
+ `MessageLag` （應達到 0)
+ `ReplicationLatency`
+ `ConsumerGroupOffsetSyncFailure` （應為 0)
+ `ConsumerGroupCount`
+ `OffsetLag (MSK Cluster)` 和 `OffsetLag (Non-MSK Cluster)`

如需詳細資訊，請參閱[監控複寫](msk-replicator-monitor.md)。

**步驟 8：遷移應用程式**  
請依照下列步驟遷移您的應用程式：

1. 停止生產者寫入自我管理叢集

1. 使用 IAM 身分驗證將生產者重新設定為 MSK Express 叢集

1. 監控`MessageLag`直到達到 0

1. 在自我管理叢集上停止取用者

1. 將取用者重新設定為 MSK Express 叢集

**步驟 9：（選用） 復原至自我管理的叢集**  
如果已設定雙向複寫，您可以反轉遷移步驟，以轉返至自我管理叢集。反向複寫器 (MSK Express → 外部） 將保持自我管理叢集的同步，因此消費者可以重新導向回而不會遺失資料。