一、下载
可以从 https://zookeeper.apache.org/releases.html 下载ZooKeeper,目前最新的稳定版本为 3.4.8 版本,安装zookeeper的前提时安装了JDK,如果你还没有安装JDK可以参考此文章:https://blog.youkuaiyun.com/qq_42668255/article/details/97368887
云盘链接:https://pan.baidu.com/s/1AAJgMapVmPUUma1AaZjAzg
提取码:a5r1
二、安装
- 将安装包放到你想解压的目录下,执行命令:tar -xzvf zookeeper-3.5.0-alpha.tar.gz
- 如果你嫌文件名太长想修改:mv zk35
下载并解压ZooKeeper软件压缩包后,可以看到zk包含以下的文件和目录
- bin目录
zk的可执行脚本目录,包括zk服务进程,zk客户端,等脚本。其中,.sh是Linux环境下的脚本,.cmd是Windows环境下的脚本。 - conf目录
配置文件目录。zoo_sample.cfg为样例配置文件,需要修改为自己的名称,一般为zoo.cfg。log4j.properties为日志配置文件。 - lib
zk依赖的包。 - contrib目录
一些用于操作zk的工具包。 - recipes目录
zk某些用法的代码示例
三、配置
- 进入 /home/ubuntu/zk35/conf 执行cd /home/ubuntu/zk35/conf
- 复制样例文件 cp zoo_sample.cfg zoo.cfg
- 创建一个数据文件 mkdir /home/ubuntu/zk35/data 此data目录应该为你所安装的zookeeper目录下
- 要启动ZooKeeper,您需要配置样例文件。cd /home/ubuntu/zk35/conf/
- 进入zoo.cfg文件进行编辑 vim ./zoo.cfg
- 修改dataDir=/home/ubuntu/zk35/data 此路径为上面创建的路径
- tickTime
时长单位为毫秒,为zk使用的基本时间度量单位。例如,1 * tickTime是客户端与zk服务端的心跳时间,2 * tickTime是客户端会话的超时时间。
tickTime的默认值为2000毫秒,更低的tickTime值可以更快地发现超时问题,但也会导致更高的网络流量(心跳消息)和更高的CPU使用率(会话的跟踪处理)。 - clientPort
zk服务进程监听的TCP端口,默认情况下,服务端会监听2181端口。 - dataDir
无默认配置,必须配置,用于配置存储快照文件的目录。如果没有配置dataLogDir,那么事务日志也会存储在此目录。
四、启动
- 进入bin目录 cd /home/ubuntu/zk35/bin
- ./zkServer.sh start 以后台方式启动服务器
- 如果想在前台中运行以便查看服务器进程的输出日志,可以通过以下命令运行 ./zkServer.sh start-foreground
- ./zkCli.sh 启动客户端
- ./zkServer.sh stop 停止服务器
五、环境变量
- 想要全局启动服务器或者客户端需要配置全局变量 vim /etc/profile
export ZK_HOME=/home/ubuntu/zk35 (自己的zookeeper安装目录)
export PATH=$PATH:$ZK_HOME/bin
2. source /etc/profile 环境变量立即生效
3. zkServer.sh start 启动服务器 有如下节点启动则成功