zookeeper总结
zookeeper是什么?
zookeeper是一个高可用分布式文件系统,可通过zkCli命令进入zookeeper,通过内置的命令进行查询当前的Znode,可以进行查询、新增、删除等操作。zookeeper集群状态下,每个节点的Znode都是相同的。当修改一个节点上的Znode时,其他节点上的文件也会被同步修改,zookeeper会在每台服务上都存储一份Znode
zookeeper选举机制
选举规则:zxid更大的会被投票,zxid相同时,sid(myid)更大的会被投票
启动时选举
运行时选举
zk节点选型
为什么是奇数台?
保证zk的高可用,奇数台可以保障如果有一台机器在集群中挂了,还可以继续提供服务,保障zk的高可用性
为什么要求选举票数超过半数?
防止脑裂
zookeeper如何解决脑裂问题?
法定人数、冗余通信、共享资源、仲裁机制、启动磁盘锁定