一、下载zookeeper
- 进入官网官网地址:链接: http://zookeeper.apache.org/
- 进入下载界面,进入官网点击‘*Download ZooKeeper from the release page’
- 如果没有找到想要的版本,可以点击该按钮‘Older releases are available in the archive’
- 选择版本
- 选择指定安装包(本文安装的版本是3.5.6)
- 命令行下载
cd /home/download_file
wget https://archive.apache.org/dist/zookeeper/zookeeper-3.5.6/apache-zookeeper-3.5.6-bin.tar.gz
二、安装zookeeper
1.解压缩
cd /home/download_file
tar -zxvf apache-zookeeper-3.5.6-bin.tar.gz
mv apache-zookeeper-3.5.6-bin /usr/local/soft/
2.安装
1).创建数据目录
mkdir /data/data
mkdir /data/data/zookeeper
chmod 777 /data/data/zookeeper/
2).修改配置文件
cd /usr/local/soft/apache-zookeeper-3.5.6-bin
cd conf/
cp zoo_sample.cfg zoo.cfg
vim zoo.cfg
dataDir=/data/data/zookeeper
3).把二进制命令的路径加入系统path
vim /etc/profile
export ZK_HOME=/usr/local/soft/apache-zookeeper-3.5.6-bin
export PATH=$ZK_HOME/bin:$PATH
source /etc/profile
4).启动和停止zookeeper
cd /usr/local/soft/apache-zookeeper-3.5.6-bin
zkServer.sh start
zkServer.sh stop
5). 增加systemd管理zookeeper功能
vim /etc/systemd/system/zookeeper.service
[Unit]
Description=zookeeper.service
After=network.target
ConditionPathExists=/usr/local/soft/apache-zookeeper-3.5.6-bin/conf/zoo.cfg
[Service]
Type=forking
User=root
Group=root
ExecStart=/usr/local/soft/apache-zookeeper-3.5.6-bin/bin/zkServer.sh start
ExecStop=/usr/local/soft/apache-zookeeper-3.5.6-bin/bin/zkServer.sh stop
[Install]
WantedBy=multi-user.target
"
提示:直接使用systemctl启动zookeeper会因找不到java的路径报错
修改zkEnv.sh
"
vim /usr/local/soft/apache-zookeeper-3.5.6-bin/bin/zkEnv.sh
"
添加java路径,到此两行上方即可:
ZOOBINDIR="${ZOOBINDIR:-/usr/bin}"
ZOOKEEPER_PREFIX="${ZOOBINDIR}/.."
"
JAVA_HOME=/usr/local/soft/jdk-13.0.2
"
查找java目录
update-alternatives --config java用来选择本台服务器要用的java版本号,会展示指向了那个安装目录
"
update-alternatives --config java
"启动zookeeper"
systemctl start zookeeper
"查看启动状态"
systemctl status zookeeper
"停止zookeeper"
systemctl stop zookeeper
6). 如何查看当前已安装的zookeeper的版本?
echo stat|nc 127.0.0.1 2181
"
如果出现:stat is not executed because it is not in the whitelist.
"
vim /usr/local/soft/apache-zookeeper-3.5.6-bin/bin/zkServer.sh
else
echo "JMX disabled by user request" >&2
ZOOMAIN="org.apache.zookeeper.server.quorum.QuorumPeerMain"
fi
ZOOMAIN="-Dzookeeper.4lw.commands.whitelist=* ${ZOOMAIN}"
systemctl stop zookeeper
systemctl start zookeeper
echo stat|nc 127.0.0.1 2181
"
Zookeeper version: 3.5.6-c11b7e26bc554b8523dc929761dd28808913f091, built on 10/08/2019 20:18 GMT
Clients:
/127.0.0.1:57406[0](queued=0,recved=1,sent=0)
Latency min/avg/max: 0/0/0
Received: 1
Sent: 0
Connections: 1
Outstanding: 0
Zxid: 0x0
Mode: standalone
Node count: 5
"
7). 配置zookeeper的日志目录
mkdir /data/logs/zookeeperlogs
chmod 777 /data/logs/zookeeperlogs
vim /usr/local/soft/apache-zookeeper-3.5.6-bin/bin/zkEnv.sh
if [ "x${ZOO_LOG_DIR}" = "x" ]
then
ZOO_LOG_DIR="/data/logs/zookeeperlogs"
fi
systemctl stop zookeeper
systemctl start zookeeper
ll /data/logs/zookeeperlogs/
总用量 12
-rw-r--r-- 1 root root 8620 6月 2 17:18 zookeeper-root-server-VM-4-3-centos.out