“no etcd leader, check pd leader later” 错误表明 TiDB 集群中的 etcd 组件无法选出一个 leader。
可能的原因
- 磁盘 I/O 问题:PD 节点所在磁盘的 I/O 负载过高,导致 etcd 写入操作延迟增加。可以通过查看 Grafana 监控面板中的 disk performance → latency/load 指标来验证。
- 网络问题:PD 节点之间的网络连接不稳定或中断,导致 etcd 节点之间无法正常通信。PD 日志中可能会显示
lost the TCP streaming connection
错误。 - 系统负载过高:系统负载过高导致 PD 进程响应缓慢,日志中可能会显示
server is likely overloaded
。 - etcd 数据不一致:etcd 集群中的数据出现不一致,导致无法选出 leader。
- PD 节点数量不足:如果多个 PD 节点同时宕机,剩余的节点数量不足以形成多数派(majority),etcd 将无法选出 leader。
建议你检查下对应时间点你的集群pd节点之间网络,以及pd的节点io是否正常,负载是否正常,pd节点状态是否正常,是否进行了leader切换。