當您想要將A地區的雲訊息佇列 Kafka 版上的業務無損遷移至B地區,或者建立執行個體後想複製已有執行個體中繼資料(Topic、Group)配置時,您可以使用雲訊息佇列 Kafka 版提供的遷移工具將某個雲訊息佇列 Kafka 版執行個體的Topic、Group遷移至另一個雲訊息佇列 Kafka 版執行個體中。
前提條件
遷移不會刪除源雲訊息佇列 Kafka 版執行個體的Topic/Group,只是在目標雲訊息佇列 Kafka 版執行個體建立相同配置的Topic/Group。
遷移內容僅為Topic/Group配置,不包含Topic/Group中儲存的資料。
操作步驟
Topic
開啟命令列工具。
使用cd命令將路徑切換到遷移工具所在目錄。
執行以下命令,對要遷移的Topic進行預檢。
java -jar kafka-migration-assessment.jar TopicMigrationFromAliyun \ --sourceAk <yoursourceAccessKeyId> \ --sourceSk <yoursourceAccessKeySecret> \ --sourceRegionId <yoursourceRegionId> \ --sourceInstanceId <yoursourceInstanceId> \ --destAk <yourdestAccessKeyId> \ --destSk <yourdestAccessKeySecret> \ --destRegionId <yourdestRegionId> \ --destInstanceId <yourdestInstanceId>上文中
<>處內容需要替換為您的執行個體資訊,配置規則請參見下表:參數
描述
sourceAk
源雲訊息佇列 Kafka 版執行個體所屬阿里雲帳號的AccessKey ID。
sourceSk
源雲訊息佇列 Kafka 版執行個體所屬阿里雲帳號的AccessKey Secret。
sourceRegionId
源雲訊息佇列 Kafka 版執行個體的地區ID。例如:
cn-hangzhou。sourceInstanceId
源雲訊息佇列 Kafka 版執行個體的ID。
destAk
目標雲訊息佇列 Kafka 版執行個體所屬阿里雲帳號的AccessKey ID。
destSk
目標雲訊息佇列 Kafka 版執行個體所屬阿里雲帳號的AccessKey Secret。
destRegionId
目標雲訊息佇列 Kafka 版執行個體的地區ID。例如:
cn-hangzhou。destInstanceId
目標雲訊息佇列 Kafka 版執行個體的ID。
返回結果樣本如下:

執行以下命令,遷移Topic。
java -jar kafka-migration-assessment.jar TopicMigrationFromAliyun \ --sourceAk <yoursourceAccessKeyId> \ --sourceSk <yoursourceAccessKeySecret> \ --sourceRegionId <yoursourceRegionId> \ --sourceInstanceId <yoursourceInstanceId> \ --destAk <yourdestAccessKeyId> \ --destSk <yourdestAccessKeySecret> \ --destRegionId <yourdestRegionId> \ --destInstanceId <yourdestInstanceId> \ --commit參數
描述
commit
提交遷移請求。
返回結果樣本如下:

MigrationSuccessFlag列為
true代表Topic已成功在目標執行個體中建立。
Group
開啟命令列工具。
使用cd命令將路徑切換到遷移工具所在目錄。
執行以下命令,對要遷移的Group進行預檢。
java -jar kafka-migration-assessment.jar ConsumerGroupMigrationFromAliyun \ --sourceAk <yoursourceAccessKeyId> \ --sourceSk <yoursourceAccessKeySecret> \ --sourceRegionId <yoursourceRegionId> \ --sourceInstanceId <yoursourceInstanceId> \ --destAk <yourdestAccessKeyId> \ --destSk <yourdestAccessKeySecret> \ --destRegionId <yourdestRegionId> \ --destInstanceId <yourdestInstanceId>上文中
<>處內容需要替換為您的執行個體資訊,配置規則請參見下表:參數
描述
sourceAk
源雲訊息佇列 Kafka 版執行個體所屬阿里雲帳號的AccessKey ID。
sourceSk
源雲訊息佇列 Kafka 版執行個體所屬阿里雲帳號的AccessKey Secret。
sourceRegionId
源雲訊息佇列 Kafka 版執行個體的地區ID。例如:
cn-hangzhou。sourceInstanceId
源雲訊息佇列 Kafka 版執行個體的ID。
destAk
目標雲訊息佇列 Kafka 版執行個體所屬阿里雲帳號的AccessKey ID。
destSk
目標雲訊息佇列 Kafka 版執行個體所屬阿里雲帳號的AccessKey Secret。
destRegionId
目標雲訊息佇列 Kafka 版執行個體的地區ID。例如:
cn-hangzhou。destInstanceId
目標雲訊息佇列 Kafka 版執行個體的ID。
返回結果樣本如下:

執行以下命令,遷移Group。
java -jar kafka-migration-assessment.jar ConsumerGroupMigrationFromAliyun \ --sourceAk <yoursourceAccessKeyId> \ --sourceSk <yoursourceAccessKeySecret> \ --sourceRegionId <yoursourceRegionId> \ --sourceInstanceId <yoursourceInstanceId> \ --destAk <yourdestAccessKeyId> \ --destSk <yourdestAccessKeySecret> \ --destRegionId <yourdestRegionId> \ --destInstanceId <yourdestInstanceId> \ --commit參數
說明
commit
提交遷移請求。
返回結果樣本如下:

MigrationSuccessFlag列為
true代表Topic已成功在目標執行個體中建立。
結果驗證
登入雲訊息佇列 Kafka 版控制台,在概览頁面的资源分布地區,選擇地區。
在实例列表頁面,單擊目標執行個體名稱。
Topic:在实例详情頁面,單擊左側導覽列的Topic 管理,在Topic列表中,查看成功遷移的Topic。
Group:在实例详情頁面,單擊左側導覽列的Group 管理,在Group列表中,查看成功遷移的Group。
後續操作
由於遷移過程中涉及執行個體切換,請在遷移結束後檢查用戶端執行個體存取點是否需要更新,詳情請參見查看存取點。