1 .准备Zookeeper安装包上传到Linux并解压
Zookeeper安装包下载地址
链接: https://pan.baidu.com/s/1ZnmJrlFHjszjdVgd0RuQAA 提取码: h5ik 复制这段内容后打开百度网盘手机App,操作更方便哦
1.我放到"/root/soft/zookeeper-3.4.10/"位置了,你们随意
2.解压安装包
3.配置zookeeper环境变量,不会的话看: https://zjj1994.blog.csdn.net/article/details/118486083 帖子
这里不赘述了,能搭集群的应该都会这些东西.
2.修改配置文件
一号机器文件
一号机器zoo.cfg的配置文件
将 zoo_sample.cfg 文件复制并重命名为 zoo.cfg 文件
文件位置在"/root/soft/zookeeper-3.4.10/conf/zoo.cfg"
tickTime=2000
initLimit=10
syncLimit=5
# 数据文件存放位置
dataDir=/root/soft/zookeeper-3.4.10/data
# log文件存放位置
dataLogDir=/root/soft/zookeeper-3.4.10/logs
clientPort=2181
# 一号机器
server.1=zjj101:2888:3888
# 二号机器
server.2=zjj102:2888:3888
# 三号机器
server.3=zjj103:2888:3888
自己自行创建/root/soft/zookeeper-3.4.10/data和/root/soft/zookeeper-3.4.10/logs这两个目录
配置说明:
①、tickTime:基本事件单元,这个时间是作为Zookeeper服务器之间或客户端与服务器之间维持心跳的时间间隔,每隔tickTime时间就会发送一个心跳;最小 的session过期时间为2倍tickTime
②、dataDir:存储内存中数据库快照的位置,除非另有说明,否则指向数据库更新的事务日志。注意:应该谨慎的选择日志存放的位置,使用专用的日志存储设备能够大大提高系统的性能,如果将日志存储在比较繁忙的存储设备上,那么将会很大程度上影像系统性能。
③、client:监听客户端连接的端口。
④、initLimit:允许follower连接并同步到Leader的初始化连接时间,以tickTime为单位。当初始化连接时间超过该值,则表示连接失败。
⑤、syncLimit:表示Leader与Follower之间发送消息时,请求应答时间长度。如果follower在设置时间内不能与leader通信,那么此follower将会被丢弃。
⑥、server.A=B:C:D
A:其中 A 是一个数字,表示这个是服务器的编号;
B:是这个服务器的 ip 地址;
C:Zookeeper服务器之间的通信端口;
D:Leader选举的端口。
一号机器创建myid文件
路径是"/root/soft/zookeeper-3.4.10/data/"
创建myid文件
myid文件内容是
1
你没看错,只有一个1,
二号机器文件
二号机机器文件
将一号机器的zoo.cfg复制到二号机器上,zoo.cfg内容和一号机的内容一模一样.
自己自行创建/root/soft/zookeeper-3.4.10/data和/root/soft/zookeeper-3.4.10/logs这两个目录
二号机创建myid文件
路径是"/root/soft/zookeeper-3.4.10/data/"
创建myid文件
myid文件内容是
2
三号机器文件
三号机机器文件
将一号机器的zoo.cfg复制到三号机器上,zoo.cfg内容和一号机的内容一模一样.
自己自行创建/root/soft/zookeeper-3.4.10/data和/root/soft/zookeeper-3.4.10/logs这两个目录
三号机创建myid文件
路径是"/root/soft/zookeeper-3.4.10/data/"
创建myid文件
myid文件内容是
3
3.启动zookeeper服务
三台机器同时执行这个命令 :
sh $ZOOKEEPER_HOME/bin/zkServer.sh start
[root@zjj101 etc]# sh $ZOOKEEPER_HOME/bin/zkServer.sh start
ZooKeeper JMX enabled by default
Using config: /root/soft/zookeeper-3.4.10/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
控制台出现Starting zookeeper … STARTED字眼,说明Zookeeper启动成功了.
查看Zookeeper的状态
[root@zjj101 ~]# sh $ZOOKEEPER_HOME/bin/zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /root/soft/zookeeper-3.4.10/bin/../conf/zoo.cfg
Mode: follower
[root@zjj102 ~]# sh $ZOOKEEPER_HOME/bin/zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /root/soft/zookeeper-3.4.10/bin/../conf/zoo.cfg
Mode: leader
[root@zjj103 ~]# sh $ZOOKEEPER_HOME/bin/zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /root/soft/zookeeper-3.4.10/bin/../conf/zoo.cfg
Mode: follower
可以看到,有一台机器是leader ,两台机器是follower
附录Zookeeper的命令
启动Zookeeper
sh $ZOOKEEPER_HOME/bin/zkServer.sh start
停止Zookeeper
sh $ZOOKEEPER_HOME/bin/zkServer.sh stop
查看Zookeeper的状态
sh $ZOOKEEPER_HOME/bin/zkServer.sh status
重新启动Zookeeper服务
sh $ZOOKEEPER_HOME/bin/zkServer.sh restart