pd扩容报错

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

  • 【TiDB 版本】:3.0.1
  • 【问题描述】:系统原有一个tipd节点,现再扩容一个tipd节点,执行

ansible-playbook rolling_update.yml

报错,错误信息如下

TASK [get PD name] *************************************************************************************************************************************************************************************************************************
fatal: [172.16.107.224]: FAILED! => {“access_control_allow_headers”: “accept, content-type, authorization”, “access_control_allow_methods”: “POST, GET, OPTIONS, PUT, DELETE”, “access_control_allow_origin”: “*”, “changed”: false, “connec
tion”: “close”, “content”: "redirect to not leader
", “content_length”: “23”, “content_type”: “text/plain; charset=utf-8”, “date”: “Sat, 11 Jan 2020 16:14:24 GMT”, “msg”: “Status code was 500 and not [200]: HTTP Error 500: Internal Server Error”, “redirected”: false, “status”: 500, “url”: “http://172.16.107.224:2379/pd/api/v1/members”, “x_content_type_options”: “nosniff”}

这是当时新pd节点服务器的pd.logpd.log.tar.gz (103.5 KB)

请问,扩容报错是什么原因呢

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

您好:请反馈下当前member信息,多谢 /home/tidb/tidb-ansible/resources/bin/pd-ctl -u “http://172.16.10.1:2379” -d member

你好,以原有PD节点IP查询信息

以新PD节点IP查询信息

pd 新增节点需要修改相关启动脚本。具体步骤可以参考官网文档。

我升级的时候,明明修改了run_pd.sh,怎么这个时候看,又恢复了呢。

升级报错后,我就又执行了一次

ansible-playbook rolling_update.yml

两个run_pd.sh文件内容如下:

是什么操作,会让run_pd.sh恢复呢,按升级文档,就算多次执行 ansible-playbook rolling_update.yml应该不影响吧,在没有升级成功的情况下

看 member 已经从 1个扩容成了 2个了 现在 rolling update 还报错么。

rolling update 会去覆盖脚本 所以放在扩容完成后面做

仍然会报错,这是最后一次执行的错误日志
ansible.log.tar.gz (174.8 KB)

应该是重启的时候 tikv 去 探活,pd 还没有准备好服务

ansible-playbook rolling_update.yml -t tikv

ansible-playbook rolling_update.yml -t tidb

手动分步骤重启下。

很少有使用 2 pd 节点的,根据 raft 协议,和单 pd 节点没有区别。

此话题已在最后回复的 1 分钟后被自动关闭。不再允许新回复。