分布式键值数据库etcd

Posted _雪辉_

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了分布式键值数据库etcd相关的知识,希望对你有一定的参考价值。

  etcd是一个分布式的、高可用的、一致的key-value存储数据库,基于Go语言实现,主要用于共享配置和服务发现。
  在分布式系统中,etcd可集中管理配置信息,服务端将配置信息存储于etcd,客户端通过etcd得到服务配置信息,etcd监听配置信息的改变,发现改变通知客户端。为了防止单点故障,还可启动多个etcd组成集群。
etcd集群使用raft一致性算法处理日志复制,保证多节点数据的强一致性。主节点将修改记录到本地日志,并将日志复制给所有从节点,若超过一半节点响应,则认为操作成功,通知客户端。主节点提交本地修改(持久化到磁盘),通知所有从节点也进行数据修改提交。etcd集群中主节点负责写操作,多个从节点负责读操作。主节点会发送心跳包给从节点,从节点进行响应。从节点若超过一定时间(一定范围内的随机值)没有收到主节点的心跳包,则认为主节点已不可用,自身可成为候选主节点,发起投票,若超过一半节点响应,则可成为新的主节点。在每一轮投票中,参与投票的所有节点,只响应收到的第一个投票请求,对后续请求不作响应。

以上是关于分布式键值数据库etcd的主要内容,如果未能解决你的问题,请参考以下文章

分布式键值数据库etcd

docker——Etcd高可用键值对数据库

分布式键值存储系统ETCD调研

ETCD:文档

初始etcd

etcd集群搭建(高可用)