PD在进行coordinator is stopping时耗时过长,超过24小时,导致QPS跌零

网络正常,集群region总数是20w。
集群布署在hdd磁盘,所以pd lease容易过期,将lease调整为5s后,pd就不会频繁切leader。

反馈的 问题其实主要是 coordinator stop 花费太长时间。

经分析有两方面的原因:

  1. 故障期间,pd实例消耗cpu过高(50 core cpu)导致scheduler运行变慢,无法及时结束;
  2. scheduler 运算复杂度过高, 2000(tikv节点数) * 10(重试次数) * 2000(tikv节点数) * 5(filter 数量) 近2亿次计算,经测试机器正常负载,一次调度也得几十分钟。这个时间太长了,调度结束之前pd处于无leader状态,会影响客户端的访问。