要將Zookeeper與Debian集成,可以按照以下步驟進行操作:
首先,確保在Debian系統上安裝了Java環境??梢詤⒖肌禗ebian下hadoop安裝》中的JDK安裝和運行環境配置。
下載Zookeeper的最新穩定版本(例如:zookeeper-3.4.14.tar.gz),然后解壓到指定目錄,例如 /usr/local/。
cd /usr/local/
tar -zxvf zookeeper-3.4.14.tar.gz
編輯 /etc/profile 文件,設置 ZOOKEEPER_HOME 和更新 PATH 環境變量:
export ZOOKEEPER_HOME=/usr/local/zookeeper-3.4.14
export PATH=$ZOOKEEPER_HOME/bin:$PATH
進入Zookeeper的配置文件目錄 /usr/local/zookeeper-3.4.14/conf/,將 zoo_sample.cfg 文件復制并重命名為 zoo.cfg:
cd /usr/local/zookeeper-3.4.14/conf/
cp zoo_sample.cfg zoo.cfg
編輯 zoo.cfg 文件,配置以下參數:
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/usr/local/zookeeper-3.4.14/data
clientPort=2181
dataLogDir=/usr/local/zookeeper-3.4.14/logs
server.1 192.168.1.111:2888:3888
server.2 192.168.1.112:2888:3888
server.3 192.168.1.113:2888:3888
myid 文件在 dataDir 目錄下創建 myid 文件,并設置相應的ServerID:
cd /usr/local/zookeeper-3.4.14/data/
touch myid
echo "1" > myid
分別在各個Zookeeper服務器上執行以下命令啟動Zookeeper服務:
cd /usr/local/zookeeper-3.4.14/bin/
./zkServer.sh start
可以使用以下命令查看Zookeeper的狀態:
./zkServer.sh status
如果希望Zookeeper在系統啟動時自動啟動,可以將其添加到系統的啟動腳本中:
# 創建啟動腳本
sudo tee /etc/init.d/zookeeper <<EOL
#!/bin/sh
#
# /etc/init.d/zookeeper
#
# Startup script for the Zookeeper server
#
# chkconfig: 234 90 10
# description: Zookeeper server
ZOOKEEPER_HOME="/usr/local/zookeeper-3.4.14"
PATH="$ZOOKEEPER_HOME/bin:$PATH"
case "\$1" in
start)
echo "Starting Zookeeper..."
su - zookeeper -c "$ZOOKEEPER_HOME/bin/zkServer.sh start"
;;
stop)
echo "Stopping Zookeeper..."
su - zookeeper -c "$ZOOKEEPER_HOME/bin/zkServer.sh stop"
;;
status)
echo "Zookeeper status..."
su - zookeeper -c "$ZOOKEEPER_HOME/bin/zkServer.sh status"
;;
restart)
echo "Restarting Zookeeper..."
su - zookeeper -c "$ZOOKEEPER_HOME/bin/zkServer.sh restart"
;;
*)
echo "Usage: /etc/init.d/zookeeper {start|stop|status|restart}"
exit 1
;;
esac
exit 0
EOL
# 設置腳本為可執行權限
sudo chmod +x /etc/init.d/zookeeper
# 添加到系統啟動服務
sudo chkconfig --add zookeeper
sudo chkconfig zookeeper on
通過以上步驟,Zookeeper就可以成功與Debian系統集成并運行。如果需要配置Zookeeper集群,可以參考相關文檔進行多個節點的配置。