- 版本:3.7.0
- 节点IP:
- 172.50.13.103
- 172.50.13.104
- 172.50.13.105
- 获取安装包:
wget http://mirrors.ustc.edu.cn/apache/zookeeper/zookeeper-3.7.0/apache-zookeeper-3.7.0-bin.tar.gz
- 解压并放到规范位置
tar xf apache-zookeeper-3.7.0-bin.tar.gz -C /home/web mv /home/web/apache-zookeeper-3.7.0 /home/web/zookeeper
- 编辑配置文件
cp /home/web/zookeeper/conf/zoo_sample.cfg /home/web/zookeeper/conf/zoo.cfg
vim /home/web/zookeeper/conf/zoo.cfg
,内容如下:
# 基本检测心跳和超时时间,单位毫秒 tickTime=2000 # 最多忍受心跳间隔数。10 * 2000 = 20秒 initLimit=10 # leader和follower之间最大请求、应答时间长度。5 * 2000 = 10秒 syncLimit=5 # 存储快照文件的目录。需要事先创建好。如果没有配置dataLogDir,日志也会放在这个目录 dataDir=/home/data/zookeeper # 服务进程监听端口 clientPort=2181 # server.第几台服务器=服务器IP:与集群中leader通信的端口:leader宕机后重新选举的端口 server.1=172.50.13.103:2888:3888 server.2=172.50.13.104:2888:3888 server.3=172.50.13.105:2888:3888
- 在
dataDir
目录下创建并编辑myid
文件,数字与zoo.cfg
中第几台服务器的数字对应。
# 172.50.13.103执行: echo "1" > /home/data/zookeeper/myid # 172.50.13.104执行: echo "2" > /home/data/zookeeper/myid # 172.50.13.105执行: echo "3" > /home/data/zookeeper/myid
- 启动:
/home/web/zookeeper/bin/zkServer.sh start
- 其它:
- 查看zookeper服务状态:
/home/web/zookeeper/bin/zkServer.sh status
- 停止zookeeper服务:
/home/web/zookeeper/bin/zkServer.sh stop
- 重启zookeeper服务:
/home/web/zookeeper/bin/zkServer.sh restart
问题记录
- 找不到或无法加载主类 org.apache.zookeeper.server.quorum.QuorumPeerMain
- 下载的二进制安装包错误。3.5.5版本后,下载的包名中应该有
bin
这个词,比如:apache-zookeeper-3.7.0-bin.tar.gz
,而不是apache-zookeeper-3.7.0.tar.gz