# ZOOKEEPER 国内安装文件下载地址
# ZOOKEEPER_WEB_FILE=https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/zookeeper-3.4.10/zookeeper-3.4.10.tar.gz# 是否下载 ZOOKEEPER 安装文件
# wget -P /tmp $ZOOKEEPER_WEB_FILE# ZOOKEEPER 安装文件
# ZOOKEEPER_INSTALL_FILE=/tmp/zookeeper-3.4.10.tar.gz# ZOOKEEPER 目录
# ZOOKEEPER_INSTALL_DIR=/opt/zookeeper-3.4.10# ZOOKEEPER_HOME=/opt/zookeeper# 安装 ZOOKEEPER
tar -C /opt -xf $ZOOKEEPER_INSTALL_FILEln -s $ZOOKEEPER_INSTALL_DIR $ZOOKEEPER_HOME# 创建组和用户
groupadd zookeeperuseradd -g zookeeper zookeeper -s /sbin/nologin# 文件存放目录
mkdir -p /mnt/zookeeper/datamkdir -p /var/log/zookeeperchown zookeeper:zookeeper -R /mnt/zookeeper/datachown zookeeper:zookeeper -R /var/log/zookeeper#创建配置文件
cat <<EOF | tee $ZOOKEEPER_HOME/conf/zoo.cfgtickTime=2000initLimit=10syncLimit=5dataDir=/mnt/zookeeper/datadataLogDir=/var/log/zookeeperclientPort=2181server.1=zookeeper01:2888:3888server.2=zookeeper02:2888:3888server.3=zookeeper03:2888:3888EOFchown zookeeper:zookeeper -R $ZOOKEEPER_INSTALL_DIR
chown zookeeper:zookeeper -R $ZOOKEEPER_LINK_DIR#systemd开机配置
cat <<EOF | tee /usr/lib/systemd/system/zookeeper.service [Unit]Description=zookeeperAfter=syslog.target network.target[Service]
Type=forkingEnvironment=ZOO_LOG_DIR=/var/log/zookeeper# Environment=ZOO_LOG4J_PROP="INFO,ROLLINGFILE"ExecStart=/opt/zookeeper/bin/zkServer.sh startExecStop=/opt/zookeeper/bin/zkServer.sh stopRestart=alwaysUser=zookeeperGroup=zookeeper[Install]
WantedBy=multi-user.targetEOF#每台zookeeper的id不一样
# echo "1" > /mnt/zookeeper/data/myid# echo "2" > /mnt/zookeeper/data/myid# echo "3" > /mnt/zookeeper/data/myidsystemctl enable zookeeper
systemctl start zookeepersystemctl status zookeeperfirewall-cmd --zone=public --add-port=2181/tcp --permanent
firewall-cmd --zone=public --add-port=2888/tcp --permanentfirewall-cmd --zone=public --add-port=3888/tcp --permanentfirewall-cmd --reload#检测是否可用
#echo conf | nc $HOSTNAME 2181