Day4: zookeeper集群

zookeeper集群

zookeeper遵循AP,追求最终一致性(根据zxid(事务id)记录数据是否过期,所以遵守顺序一致性)

zk在集群时,有三种类型的节点

leader: 可以进行数据的读写

follower: 只能进行读操作,可以参加leader选举

observer: 只能进行读操作,不能进行leader选举

建立集群:

  • 为每个server创建对应的dataDir和dataLogdir
    在每个dataDir文件夹中创建一个myid文件,里面写上服务器的唯一标识
  • 为每个server编写对应的配置文件zoo.cfg

配置文件内容

tickTime = 2000
dataDir = /opt/apache-zookeeper-3.6.3-bin/datas/zk1            data文件的存放地址,myid文件也在这里存放

clientPort = 2181
initLimit = 20
syncLimit = 2

#server.(每台server的唯一标识(在myid文件中配置))=主机地址:server同步信息,通信端口:选举leader端口:server节点的角色


server.1=192.168.137.128:2001:3001
server.2=192.168.137.128:2002:3002
server.3=192.168.137.128:2003:3003
server.4=192.168.137.128:2004:3004:observer

ZAB协议

ZAB(zookeeper atomic broadcast)协议,解决了zookeeper的崩溃恢复和主从数据同步的问题
在这里插入图片描述

ZAB定义节点的四种状态:

looking 选举状态

following

leading

observing

  • 集群启动时leader的选举过程
    在这里插入图片描述

  • 崩溃恢复时的leader选举

leader建立完后,leader周期性的向follow发送心跳包,当leader崩溃后,follow进入looking状态,重新回到选举状态

  • 主从复制原理
    在这里插入图片描述
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值