基于多副本的单集群容灾方案---如何进行扩缩容

【 TiDB 使用环境】生产环境
【 TiDB 版本】 v7.5

基于多副本的单集群容灾方案—如何进行扩缩容
文档 没有这一块的内容。

没太明白什么意思, TiDB 默认就是3副本的,你的环境和一般配置有啥不同呢?

多副本在部署都是不一样的,有az,rack/label等,这些在扩容的时候怎么做呀

单区域双 AZ 部署 TiDB | PingCAP 文档中心

缩容扩容的时候,label要设置对就行了。其他的没什么。

1 个赞

哦明白你意思了,你设置了label呀, 扩容操作都是一样的,就是注意下扩容之后的拓扑尽量保证每个zone/az/rack 中 tikv 实例的数量要保持一致,不然可能会导致数据不均衡的情况

1 个赞

看一下视频303,里面专门有各种扩容缩容

设置label主要针对不同的机架或者不同的机房,你如果想在某个机架或者机房扩容的话,就指定对应的label即可,但是缩容得考虑到这个机架或者机房是否对应label的节点足够,例如你这个label已经只有1个节点了,然后你一共三个label对应三个副本,你还要把这个label上唯一的节点缩容掉,那肯定是不行的了。

最重要的一点,是明确待操作的节点在进行扩缩容前后,该节点的有无的变化对集群的影响,做好这点评估问题就不大。

  • 如果是扩容,应该要慎重设置新节点的 label 情况,准备好准确的配置文件。
  • 如果是缩容,一定要保证在缩容后,对于的 label 级别有足够剩余的节点来接受迁出的数据。

然后扩缩容的执行命令,通过 tiup scale-out或scale-in 就行。

可以看看这个方案

基于多副本的单集群容灾方案

https://docs.pingcap.com/zh/tidb/stable/dr-multi-replica

能维护到raft高可用的最低要求,保持高可用,应该按照文档的scale-in就能操作了,配置正确的节点,角色信息