本文迁移指导适用于使用ZooKeeper作为Dubbo的注册中心需要迁移到MSE 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个节点。

迁移步骤

迁移的部署结构如下所示。部署结构

步骤一:添加迁移服务

  1. 在迁移工具左侧导航栏,单击集群配置,然后单击新增集群,在新增集群对话框,添加源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地址及端口。

    3
  2. 再次单击新增集群,添加目标ZooKeeper集群信息。
    • 集群类型:选择ZK
    • 集群IP列表:由目标MSE ZooKeeper的Endpoint和服务端口成。例如,mse-8b7de****-p.zk.mse.aliyuncs.com:2181。
    4
  3. 在左侧导航栏,单击服务同步,然后单击新增同步,添加需要迁移的Dubbo服务。
    • 同步方式:选择双向同步,即同步的服务在任何一侧做出变更,都会同步到另一侧。
    • 同步类型:选择服务信息,MSE Sync会自动列出源集群的所有服务,按需选择即可。
    • 分组名:如果选择同步多个服务,分组名可不填写,否则填写具体Dubbo分组名。
    b1
  4. 单击确定
    在迁移工具的同步服务页面,查看已经同步的服务名。b2

步骤二:验证同步结果

  1. 登录MSE注册配置中心管理控制台,并在顶部菜单栏选择地域。
  2. 在左侧导航栏,选择注册配置中心 > 实例列表
  3. 实例列表页面,单击目标实例名称。
  4. 在左侧导航栏,选择数据管理 > 节点管理。查看Dubbo的默认路径下面是否已经存在服务。

步骤三:迁移Dubbo客户端

  1. 修改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"/>
  2. 重启客户端,Dubbo客户端连接到MSE ZooKeeper。
    说明 为保障业务不中断,建议分批重启客户端。重启完成后,检查自建集群下连接是否已经全部完成。

步骤四:关闭自建ZooKeeper集群

  1. 停止自建ZooKeeper集群。
  2. 停止迁移工具。