ZooKeeper 集群部署
- 前言
- 安裝部署
- 資源下載
- JDK 部署
- Zookeeper 部署
前言
在 Linux 服務器上部署 Zookeeper 之前,需要先安裝 JDK。以下是相關版本及環境信息:
JDK 版本 jdk-17_linux-x64_bin.tar.gz
Zookeeper 部署的版本 3.5.7
操作系統版本 Red Hat Enterprise Linux Server release 7.5 (Maipo)
服務器清單:
○ 192.168.88.216 - zkdb01
○ 192.168.88.217 - zkdb02
○ 192.168.88.218 - zkdb03
注意:所有安裝包全部上傳至每臺服務器的/soft/
目錄中。
安裝部署
資源下載
官網下載地址:https://zookeeper.apache.org/
另外,如果沒有找到想要的版本,可從歷史歸檔中獲取相關版本(如下截圖)
或者直接訪問:https://archive.apache.org/dist/zookeeper/
直接下載地址:https://archive.apache.org/dist/zookeeper/zookeeper-3.5.7/apache-zookeeper-3.5.7-bin.tar.gz
JDK 部署
在安裝之前,可先卸載自帶的 JDK
rpm -qa | grep -i java | xargs -n1 rpm -e --nodeps
- 本次使用到版本jdk-17_linux-x64_bin.tar.gz,將軟件上傳至每臺服務器
/soft/
目錄下。 - 解壓安裝包到/usr/local/
tar -zxf /soft/jdk-8u131-linux-x64.tar.gz -C /usr/local/
- 進入解壓后的軟件包,查看文件如下:
[root@test01 soft]# cd /usr/local/jdk1.8.0_131/
[root@test01 jdk1.8.0_131]#
[root@test01 jdk1.8.0_131]#
[root@test01 jdk1.8.0_131]# pwd
/usr/local/jdk1.8.0_131
[root@test01 jdk1.8.0_131]# ll
total 25864
drwxr-xr-x 2 10 143 4096 Mar 15 2017 bin
-r--r--r-- 1 10 143 3244 Mar 15 2017 COPYRIGHT
drwxr-xr-x 4 10 143 122 Mar 15 2017 db
drwxr-xr-x 3 10 143 132 Mar 15 2017 include
-rwxr-xr-x 1 10 143 5097105 Mar 15 2017 javafx-src.zip
drwxr-xr-x 5 10 143 185 Mar 15 2017 jre
drwxr-xr-x 5 10 143 245 Mar 15 2017 lib
-r--r--r-- 1 10 143 40 Mar 15 2017 LICENSE
drwxr-xr-x 4 10 143 47 Mar 15 2017 man
-r--r--r-- 1 10 143 159 Mar 15 2017 README.html
-rw-r--r-- 1 10 143 526 Mar 15 2017 release
-rw-r--r-- 1 10 143 21115141 Mar 15 2017 src.zip
-rwxr-xr-x 1 10 143 63933 Mar 15 2017 THIRDPARTYLICENSEREADME-JAVAFX.txt
-r--r--r-- 1 10 143 177094 Mar 15 2017 THIRDPARTYLICENSEREADME.txt
[root@test01 jdk1.8.0_131]#
- 配置環境變量
vim /etc/profile ## 添加如下內容
export JAVA_HOME=/usr/local/jdk1.8.0_131
export PATH=$PATH:$JAVA_HOME/bin---
cat >> /etc/profile <<EOF
export JAVA_HOME=/usr/local/jdk1.8.0_131
export PATH=\$PATH:\$JAVA_HOME/bin
EOFsource /etc/profile
- 驗證
[root@localhost soft]# java -version
java version "1.8.0_131"
Java(TM) SE Runtime Environment (build 1.8.0_131-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.131-b11, mixed mode)
[root@localhost soft]#
Zookeeper 部署
在安裝之前,需要配置服務器的/etc/hosts文件,將對應的 主機名配置
cat >> /etc/hosts <<EOF
192.168.88.216 zkdb01
192.168.88.217 zkdb02
192.168.88.218 zkdb03
EOF
- 創建安裝目錄
mkdir -p /u01/app
. 解壓文件,并重命名
tar -zxf /soft/apache-zookeeper-3.5.7-bin.tar.gz -C /u01/app/
mv /u01/app/apache-zookeeper-3.5.7-bin /u01/app/zookeeper-3.5.7
- 創建 ZK 數據存儲目錄,以及創建服務 ID
a. 說明:服務 ID(myid),如果第一臺服務則為 1,第二臺機器為 2,第三臺機器為 3
mkdir /u01/app/zookeeper-3.5.7/zkData## 第一臺機器
echo 1 > /u01/app/zookeeper-3.5.7/zkData/myid
## 第二臺機器
echo 2 > /u01/app/zookeeper-3.5.7/zkData/myid
## 第三臺機器
echo 3 > /u01/app/zookeeper-3.5.7/zkData/myid
- 修改配置文件
cd /u01/app/zookeeper-3.5.7/conf
cp zoo_sample.cfg zoo.cfg## 1. 修改 dataDir 路徑
sed -i 's|dataDir=/tmp/zookeeper|dataDir=/u01/app/zookeeper-3.5.7/zkData|g' zoo.cfg## 2. 添加以下內容
cat >> zoo.cfg <<EOF
server.1=zkdb01:2888:3888
server.2=zkdb02:2888:3888
server.3=zkdb03:2888:3888
EOF
- 啟動:每臺服務器都要執行
[root@zkdb01 zookeeper-3.5.7]# sh bin/zkServer.sh start
ZooKeeper JMX enabled by default
Using config: /u01/app/zookeeper-3.5.7/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
- 驗證:每臺服務器都可執行,注意 字段
Mode
值可能不一樣。
[root@zkdb02 zookeeper-3.5.7]# sh bin/zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /u01/app/zookeeper-3.5.7/bin/../conf/zoo.cfg
Client port found: 2181. Client address: localhost.
Mode: follower
[root@zkdb02 zookeeper-3.5.7]#