学习 etcd(一):初识 etcd

etcd 是一个可靠的分布式键值存储,使用 Go 语言开发。 etcd 最初于 2013 年 6 月由 CoreOS 开发,并于 2018 年 12 月进入 CNCF 孵化。 和 etcd 类似的项目还有 Apache ZooKeeper。 »

etcd 源码分析(二):Raft 算法

Raft 一致性算法,使用了复制状态机,确保集群中的每个节点对相同序列的状态事务达成一致。 Raft 复制状态机通过复制日志实现。每个服务包含了日志,每个日志包含了相同的有序的命令,状态机处理日志中的命令计算状态。所以,保持复制日志的一致性就可以保证状态机的一致性。 Raft 集群包含多个服务,服务处于以下其中一种状态: Leader 处理客户端交互和日志同步,任何时刻集群中最多有一个 Leader; Follower 完全被动,不主动发起任何 RPC 调用; Candidate Follower 用于选举新的 »