tikv 节点故障

tikv 有 3 个节点,分别部署在 tidb1,tidb2,tidb3 三台机器上,现在 tidb1 机器有故障,如果不先扩容多一个 tikv 节点,直接将 tidb1 机器上的 tikv 节点下线,会影响整个集群吗?
想问的就是,当 tikv 只有三个节点的时候,可以直接先将某个 tikv 节点下线吗? 后面再扩容多一台机器进来。
还是需要先扩容一个 tikv 节点,然后再将有问题的机器下线。

最稳妥的方案肯定是先扩容,然后再缩容有问题的节点。

我也是这么想的,但是目前新的机器还没准备好,PS:其实整个 tidb 集群目前都是处于测试阶段,但是由于已经同步了 2 T 的数据,如果直接将 tidb1 机器上的节点下线,怕出现问题后需要重新同步这 2 T 的数据,要花费较多的时间。

因为最小是3个tikv节点,虽然我没试过,但是我感觉tiup可能都不允许直接缩容:joy:
之前也是有人遇到tikv三节点,其中坏了一个节点的情况,也是先扩容再缩容的。

手动缩容再扩容是不行的,正常情况下一个节点只能有一个副本。不过模拟宕机的那种情况应该可以,三节点宕机一个也能正常提供服务。当然最好还是先扩容再缩容。

至少3个TiKV节点,下线TiKV会一直处于pending offline状态,无法下线成功的

  1. 无论先扩容再缩容故障节点,还是先缩容故障节点再扩容,在缩容故障节点那一步都需要确保故障节点的leader完全转移至剩余节点,否则会有很痛苦的事发生…
  2. 新版本的tiup和tidb支持有故障节点时的缩容了吗?我记得当前集群中有故障节点时tiup scale-out是会失败的,我一般选择等机器正常再扩缩容或者确保leader完全转移后再强制缩容,然后tiup扩容。

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