在CentOS上搭建Zookeeper集群需要以下步驟:
sudo yum install java-1.8.0-openjdk-devel
wget https://downloads.apache.org/zookeeper/zookeeper-3.8.x/zookeeper-3.8.x.tar.gz
tar -zxvf zookeeper-3.8.x.tar.gz
cd zookeeper-3.8.x
conf/zoo_sample.cfg
為conf/zoo.cfg
并編輯。cp conf/zoo_sample.cfg conf/zoo.cfg
vi conf/zoo.cfg
tickTime
:基本時間單位(毫秒),例如2000。dataDir
:數據目錄,例如/var/lib/zookeeper
。clientPort
:客戶端連接端口,例如2181。initLimit
:初始化連接時最長能忍受的心跳時間間隔數,例如10。syncLimit
:Leader與Follower之間發送消息、請求和應答時間長度,例如5。server.x
:為每個服務器分配一個唯一ID和地址,例如:server.1 192.168.1.1:2888:3888
server.2 192.168.1.2:2888:3888
server.3 192.168.1.3:2888:3888
./bin/zkServer.sh start server.1
./bin/zkServer.sh start server.2
./bin/zkServer.sh start server.3
./bin/zkServer.sh status
/etc/rc.d/init.d/zookeeper
文件并添加以下內容:#!/bin/bash
#
# /etc/rc.d/init.d/zookeeper
#
# Startup script for the zookeeper.
#
# chkconfig: 234 20 80
# description: Zookeeper is a distributed coordination service
# for distributed application coordination.
#
# Source function library.
. /etc/rc.d/init.d/functions
ZOO_HOME="/usr/local/zookeeper-3.8.x"
ZOO_LOG_DIR="/var/log/zookeeper"
ZOO_PID_FILE="/var/lib/zookeeper/zookeeper.pid"
ZOO_CONFIG_FILE="/usr/local/zookeeper-3.8.x/conf/zoo.cfg"
case "$1" in
start)
echo -n "Starting zookeeper..."
$ZOO_HOME/bin/zkServer.sh start server.1
echo
;;
stop)
echo -n "Shutting down zookeeper..."
$ZOO_HOME/bin/zkServer.sh stop server.1
echo
;;
restart)
$0 stop
$0 start
;;
status)
status -p $ZOO_PID_FILE $ZOO_HOME
;;
*)
echo "Usage: $0 {start|stop|restart|status}"
exit 1
;;
esac
exit 0
chmod +x /etc/rc.d/init.d/zookeeper
chkconfig --add zookeeper
chkconfig zookeeper on
myid
文件配置正確,并且zoo.cfg
文件中的server
配置正確反映了集群成員。通過以上步驟,你應該能夠在CentOS系統上成功搭建并運行Zookeeper集群。