1.部署的服务器ip地址
172.16.0.151
172.16.0.173
172.16.0.220
2.zookeeper版本
wget https://mirrors.bfsu.edu.cn/apache/zookeeper/zookeeper-3.7.1/apache-zookeeper-3.7.1-bin.tar.gz
3.三台服务器安装目录 /data/
4.复制配置文件
cd /data/apache-zookeeper-3.7.1-bin/conf
cp zoo_sample.cfg zoo.cfg
vim zoo.cfg
5.编辑配置文件
三台服务器配置文件 /data/apache-zookeeper-3.7.1-bin/conf/zoo.cfg
#CS通信心跳时间,单位是毫秒
tickTime=2000
#集群中的follower服务器(F)与leader服务器(L)之间初始连接时能容忍的最多心跳数(tickTime的数量)
initLimit=10
#集群中flower服务器(F)跟leader(L)服务器之间的请求和答应最多能容忍的心跳数。
syncLimit=5
dataDir=/var/zookeeper/data
dataLogDit=/var/zookeeper/log
##客户端连接的接口,客户端连接zookeeper服务器的端口,zookeeper会监听这个端口,接收客户端的请求访问!这个端口默认是2181。
clientPort=2181
##集群信息的配置
#格式:service.N =YYY:A:B
#N:代表服务器编号(也就是myid里面的值)
#YYY:服务器地址
#A:表示 Flower 跟 Leader的通信端口,简称服务端内部通信的端口(默认2287)
#B:表示 是选举端口(默认是3387)
server.1=172.16.0.151:2287:3387
server.2=172.16.0.173:2287:3387
server.3=172.16.0.220:2287:3387
6.新增myid文件


# 服务器1(172.16.0.151)执行
echo "1" >> /var/zookeeper/data/myid


# 服务器2(172.16.0.173)执行
echo "2" >>/var/zookeeper/data/myid


# 服务器3(172.16.0.220)执行,往后依次如下
echo "3" >> /var/zookeeper/data/myid

7.添加systemd服务
cd /etc/systemd/system
vim zookeeper.service
[Unit]
Description=zookeeper.service
After=network.target
[Service]
Type=forking
Environment=/data/apache-zookeeper-3.7.1-bin
ExecStart=/data/apache-zookeeper-3.7.1-bin/bin/zkServer.sh start
ExecStop=/data/apache-zookeeper-3.7.1-bin/bin/zkServer.sh stop
ExecReload=/data/apache-zookeeper-3.7.1-bin/bin/zkServer.sh restart
[Install]
WantedBy=multi-user.target
8.执行命令
# 重新加载服务配置
systemctl daemon-reload

# 设置开机自启
systemctl enable zookeeper.service

# 启动 zookeeper
systemctl start zookeeper.service


查看 zookeeper 状态

systemctl status zookeeper.service