在CentOS系統上安裝和配置Zookeeper的步驟如下:
Zookeeper需要Java環境才能運行,因此首先需要安裝Java??梢酝ㄟ^以下命令在CentOS上安裝OpenJDK:
sudo yum install java-1.8.0-openjdk-devel
從Apache Zookeeper的官方網站下載所需版本的Zookeeper壓縮包,然后解壓到指定目錄。例如,下載zookeeper-3.5.9版本:
wget https://archive.apache.org/dist/zookeeper/zookeeper-3.5.9/apache-zookeeper-3.5.9-bin.tar.gz
tar -zxvf apache-zookeeper-3.5.9-bin.tar.gz -C /usr/local/
進入解壓后的Zookeeper目錄,復制并修改zoo_sample.cfg
配置文件為zoo.cfg
。主要需要修改的配置項包括:
dataDir
:數據目錄clientPort
:客戶端連接端口tickTime
:Zookeeper的基本時間單位(以毫秒為單位)initLimit
:初始通信時限syncLimit
:同步通信時限配置示例:
tickTime=2000
dataDir=/usr/local/zookeeper-3.5.9/data
clientPort=2181
initLimit=10
syncLimit=5
在每臺Zookeeper服務器的dataDir
路徑下創建一個文件叫做myid
,每臺服務器對應service
幾,就在myid
文件中寫數字幾。
例如,在/usr/local/zookeeper-3.5.9/data
目錄下創建myid
文件并寫入節點ID:
echo "1" > /usr/local/zookeeper-3.5.9/data/myid
編輯/etc/profile
文件,添加Zookeeper的環境變量:
vi /etc/profile
添加以下內容:
export ZOOKEEPER_HOME=/usr/local/zookeeper-3.5.9
export PATH=$PATH:$ZOOKEEPER_HOME/bin
使更改生效:
source /etc/profile
為了確保Zookeeper服務在系統啟動時自動運行,需要將其添加到系統服務并設置開機自啟??梢酝ㄟ^創建并編輯zookeeper.service
文件來實現:
vi /etc/systemd/system/zookeeper.service
添加以下內容:
[Unit]
Description=Apache Zookeeper
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/zookeeper-3.5.9/bin/zkServer.sh start
ExecStop=/usr/local/zookeeper-3.5.9/bin/zkServer.sh stop
PrivateTmp=true
Environment=JAVA_HOME=/usr/local/java/jdk1.8.0_202
User=root
Group=root
PIDFile=/usr/local/zookeeper-3.5.9/data/zookeeper.pid
Restart=always
[Install]
WantedBy=multi-user.target
使服務自啟:
systemctl daemon-reload
systemctl enable zookeeper
systemctl start zookeeper
啟動成功后,可以使用以下命令檢查Zookeeper的狀態:
/usr/local/zookeeper-3.5.9/bin/zkServer.sh status
以上步驟應該能夠在CentOS系統上成功安裝并運行Zookeeper。如果在安裝過程中遇到問題,建議查閱Zookeeper的官方文檔或尋求社區的幫助。