使用了Placement Rules in SQL 后,扩容不会balance数据

【 TiDB 使用环境】生产环境 /测试/ Poc
【 TiDB 版本】V6.5.0
【遇到的问题:问题现象及影响】 对已有的库设置了Placement Rules 规则后。扩容了同一标签的tikv,并不会进行region balance。

把相关设置和region监控发一下吧

1 个赞


扩容文件能发一下吗,看看server.labels 部分


10.1.38.32 配置了相同的Placement Rules规则,可是扩容后region和leader 就稳定了,不在继续平衡了这个是有问题的呀。

10.1.20.180 这个没有配置Placement Rules规则,几乎没有任何region。我觉得这个是没任何问题的。

image
180是没配置Label吗?

180 是故意不配置的,做对照

label 从pd-ctl 和tidb dashboard 是能确保一致

show placement、show placement labels看下

1 个赞

看看pd leader 、和这个tikv的日志 里的相关调度内容

image
这四台tikv机器配置一样吗?

实在找不到问题的时候,可以尝试重启一下这个tikv,之前遇到过类似情况,重启了tikv就开始迁移了


从这台tikv的log 上来看是在迁移region的。

处理磁盘能力不一致,新加的180稍微差点。但是监控上看io并没有使用完

我在猜想有没有可能和lable标签的深度有关。

看看几个节点的score差异大不大

默认情况下,add-peer和remove-peer都只有50,很低的。所以迁移速度会比较慢

https://docs.pingcap.com/zh/tidb/stable/pd-scheduling-best-practices#节点上线速度慢

可以看一下这个文档,使用pd-ctl来调整一下迁移region的几个参数

你看pd里的Log,有没有往32这个store上调度的信息,比如add peer这样的