ETCD 高可用集群

ETCD 是 Kubernetes 的核心存储,Kubernetes 所有的资源对象都保存在 ETCD 中。ETCD 是否健壮将直接影响 Kubernetes 服务。

ETCD 使用 Raft 协议,因为 Raft 选举要求,一般部署为奇数个节点且数量大于 3 个。为防止机房网络故障,我们可以采用多个可用区的方式部署 ETCD。

例如,我们要部署的 ETCD 节点数为 N(N>3 且为奇数),那么我们选取 (n-1)/2 放在一个可用区中,另外一个 (n-1)/2 个节点放在另外一个可用区中,并且选取一个节点放在第三可用区中。这样设置的目的是当其中一个可用区发生故障时,其他两个区的节点数总能大于 (n-1)/2 个节点,可以防止脑裂情况,也可以保证顺利进行选举。

总字数:229字 
Last Updated:
Contributors: isno