关闭2个tikv实例后报Region is unavailable

为提高效率,请提供以下信息,问题描述清晰能够更快得到解决:

【TiDB 版本】
4.0.12
【问题描述】


5个tikv 首先使用tiup cluster 关闭10.161.67.82:20160 tikv实例,待状态从Disconnected 变为Down 后,关闭10.161.67.83:20160 tikv实例,从Disconnected 到Down 后,执行操作报Region is unavailable,tikv不是3副本吗,为什么关闭2个节点后报Region is unavailable ,理论上第二个节点关闭后leader不应该切换到其他3个节点吗?(只关闭一个tikv实例无影响)
image

Raft Group 是多副本可用状态,才能正常的读写。因为 TiKV 采用的 muti-raft 算法,关闭两个 TiKV 节点后,可能会出现 3 副本中 2 副本 down,已经不是多数派可用了。所以对应的 region 就是变成不可用状态。

如果是希望线下 TiKV,可以看考虑将 TiKV 按照缩容方式下线,关闭方式相当于强制停掉了 TiKV 节点,在 3 副本的模式下,最多只能关闭 1 台 TiKV 节点。

明白了,允许宕机数量是和副本数有关不是tikv节点数

是的哈

一般大型集群会配置多少个副本,主机数量越多 2台或多个同时宕机的几率就高

目前看大多数是3副本和5副本

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