zookeeper 3.6.3安装
Zookeeper需要依赖JAVA环境运行,JDK的安装可参考:
https://blog.csdn.net/weixin_41212819/article/details/123603910
一、zookeeper安装
1.下载
清华源,国内速度快
[https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/]
apache源,版本多
https://archive.apache.org/dist/zookeeper/
新版zk有两种,要下载:apache-zookeeper-3.6.3-bin.tar.gz
apache-zookeeper-3.6.3.tar.gz是源码包。
2.解压并配置文件
tar -xzvf apache-zookeeper-3.6.3-bin.tar.gz #解压
mv apache-zookeeper-3.6.3-bin zookeeper #文件重命名
①编辑zoo.cfg文件
/soft/zookeeper/conf
cp zoo_sample.cfg zoo.cfg #尽量留存一份模板文件
vim zoo.cfg
配置参数解读
1.tickTime =2000:Zookeeper使用的基本时间,服务器之间或客户端与服务器之间维持心跳的时间间隔,也就是每个tickTime时间就会发送一个心跳,时间单位为毫秒。
它用于心跳机制,并且设置最小的session超时时间为两倍心跳时间。
2.initLimit =10:LF初始通信时限
集群中的Follower跟随者服务器与Leader领导者服务器之间初始连接时能容忍 的最多心跳数(tickTime的数量),用它来限定集群中的Zookeeper服务器连接到Leader的时限。
3.syncLimit =5:LF同步通信时限
集群中Leader与Follower之间的最大响应时间单位,假如响应超过syncLimit * tickTime,Leader认为Follwer死掉,从服务器列表中删除Follwer。
4.dataDir:数据文件目录+数据持久化路径,主要用于保存Zookeeper中的数据。
5.clientPort =2181:客户端连接端口,监听客户端连接的端口。
6.server.A=B:C:D。
A是一个数字,表示这个是第几号服务器;集群模式下配置一个文件myid,这个文件在dataDir目录下,这个文件里面有一个数据就是A的值,Zookeeper启动时读取此文件,拿到里面的数据与zoo.cfg里面的配置信息比较从而判断到底是哪个server。
B是这个服务器的地址;
C是这个服务器Follower与集群中的Leader服务器交换信息的端口;
D是万一集群中的Leader服务器挂了,需要一个端口来重新进行选举,选出一个新的Leader,而这个端口就是用来执行选举时服务器相互通信的端口。
7.admin.serverPort=8088,zookeeper最近版本中有个内嵌的管理控制台是通过jetty启动,默认会占用8080 端口,可通过admin.serverPort=自定义端口号修改。
另外若集群云服务器或k8s容器中运行需要设置quorumListenOnAllIPs=true监听所有可用IP地址的连接。
其他Zookeeper配置参数可参考:
https://blog.csdn.net/qianshangding0708/article/details/50067483
②创建myid
cd /soft/zookeeper/
mkdir data
cd data
echo 0 > myid
myid,这个文件在dataDir目录下,这个文件里面有一个数据代表该服务,Zookeeper启动时读取此文件,拿到里面的数据与zoo.cfg里面的配置信息比较从而判断到底是哪个server。
3.zookeeper启动
cd /soft/zookeeper/bin
./zkServer.sh start
Mode单台启动时不会显示,集群启动时会显示leader/follower。
如若出现Client port found: 2181. Client address: localhost. Client SSL: false. Error contacting,检查防火墙,selinux等。
其他两台服务器zookeeper按以上配置,其中修改各自 myid 对应的节点号1、2,启动
测试
cd /soft/zookeeper/bin
./zkCli.sh -server 192.168.231.130:2181
./zkCli.sh -server 192.168.231.131:2181
./zkCli.sh -server 192.168.231.132:2181