kevinsna
(Ti D Ber P O Zcnp Ja)
1
【 TiDB 使用环境】测试
【 TiDB 版本】
【复现路径】做过哪些操作出现的问题
【遇到的问题:问题现象及影响】
【资源配置】进入到 TiDB Dashboard -集群信息 (Cluster Info) -主机(Hosts) 截图此页面
【附件:截图/日志/监控】
为什么我只是对其中一个tidb实例进行reload操作,从reload的输出中看到的是对所有的pd,tikv和tidb进行了重启的操作,且在所有tidb实例上的查询操作,当滚动重启到这个tidb的时候,都会被断开,那这个reload的操作实际还是重启,并不是我们理解意义上的reload操作?
以下对其中一个tidb实例进行reload操作:
$ tiup cluster reload tidb-test --node 192.168.90.30:4000
reload的部分输出如下所示:
Upgrading component pd
Restarting instance 192.168.90.31:2379
Restart instance 192.168.90.31:2379 success
Restarting instance 192.168.90.32:2379
Restart instance 192.168.90.32:2379 success
Restarting instance 192.168.90.30:2379
Restart instance 192.168.90.30:2379 success
Upgrading component tikv
Evicting 10 leaders from store 192.168.90.30:20160…
Restarting instance 192.168.90.30:20160
Restart instance 192.168.90.30:20160 success
Evicting 13 leaders from store 192.168.90.31:20160…
Still waiting for 13 store leaders to transfer…
Still waiting for 13 store leaders to transfer…
Restarting instance 192.168.90.31:20160
Restart instance 192.168.90.31:20160 success
Evicting 9 leaders from store 192.168.90.32:20160…
Still waiting for 9 store leaders to transfer…
Restarting instance 192.168.90.32:20160
Restart instance 192.168.90.32:20160 success
Upgrading component tidb
Restarting instance 192.168.90.30:4000
Restart instance 192.168.90.30:4000 success
Restarting instance 192.168.90.31:4000
Restart instance 192.168.90.31:4000 success
Restarting instance 192.168.90.32:4000
Restart instance 192.168.90.32:4000 success
1 个赞
reload默认是会重启的,加上这个 --skip-restart才不会马上重启;
- 命令
tiup cluster reload
会执行两个操作:
- 该选项指定后仅刷新配置,不重启任何节点,这样刷新的配置也不会应用,需要等对应服务下次重启才会生效。
1 个赞
dba-kit
(张天师)
3
看你这输出,PD 和 TiKV 都重启了啊,不太符合命令的表现,理论上只会重启192.168.90.30:4000这个节点的。你执行一下tiup cluster audit | tail
看下真正执行的命令是什么
1 个赞
Jasper
(Jasper)
6
正常情况是不会全部节点重启的,看起来是命令识别错了, 可以看下.tiup 下面的日志,找下对应时间点的具体操作
jiayou64
(jiayou64)
7
正常–node只重启该节点,确实不正常,是不是之前的操作有问题看看历史操作
如果reload操作触发了某些配置的变更,而这些变更需要重启服务才能生效,那么可能会出现服务重启的情况。
kevinsna
(Ti D Ber P O Zcnp Ja)
12
原因我猜大概率是我这在server_configs中加了tidb,tikv,pd,ticdc的配置,虽然重启的是其中一个tidb节点,但由于是全局配置,tidb此时会重启所有实例。我这单独对对应节点加配置后,通过-N指定只reload那个节点,确实是只重启了那个节点
kevinsna
(Ti D Ber P O Zcnp Ja)
13
好的,感谢~,不过我发现即使我edit-config的是错误的配置,加上–skip-restart后也可以刷新成功,但是下次重启的时候,就启动失败了,tidb没有对配置文件进行校验,或者不是所有的错误配置都可以校验出来
kevinsna
(Ti D Ber P O Zcnp Ja)
14
增加的是server_configs的全局配置,且增加了tidb,tikv,pd。我猜是这个原因,单独在某个节点加配置,然后reload这个节点,确实只重启这个节点
kevinsna
(Ti D Ber P O Zcnp Ja)
15
找到真正的原因了,原因是我这边要从个人用户通过sudo -u tidb安装用户的方式去执行命令,所以我就做了以下操作,然后就可以直接在个人用户下执行tiup命令了,但是我只到了$3,而我执行的命令不止3个参数了,所以此时只能识别到3个参数,其实我执行的都是tiup cluster reload tidb-test。这点也可以通过tiup cluster audit看出来,感谢大家
[kevinsna@zhongkong ~]$ vi ~/.tiup.sh
cd /tmp
sudo -u tidb /home/tidb/.tiup/bin/tiup $1 $2 $3
[kevinsna@zhongkong ~]$ vi ~/.bash_profile
alias tiup=“/usr/bin/sh ~/.tiup.sh”
kevinsna
(Ti D Ber P O Zcnp Ja)
16
感谢,自己弄的别名的问题,具体的在帖子里面也有写了,谢谢啦
加上以后只是重加载一下配置不会重启,所以有报错也不影响当前进程运行,不过可以看下日志肯定有报错,重启的话校验有问题就重启不了了