- 【TiDB 版本】:v4.0.0
- 【问题描述】:
在tiup 1.1.1方式下正常关闭服务后,进行了服务器的搬迁。在搬迁后,tidb服务的各节点ip地址发生了变化。请问如何修改配置,使得服务正常启动?
你好,一般在不建议调整集群中节点的 IP,最好在部署阶段就规划好,对于服务器搬迁这种情况,可以考虑通过扩容再缩容的方式调整各组件的 IP 地址。如果 IP 地址因为其他因素必须调整的话,可以考虑使用下面这种方法来重新拉起集群,但存在一定的风险,操作前请备份和配置文件和相关数据:
-
停止集群
tiup cluster stop {cluster-name} -
修改集群配置文件 meta.yaml
通过编辑 ~/.tiup/storage/cluster/clusters/{cluster-name}/meta.yaml ,替换为调整后的实际 IP 地址 -
重建 PD 集群
由于 PD 会将 IP 和端口信息持久化到 etcd 中,无法直接修改,现阶段只能重建 PD,这里需要考虑类似 ticdc 这种依赖于 PD 持久化数据的组件,可能需要重新同步数据了,这个需要均衡下。
- 将旧PD 数据目录移走(可以删掉,但是安全起见用 mv)
- 使用 pd-recover 方式重建整个 PD 集群,参考下面文档:https://docs.pingcap.com/zh/tidb/stable/pd-recover/
- Reload 集群
好的,我去尝试一下。目前我的服务只用到tidb、pd和tikv三个组件,应该不存在“ticdc 这种依赖于 PD 持久化数据的组件”
问题?
是的,你这种不存在 ticdc 问题依赖 PD 持久化数据的问题,如果后面还需要进行服务器搬迁的话,建议还是通过扩缩容的方式直接迁移集群,这种方式风险较小。