Advertisement

etcd构建自身高可用集群主要采用几种方式

阅读量:

etcd构建自身高可用集群主要存在三种方式:

静态发现:在启动阶段,通过--initial-cluster参数直接指定集群中的各个节点地址,前提是已经明确知晓集群中所有节点的信息。

etcd动态发现:与静态配置不同,该方式适用于在搭建集群之前无法提前获知各节点信息的情况。在实际应用场景中,可能存在尚未确定各节点IP的情况,此时可通过已有的etcd集群辅助新集群的搭建。借助已有集群作为数据交互中心,在扩展新集群时实现服务发现机制。例如官方提供的discovery.etcd.io即为这一机制的典型应用。

DNS动态发现:利用DNS查询的方式获取其他节点的地址信息。

一.静态部署(前提条件)

需要准备多台主机进行部署,虽然容器技术也可以实现此目的,但由于后续将学习跨主机访问相关内容,因此此处不采用容器方式,而是使用多台虚拟机进行部署。

通常情况下,etcd集群节点数量会设置为3、5、7或9个。为何不选择偶数个节点?

  1. 偶数个节点的集群存在更高的不可用风险,在主节点选举过程中可能出现票数相等的情况,从而触发新一轮选举。

  2. 在某些网络分割场景下,偶数个节点的集群可能无法正常运行。当网络出现分割后,若将集群对半分隔开,则整个集群将无法正常工作。根据RAFT协议规定,在这种情况下写操作无法获得多数节点的一致同意,导致写入失败并影响整个集群的正常运行。

请确保所开启的主机

全部评论 (0)

还没有任何评论哟~