欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

ZooKeeper——伪集群

程序员文章站 2022-05-07 15:41:33
...

生产环境下的zookeeper应该采用服务器集群,但是我没那么多台机器,只好在一台机器上部署多个zookeeper实例来模拟集群。本文以3个zookeeper实例集群为例。

1.首先创建在conf目录下复制出3个配置文件

    zoo1.cfg

tickTime=2000
dataDir=/home/lan/server1/zookeeper
clientPort=2181
initLimit=5
syncLimit=2
server.1=127.0.0.1:2888:3888
server.2=127.0.0.1:2887:3887
server.3=127.0.0.1:2886:3886

     zoo2.cfg

tickTime=2000
dataDir=/home/lan/server2/zookeeper
clientPort=2182
initLimit=5
syncLimit=2
server.1=127.0.0.1:2888:3888
server.2=127.0.0.1:2887:3887
server.3=127.0.0.1:2886:3886

 

     zoo3.cfg

tickTime=2000
dataDir=/home/lan/server3/zookeeper
clientPort=2183
initLimit=5
syncLimit=2
server.1=127.0.0.1:2888:3888
server.2=127.0.0.1:2887:3887
server.3=127.0.0.1:2886:3886

 

 2.在dataDir下创建myid文件,文件内容server.x中的x

第一个实例中在/home/lan/server1/zookeeper/myid文件中输入1

第二个实例中在/home/lan/server2/zookeeper/myid文件中输入2

第三个实例中在/home/lan/server3/zookeeper/myid文件中输入3

 

3.启动三个实例

bin/zkServer.sh start zoo1.cfg

bin/zkServer.sh start zoo2.cfg

bin/zkServer.sh start zoo3.cfg

 

4.查看三个实例的状态

ZooKeeper——伪集群
由截图可以看出第二个实例被选为了leader

 

5.停止第二个实例(leader),可以看出第三个实例被选为leader了
ZooKeeper——伪集群

 

6.重新启动第二个实例,第二个实例重新加入集群,但变为follower
ZooKeeper——伪集群


 7.在某个实例上创建数据,在其余两个实例中获取数据
ZooKeeper——伪集群
 
 

相关标签: zookeeper