本文介绍如何使用云消息队列 Kafka 版提供的迁移工具将自建Kafka集群的Topic迁移到云消息队列 Kafka 版实例。
前提条件
您已完成以下操作:
购买并部署云消息队列 Kafka 版实例:
操作步骤
打开命令行工具。
使用cd命令将路径切换到迁移工具所在目录。
执行以下命令,对要迁移的Topic进行预检。
java -jar kafka-migration-assessment.jar TopicMigrationFromZk \ --sourceZkConnect 192.168.XX.XX \ --destAk <yourdestAccessKeyId> \ --destSk <yourdestAccessKeySecret> \ --destRegionId <yourdestRegionId> \ --destInstanceId <yourdestInstanceId>
参数
描述
sourceZkConnect
自建的源ZooKeeper集群的IP地址
destAk
目标云消息队列 Kafka 版实例所属阿里云账号的AccessKey ID
destSk
目标云消息队列 Kafka 版实例所属阿里云账号的AccessKey Secret
destRegionId
目标云消息队列 Kafka 版实例的地域ID
destInstanceId
目标云消息队列 Kafka 版实例的ID
待确认的返回结果示例如下:
13:40:08 INFO - Begin to migrate topics:[test] 13:40:08 INFO - Total topic number:1 13:40:08 INFO - Will create topic:test, isCompactTopic:false, partition number:1
执行以下命令,迁移Topic。
java -jar kafka-migration-assessment.jar TopicMigrationFromZk \ --sourceZkConnect 192.168.XX.XX \ --destAk <yourdestAccessKeyId> \ --destSk <yourdestAccessKeySecret> \ --destRegionId <yourdestRegionId> \ --destInstanceId <yourdestInstanceId> \ --commit
参数
描述
commit
提交迁移
提交迁移的返回结果示例如下:
13:51:12 INFO - Begin to migrate topics:[test] 13:51:12 INFO - Total topic number:1 13:51:13 INFO - cmd=TopicMigrationFromZk, request=null, response={"code":200,"requestId":"7F76C7D7-AAB5-4E29-B49B-CD6F1E0F508B","success":true,"message":"operation success"} 13:51:13 INFO - TopicCreate success, topic=test, partition number=1, isCompactTopic=false
确认Topic迁移是否成功。
在概览页面的资源分布区域,选择地域。
在实例列表页面,单击目标实例名称。
在左侧导航栏,单击Topic 管理。
在Topic 管理页面的Topic列表中,显示成功迁移的Topic。