温馨提示:这篇文章已超过467天没有更新,请注意相关的内容是否还可用!
摘要:本文介绍了Zookeeper二集群搭建的学习内容。Zookeeper作为分布式系统中的重要组件,其集群搭建对于提高系统的可靠性和性能至关重要。本文详细阐述了二集群搭建的过程,包括准备工作、配置步骤和注意事项。通过学习,读者可以了解如何在分布式环境中搭建Zookeeper二集群,以提升系统的可用性和容错能力。
Leader选举:
Serverid:服务器ID,在多台服务器构成的集群中,每个服务器都有一个唯一的ID,编号越大,在选举算法中的权重越大。
Zxid:数据ID,表示服务器中存放的最大数据ID,值越大说明数据越新,在选举算法中数据越新权重越大。
在Leader选举过程中,某台ZooKeeper如果获得超过半数的选票,则成为Leader。
Zookeeper集群搭建
搭建要求
为测试方便,通常会搭建伪集群,即把所有的服务都搭建在一台虚拟机上,用端口进行区分,这里要求搭建一个三个节点的Zookeeper伪集群。
2 准备工作
安装JDK(此步骤省略)。
将Zookeeper压缩包上传到服务器,并解压,为了区分每个Zookeeper实例,将其复制到三个不同的目录。
创建data目录,并将conf下的zoo_sample.cfg文件改名为zoo.cfg。
3 配置集群
在每个zookeeper的data目录下创建一个myid文件,内容分别是1、2、3,这个文件记录每个服务器的ID。
在每一个zookeeper的zoo.cfg中配置客户端访问端口(clientPort)和集群服务器IP列表。
4 启动集群
启动每个Zookeeper实例。
5 模拟集群异常
测试从服务器挂掉的情况,观察主服务器的状态。
测试主服务器挂掉的情况,观察其他服务器的状态,得出结论当主服务器挂掉时,集群无法正常运行,因为可运行的机器数量必须超过集群总数的一半。
再次启动挂掉的服务器,观察状态变化,新的领导者会产生。
停止当前领导者,并启动之前停掉的服务器,观察角色变化,得出结论当领导者产生后,新加入的服务器不会成为领导者。
Zookeeper集群角色
Leader(领导者):处理事务请求,是集群内部各服务器的调度者。
Follower(跟随者):处理客户端非事务请求,转发事务请求给Leader服务器,并参与Leader选举投票。
Observer(观察者):处理客户端非事务请求,转发事务请求给Leader服务器,但不参与投票。
还没有评论,来说两句吧...