pd无法启动,提示集群id不匹配

【 TiDB 使用环境】生产环境
【 TiDB 版本】6.5.0
【复现路径】刚创建就不行
【遇到的问题:问题现象及影响】pd起不来,错误日志如下,请大佬看下是什么导致的?配置里并没有集群id这中配置,部署方式是使用tiup部署的
[FATAL] [main.go:117] [“run server failed”] [error=“Etcd cluster ID mismatch, expect 15606846352041391624, got 16540809998682290851”] [stack=“main.main\n\t/home/jenkins/agent/workspace/build-common/go/src/github.com/pingcap/pd/cmd/pd-server/main.go:117\nruntime.main\n\t/usr/local/go/src/runtime/proc.go:250”]

不是第一次部署?环境不干净?

我销毁试试看

资源不足?

可能是由于以下原因导致的:
PD节点之间的etcd集群ID不一致,导致无法正常启动和通信。这可能是因为在部署或配置PD节点时,使用了不同的–initial-cluster参数,或者在PD节点上运行过其他的etcd实例,导致生成了不同的etcd集群ID。
PD节点之间的etcd数据目录不一致,导致无法正常启动和同步。这可能是因为您在部署或配置PD节点时,使用了不同的–data-dir参数,或者在PD节点上修改过etcd数据目录,导致数据不一致。

解决方法:

检查PD节点的启动参数,确保所有PD节点使用相同的–initial-cluster参数,并且包含所有PD节点的信息。例如,如果有三个PD节点,分别为pd1、pd2、pd3,则可以使用以下参数启动PD节点:

--initial-cluster pd1=http://pd1:2380,pd2=http://pd2:2380,pd3=http://pd3:2380

检查PD节点的启动参数,确保所有PD节点使用相同的–data-dir参数,并且指向一个空的或者已经清空的数据目录。例如,如果想使用/data/pd作为数据目录,则可以使用以下参数启动PD节点:

--data-dir /data/pd
  • 如果以上方法仍然无法解决问题,可以尝试删除所有PD节点上的etcd数据目录,并重新启动PD节点。注意,这样做会丢失所有已有的数据和配置,请谨慎操作,并在操作前做好备份。例如,如果使用/data/pd作为数据目录,则可以执行以下命令删除数据目录:
rm -rf /data/pd

是不是做过pd重建?

1 个赞