基本概念
服务器类型
- Leader
- zk集群通过一个Leader选举过程来选定一台被称为Leader
- Leader服务器为客户端提供读和写服务
- Follwer
- 为客户端提供读服务
- Observer
- 为客户端提供读服务
- Observer机器不参与Leader选举过程,也不参与写操作的过半写成功策略
- 在不影响写性能的情况下提升集群的读性能
当前服务器的
$ZOOKEEPER_HOME/conf/zoo.cfg
配置peerType=observer
所有Server的$ZOOKEEPER_HOME/conf/zoo.cfg
配置追加:observer
如server.1:localhost:2181:3181:observer
服务器状态
- LOOKING(竞选)
- OBSERVING(观察)
- FOLLOWING(跟随者)
- LEADING(领导者)
投票信息
- logicalclock:本地选举周期,每次投票都会自增
- epoch:逻辑时钟
同一轮投票过程中值是相同的
每次选举最终确定完leader结束选举流程时会自增(真正zxid的前32位)