一种基于etcd实践节点自动故障转移的思路
etcd作为基于raft强一致性协议实现的分布式存储, CP模型,天生对外输出协调和共识能力, 能确保不同客户端在同一时间读到的内容相同。在我们这个故障转移的场景,能稳定的输出唯一的leader。
etcd作为基于raft强一致性协议实现的分布式存储, CP模型,天生对外输出协调和共识能力, 能确保不同客户端在同一时间读到的内容相同。在我们这个故障转移的场景,能稳定的输出唯一的leader。
Etcd广泛应用于分布式系统中,如Kubernetes、服务发现、消息队列、负载均衡、分布式锁等场景。它提供了强大的数据管理能力,适用于需要高可用、一致性及数据共享的分布式应用。etcd为了防止性能下降其存储大小配额默认设置为2GB(当然我们可以修改为最高8G
当etcd的磁盘使用达到2G后,可能会触发维护模式,此时集群将仅接受键值读取和删除操作,不支持写入。即使清理了部分数据,如果未正确处理etcd的存储配额和压缩机制,仍然可能无法写入。罗列下处理的几个思路,抛砖引玉!
Etcd的默认存储大小是2GB,最大可以设置为8GB。今天我一个朋友就遇到了etcd超过2GB,导致写入的时候报错了,“Error: etcdserver: mvcc: database space exceeded”