Tidb新增pd节点提示在初始群集配置中找不到本地名称“pd4”

TiDB 版本:2.0

操作:

1.初始化新增PD节点 ansible-playbook bootstrap.yml -l 192.168.138.15

2.部署新增PD节点 ansible-playbook deploy.yml -l 192.168.138.15

3.登录新增的 PD 节点,编辑启动脚本:{deploy_dir}/scripts/run_pd.sh

      3.1		移除 --initial-cluster="xxxx"  配置	
		
      3.2		添加 --join="http://192.168.138.12:2379" 

问题:查看pd.log日志发现报错:run server failed: couldn’t find local name “pd4” in the initial cluster configuration

2赞

后面有 rolling update 吗

pd日志还是配置文件呢?

这个是我这边的一部分日志

这个集群原来有几个pd节点,新增的节点是写到 pd_servers最下面一行吗,pd4 即是新增的节点吗

最早四个pd,下线过一台,现在是三个pd(不包含pd4),pd4是新增的节点,已经写到pd_servers中 image 其中15是pd4

现在正常的pd只有12和14,其中13已经down掉

pd4 是可以解析的域名吗? 感觉是 etcd 解析不到 pd4 。 能否发一下启动参数,和从开始一直到报错时的日志?

我这边都是内网离线部署,应该没有域名这个概念吧

这个是pd文件和启动方法

其他几个节点,包括下线的,有没有也叫 pd4 的?

192.168.138.11 是怎么下掉的,只是 down 掉了,还是走的正常的下线流程?

是否有不加 join 参数启动过?

11不清楚了,13现在也是down的,13是服务器直接挂掉了

没有,pd4是新加的,其他节点是pd1-3,其中11不清楚下线流程,13是非正常下线,服务器直接down掉,目前13还没下线,服务器也不通的

现在有两个问题,1 是 13 down 掉了,需要先移除,再加新的节点。 2 是 15 可能在没加join 的时候启动过,PD 会记住第一次启动的参数,可以清除其数据再启动。

  1. 走正常流程移除 13 这个节点
  2. 清空 15 的 PD 数据,重新启动

1.13这个节点目前已经不存在,怎么正常下线? 2.怎么清空15PD数据在重新启动?

正常下线: https://pingcap.com/docs-cn/v3.0/how-to/scale/with-ansible/ 。 已经down 掉没关系,就不用执行 stop 这一步

清除数据: 找到 pd 4 的数据目录,直接删除就好(不要误删 TiKV 的)

pd目录是这个吗data.pd 我这边13机器上kv,tidb跟PD都有的

是的 data.pd

直接删除这个目录然后运行start.pd这个脚本吗? run_pd不需要改动任何东西吧