在CentOS系統上配置Zookeeper的Java環境涉及幾個關鍵步驟。以下是詳細的配置指南:
首先,確保你的系統上已經安裝了Java運行環境(JRE)或Java開發工具包(JDK)。推薦安裝OpenJDK 8或更高版本。
sudo yum install java-1.8.0-openjdk-devel
安裝完成后,檢查Java是否安裝成功:
java -version
從Apache Zookeeper官方網站下載適合CentOS的版本。例如,下載zookeeper-3.4.14版本:
wget https://archive.apache.org/dist/zookeeper/zookeeper-3.4.14/zookeeper-3.4.14.tar.gz
tar -zxvf zookeeper-3.4.14.tar.gz -C /usr/local/
編輯 /etc/profile
文件,追加以下內容:
export JAVA_HOME=/usr/java/jdk1.8.0_111
export JRE_HOME=$JAVA_HOME/jre
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export ZOOKEEPER_HOME=/usr/local/zookeeper-3.4.9
export PATH=$ZOOKEEPER_HOME/bin:$PATH
使修改生效:
source /etc/profile
進入解壓后的Zookeeper目錄:
cd /usr/local/zookeeper-3.4.9/conf
cp zoo_sample.cfg zoo.cfg
編輯 zoo.cfg
文件,設置以下參數:
tickTime 2000
dataDir /usr/local/zookeeper-3.4.9/data
clientPort 2181
initLimit 5
syncLimit 2
server.1 192.168.0.1:2888:3888
server.2 192.168.0.12:2888:3888
server.3 192.168.0.13:2888:3888
在每臺服務器上創建數據存儲目錄:
sudo mkdir /usr/local/zookeeper-3.4.9/data
確保Zookeeper用戶具有對這些目錄的讀寫權限。
在每臺服務器的 dataDir
目錄下創建一個名為 myid
的文件,內容為該服務器的唯一ID(例如,Master節點的ID為1,Slave節點的ID為2):
echo "1" > /usr/local/zookeeper-3.4.9/data/myid
為了確保Zookeeper服務在系統啟動時自動運行,需要將其添加到系統服務并設置開機自啟。
創建并編輯 zookeeper.service
文件:
sudo vi /etc/systemd/system/zookeeper.service
添加以下內容:
[Unit]
Description=Zookeeper Service
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/zookeeper-3.4.9/bin/zkServer.sh start
ExecStop=/usr/local/zookeeper-3.4.9/bin/zkServer.sh stop
PrivateTmp=true
Environment=JAVA_HOME=/usr/java/jdk1.8.0_111
User=zookeeper
Group=zookeeper
PIDFile=/var/run/zookeeper/zookeeper.pid
Restart=always
[Install]
WantedBy=multi-user.target
使配置生效:
sudo systemctl daemon-reload
sudo systemctl enable zookeeper.service
sudo systemctl start zookeeper.service
啟動Zookeeper服務:
/usr/local/zookeeper-3.4.9/bin/zkServer.sh start
驗證Zookeeper狀態:
/usr/local/zookeeper-3.4.9/bin/zkServer.sh status
開放Zookeeper使用的端口(默認是2181):
sudo vi /etc/firewalld/rules.d/zookeeper.rules
添加以下內容:
port=2181
protocol=tcp
allow=in
重啟防火墻:
sudo firewall-cmd --reload
使用Zookeeper客戶端工具驗證連接:
sudo yum install zookeeper-client
zkCli
列出根節點:
ls /
通過以上步驟,您應該能夠在CentOS系統上成功配置并運行Zookeeper。請根據您的實際需求調整配置參數。