个人技术空间关于本站

Hadoop集群部署02-zookeeper部署

#添加环境变量
tee /etc/profile.d/zkENV.sh <<-'EOF'
export ZOOKEEPER_HOME=/usr/local/apache-zookeeper-3.8.4-bin
export PATH=$PATH:$ZOOKEEPER_HOME/bin
EOF
source /etc/profile

解压安装包到指定目录

cd /data/setup
tar xvf apache-zookeeper-3.8.4-bin.tar.gz -C /usr/local/

环境变量

tee /usr/local/apache-zookeeper-3.8.4-bin/conf/zookeeper-env.sh <<-'EOF'
export ZOO_LOG_DIR="/var/log/zookeeper/"
EOF

生成配置

tee /usr/local/apache-zookeeper-3.8.4-bin/conf/zoo.cfg <<-'EOF'
4lw.commands.whitelist=stat,ruok,conf,mntr
tickTime=2000
dataDir=/data/zookeeper/
clientPort=2181
initLimit=5
syncLimit=2
server.1=hadoop1:2888:3888
server.2=hadoop2:2888:3888
server.3=hadoop3:2888:3888
EOF

创建myid文件,注意要在每台机器创建不同的myid文件

mkdir -p /data/zookeeper/
echo "1" > /data/zookeeper/myid
echo "2" > /data/zookeeper/myid
echo "3" > /data/zookeeper/myid

开机启动

tee /etc/systemd/system/zookeeper.service <<-'EOF'
[Unit]
Description=Apache Zookeeper Service
Documentation=https://zookeeper.apache.org/
After=network.target

[Service]
Type=forking
User=root
Group=root
ExecStart=/usr/bin/bash -lc "/usr/local/apache-zookeeper-3.8.4-bin/bin/zkServer.sh start"
ExecStop=/usr/bin/bash -lc "/usr/local/apache-zookeeper-3.8.4-bin/bin/zkServer.sh stop"
ExecReload=/usr/bin/bash -lc "/usr/local/apache-zookeeper-3.8.4-bin/bin/zkServer.sh restart"
PIDFile=/data/zookeeper/zookeeper_server.pid
StandardOutput=journal
StandardError=journal
Restart=on-failure
RestartSec=5

[Install]
WantedBy=multi-user.target
EOF
systemctl daemon-reload
systemctl enable zookeeper
systemctl stop zookeeper
systemctl start zookeeper

测试状态是否正常

/usr/local/apache-zookeeper-3.8.4-bin/bin/zkServer.sh status
#或者
echo stat | nc localhost 2181
CreateBy:2026-04-16,UpdateBy:2026-04-17

评论

还没有评论,欢迎第一个留言。
← 请输入您的姓名
← 请输入常用邮箱(不会公开)
← 请输入个人网站(可选)
← 请输入评论内容,文明交流
← 请先完成人机验证