x86集群如何迁移到arm集群

为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。

  • 【TiDB 版本】: v3.0.0
  • 【问题描述】: 前提应用不停机,我们现在想将一个x86的tidb集群迁移到arm的tidb集群上,目前x86集群上已经有数据,arm是一个新搭建的集群,目前的想法是先在x86集群使用上线下线的方式将tidb-server、pd、tikv迁移到arm上,但是中控机如何迁移? 或者是否还有其他更好的方式?

若提问为性能优化、故障排查类问题,请下载脚本运行。终端输出的打印结果,请务必全选并复制粘贴上传。

  1. 关于中控机的迁移 可以按照官方文档配置中控机,然后将原集群上 tidb-ansible 目录拷贝过去即可,中控机是没有状态的
  2. 如果 arm 是新部署的集群,中控机可以不迁移过去,新的集群也是有中控机的吧
  3. 可以考虑使用 binlog 将原集群数据同步到新集群,然后找合适时间短暂停止业务,等原集群数据都同步到新集群后,切换业务指向新集群

我的前提是不能停机,或者这么说吧现在要将原x86上的集群迁移到arm机器上, 如何处理?

可以按照库容缩容方式进行迁移,监控的数据如果需要,可以将 prometheus 数据导出并导入到新集群的 prometheus 中,监控数据的导出可以网上搜索一下方法

https://pingcap.com/docs-cn/stable/how-to/scale/with-ansible/