failed to add operator, maybe already have one

【 TiDB 使用环境】生产环境 /测试/ Poc
【 TiDB 版本】v4.0.7
【复现路径】pd-ctl operator add transfer-peer
【遇到的问题:问题现象及影响】
【资源配置】
【附件:截图/日志/监控】

执行pd-ctl operator add transfer-peer 报错 Failed! [500] “failed to add operator, maybe already have one”

已经停掉所有add operator 操作

图片
速度非常的慢, 发现每4秒才能执行一次

有什么办法加速peers迁移吗?

或者有没有什么命令 可以将存在某一个 storeid上的peer 全部强制迁移到另一个 这样就不用一个一个ragion迁移了

config set leader-schedule-limit xxx
config set region-schedule-limit xxx
config set replica-schedule-limit xxx
config set max-snapshot-count xxx
config set max-pending-peer-count xxx
store limit xx xxx add-peer
生产环境建议慢慢跑就是了,测试环境可以根据需要调整下

CPU 内存 这些资源高不高??

可以通过以下方式加速 peers 迁移:

  1. 调整 TiKV 集群的 raftstore.apply-pool-sizeraftstore.store-pool-size 参数,以增加 apply 和 store 线程池的大小,从而提高 apply 和 store 的并发度。
  2. 调整 TiKV 集群的 raftstore.apply-pool-queue-capacityraftstore.store-pool-queue-capacity 参数,以增加 apply 和 store 线程池的队列容量,从而减少 apply 和 store 线程池的阻塞等待时间。
  3. 调整 TiKV 集群的 raftstore.store-max-batch-size 参数,以增加每个 store 批量写入的大小,从而减少写入次数,提高写入效率。
  4. 调整 TiKV 集群的 raftstore.apply-max-batch-size 参数,以增加每个 apply 批量处理的大小,从而减少处理次数,提高处理效率。

此外,还可以通过调整 TiKV 集群的 raftstore.store-pool-size 参数,以增加 store 线程池的大小,从而提高 store 的并发度。同时,还可以通过调整 TiKV 集群的 raftstore.store-pool-queue-capacity 参数,以增加 store 线程池的队列容量,从而减少 store 线程池的阻塞等待时间。

如果以上方法无法解决问题,您可以尝试升级 TiDB 集群的版本,以获取更好的性能和更快的迁移速度。

机器本身资源非常高 使用率不高

已经都调成0了 只有admin-move-peer了 非常慢

如果是测试环境,要把上面的调度调大
调成0肯定很慢啊,或者就不调度了

调大 就会 Failed! [500] “failed to add operator, maybe already have one 大量的balance merge 会占用 add operator 我都调成4096了 也会报

operator show 看下呢

你这个是config show吧

很奇怪的是每4s执行一次 就不会报 Failed! [500] “failed to add operator, maybe already have one”

store limit 6 200 remove-peer
store limit 137863286 200 add-peer

这不是在调度吗,增加调度速度就可以了啊