Tipedia

PD 依赖 etcd

Last edited by longfangsong at 2021-03-18
PD etcd

原因主要有:

  • 简单方便

    最初 TiKV 并未实现 Raft。

    时至今日修改的工作量大,可选方案有:

    • 部署特殊的TiKV来支持PD leader选举

      在运维层面恐怕很难被接受

    • TiKV内部运行特殊的raft group

      可能要开辟多个独立的keyspace,而且在运维层面可能还是要区分“带特殊 raft group 的 TiKV”和“普通TiKV”

    两种方案都涉及大量工作。

    此外下游 PD 的修改量也很大。

  • 多个不同”阶层“的raft混合在一起运行,可能会相互影响并对问题诊断带来一些障碍。

  • etcd 较为稳定

  • etcd 有较好的社区支持

  • TiKV/TiDB 本身目前不具备一部分 etcd 的功能,如 lease/watch

Links