“pd server”
TiDB 集群中的多个 PD 提供的服务的方式是选出一个 PD 作为 leader 来提供服务的,当 leader 出现故障或者网络隔离后,其余的节点会自动通过 raft 选出新的 leader 继续服务。
“etcd”
PD 的 leader 选举并非自己实现 raft,而是直接内嵌了 embedded etcd,然后基于 etcd 提供的 lease 机制来实现 leader 选举。
PD 使用 etcd 作为存储后端来保存集群的元信息和调度信息,确保即使在节点故障的情况下,集群的状态也能够保持一致,并且能够自动进行故障转移