本文迁移指导适用于使用ZooKeeper作为Dubbo的注册中心需要迁移到MSE ZooKeeper的场景。
前提条件
-
已部署MSE Sync迁移工具。具体操作,请参见MSE Sync迁移方案。
-
已创建MSE Zookeeper集群。具体操作,请参见创建ZooKeeper引擎。
使用限制
-
迁移工具宕机会导致同步服务中断,因此建议最少部署2个节点。迁移流程启动后,请您尽快完成迁移操作。
-
确保自建ZooKeeper、迁移工具和MSE ZooKeeper三者之间的网络互相联通。
机型参考
|
Dubbo服务数 |
Provider数 |
Consumer数 |
最小实例机型 |
最小迁移工具机型 |
|
0~1000 |
0~3000 |
0~9000 |
2 Core 4 GB |
2 Core 4 GB |
|
1000~4000 |
0~12000 |
0~36000 |
4 Core 8 GB |
4 Core 8 GB |
|
4000~7000 |
0~21000 |
0~63000 |
8 Core 16 GB |
4 Core 8 GB |
|
7000~10000 |
0~30000 |
0~90000 |
16 Core 32 GB |
8 Core 16 GB |
-
最小实例机型:建议生产环境最少部署3个节点,重要环境最少部署5个节点。
-
最小迁移工具机型:如果需要实现高可用,建议最少部署2个节点。
迁移步骤
迁移的部署结构如下所示。
步骤一:添加迁移服务
-
在迁移工具左侧导航栏,单击集群配置,然后单击新增集群,在新增集群对话框,添加源ZooKeeper集群信息,然后单击确定。
配置项
说明
集群名
自定义。
集群类型
ZK。
集群IP列表
集群IP列表可填写多行,每行由源ZooKeeper服务的IP和端口组成,默认端口号为2181。例如:
127.0.0.1:2181 127.0.0.2:2181 127.0.0.3:2181如果源集群有SLB作为负载均衡,请在集群IP列表填写SLB的IP地址及端口。

-
再次单击新增集群,添加目标ZooKeeper集群信息。
-
集群类型:选择ZK。
-
集群IP列表:由目标MSE ZooKeeper的Endpoint和服务端口组成。例如,mse-8b7de****-p.zk.mse.aliyuncs.com:2181。

-
-
在左侧导航栏,单击同步任务,然后单击新增同步,添加需要迁移的Dubbo服务。
-
同步方式:选择双向同步,即同步的服务在任何一侧做出变更,都会同步到另一侧。
-
同步类型:选择服务信息,MSE Sync会自动列出源集群的所有服务,按需选择即可。
-
分组名:如果选择同步多个服务,分组名可不填写,否则填写具体Dubbo分组名。

-
-
单击确定。
在迁移工具的同步服务页面,查看已经同步的服务名。

步骤二:验证同步结果
登录MSE注册配置中心控制台,并在顶部菜单栏选择地域。
在左侧导航栏,选择注册配置中心 > 实例列表。
在实例列表页面,单击目标实例名称。
-
在左侧导航栏,选择。查看Dubbo的默认路径下面是否已经存在服务。
步骤三:迁移Dubbo客户端
-
修改Dubbo客户端的Endpoint。
如下所示,找到Dubbo客户端的XML配置文件,将
dubbo:registry address中自建ZooKeeper的Endpoint,替换为MSE ZooKeeper的Endpoint。修改前:
<dubbo:registry address="zookeeper://127.0.0.1:2181"/>修改后:
<dubbo:registry address="zookeeper://mse-8b7de****-p.zk.mse.aliyuncs.com:2181"/> -
重启客户端,Dubbo客户端连接到MSE ZooKeeper。
说明为保障业务不中断,建议分批重启客户端。重启完成后,检查自建集群下连接是否已经全部完成。
步骤四:关闭自建ZooKeeper集群
-
停止自建ZooKeeper集群。
-
停止迁移工具。