tikv region 重启的时候怎么迁移

请教各位老师一个问题,假设现在只有3个tikv实例,我需要重启某一个tikv实例,或者同时重启3个tikv实例
按照tiup 重启tikv的原则,重启某一个tikv实例的时候,会将这个tikv 上的leader region 迁移到其它tikv上,
那么这个时候会不会出现这样一种情况,就是某个tikv实例上,有两个相同的副本region?(其中一个leader和follower)
不知道我的理解对不对,还请各位老师指点?

只有3个kv实例挂掉一台之后不会补副本,只会迁移leader,这个时候只会有2个副本,因为补齐三副本也没有意义。因此不会出现某个tikv实例上,有两个相同的副本region的情况。

默认是3副本,当你停止一个节点的时候,需要区分你是短暂重启还是产生了故障。这个时候pd 有一个参数叫 max-store-down-time,默认30分钟,只有你超过了30分钟后主机还是无法启动的情况下,才会补充副本。而你现在的场景是短暂重启,当重启一台的时候,它只会切走leader,并不会补充副本。

我的意思就是短暂重启的时候,假设只有3个tikv 实例(leader 在tikv1上面),那么切走leader的时候,那leader 就会切换某一个tikv 实例上去(假设tikv2),那这个时候tikv2 上面就有两个region(一个原来的region副本以及切换过来的region leader ),这么理解对吗

不对,我们说的切,是角色的转换,你可以理解以前的flower角色被扶正成为了leader。

懂了,谢谢

可以提前驱逐这个TiKV上的leader,在重启。有命令可以操作的。
https://docs.pingcap.com/zh/tidb/stable/glossary/#scheduler

evict-leader-{store-id} :驱逐某个节点的所有 Leader。(常用于滚动升级)

生产中会遇到的情况,学习 了