etcd

1:分布式的key value存储服务,能为整个分布式集群存储一些关键数据,协助分布式集群正常运行。

2:etcd使用比较简单,对外提供了GRPC的接口,可以直接使用protobuf和grpc对etcd存储的数据进行管理,也可以用官方提供的ectdctl去操作数据的存储。

Raft

每一个分布式系统中,etcd都扮演了非常重要的角色,由于很多系统的etcd的服务配置发现和服务配置都存在etcd中,所以往往整个集群可用性的上限就是etcd的可用性,在系统中3-5个etcd的节点构成高可用的集群都是常规操作。etcd

正是因为etcd启用中会启用多个节点,如何保证节点之前的分布式一致性就是个比较重要的问题。

其实解决多个节点之间的一致性的方案就是共识算法,常见的共识算法有Raft和Paxos,etcd就是用Raft算法。