1.環境準備
依賴環境:jdk 1.8.0_151 (必須安裝)
下載: apache-zookeeper-3.5.9.tar.gz
安裝目錄:/middleware/zookeeper/
2.在終端進入對應的檔案的目錄,進一步解壓,輸入tar -zxvf +需要解壓的包名
tar zxvf apache-zookeeper-3.5.9.tar.gz
3.配置
3.1各節點必須檔案復制和新建
cd /middleware/zookeeper
#將解壓縮的檔案復制出三份(需要幾個節點就復制幾份)
cp -rf apache-zookeeper-3.5.9-bin node1
cp -rf apache-zookeeper-3.5.9-bin node2
cp -rf apache-zookeeper-3.5.9-bin node3
#創建data檔案夾
mkdir /middleware/zookeeper/node1/data
mkdir /middleware/zookeeper/node2/data
mkdir /middleware/zookeeper/node3/data
#在data目錄中配置myid檔案,myid檔案中存放對應節點的序號
#與組態檔中的server.1,server.2,server.3一致
echo '1' > /middleware/zookeeper/node1/data/myid
echo '2' > /middleware/zookeeper/node2/data/myid
echo '3' > /middleware/zookeeper/node3/data/myid
3.2 zoo.cfg 檔案修改
將原來的zoo-simple.cfg 復制為zoo.cfg 檔案(啟動腳本中讀取的就是zoo.cfg 自帶的zoo-simple.cfg 只是官方提供的示例),節點1配置如下:
#zookeeper時間單元,單位為毫秒
tickTime=2000
#集群中的follower服務器(F)與leader服務器(L)之間 初始連接 時能容忍的最多心跳數(tickTime的數量),
initLimit=10
# 集群中的follower服務器(F)與leader服務器(L)之間 請求和應答 之間能容忍的最多心跳數(tickTime的數量),
syncLimit=5
# data資料目錄
dataDir=/middleware/zookeeper/node1/data
# 客戶端連接埠
clientPort=2181
# 客戶端最大連接數
#maxClientCnxns=60
# 需要保留的快照數目
#autopurge.snapRetainCount=3
# 是否開啟自動清理事務日志和快照功能 0 不開啟,1表示開啟
#autopurge.purgeInterval=1
#集群配置
server.1=127.0.0.1:2888:3888
server.2=127.0.0.1:2889:3889
server.3=127.0.0.1:2890:3890
節點2配置如下
#zookeeper時間單元,單位為毫秒
tickTime=2000
#集群中的follower服務器(F)與leader服務器(L)之間 初始連接 時能容忍的最多心跳數(tickTime的數量),
initLimit=10
# 集群中的follower服務器(F)與leader服務器(L)之間 請求和應答 之間能容忍的最多心跳數(tickTime的數量),
syncLimit=5
# data資料目錄
dataDir=/middleware/zookeeper/node2/data
# 客戶端連接埠
clientPort=2182
# 客戶端最大連接數
#maxClientCnxns=60
# 需要保留的快照數目
#autopurge.snapRetainCount=3
# 是否開啟自動清理事務日志和快照功能 0 不開啟,1表示開啟
#autopurge.purgeInterval=1
#集群配置
server.1=127.0.0.1:2888:3888
server.2=127.0.0.1:2889:3889
server.3=127.0.0.1:2890:3890
節點3配置如下
#zookeeper時間單元,單位為毫秒
tickTime=2000
#集群中的follower服務器(F)與leader服務器(L)之間 初始連接 時能容忍的最多心跳數(tickTime的數量),
initLimit=10
# 集群中的follower服務器(F)與leader服務器(L)之間 請求和應答 之間能容忍的最多心跳數(tickTime的數量),
syncLimit=5
# data資料目錄
dataDir=/middleware/zookeeper/node3/data
# 客戶端連接埠
clientPort=2183
# 客戶端最大連接數
#maxClientCnxns=60
# 需要保留的快照數目
#autopurge.snapRetainCount=3
# 是否開啟自動清理事務日志和快照功能 0 不開啟,1表示開啟
#autopurge.purgeInterval=1
#集群配置
server.1=127.0.0.1:2888:3888
server.2=127.0.0.1:2889:3889
server.3=127.0.0.1:2890:3890
3.3修改 bin 目錄下的zkEnv.sh
#將zkEnv.sh腳本中的ZOO_LOG_DIR 修改為
ZOO_LOG_DIR="../logs/"
4.啟動和驗證
4.1啟動
#進入各個節點的bin目錄,分別運行zkServer.sh腳本啟動zk
./zkServer.sh start
啟動效果如圖則為啟動成功
[root@chengxiaobai bin]# ./zkServer.sh start
ZooKeeper JMX enabled by default
Using config: /middleware/zookeeper/node2/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
4.2檢查各節點狀態
#進入各節點bin目錄
#檢查node1節點狀態
[root@chengxiaobai bin]# ./zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /middleware/zookeeper/node1/bin/../conf/zoo.cfg
Client port found: 2181. Client address: localhost. Client SSL: false.
Mode: follower
#檢查node2節點狀態
[root@chengxiaobai bin]# ./zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /middleware/zookeeper/node2/bin/../conf/zoo.cfg
Client port found: 2182. Client address: localhost. Client SSL: false.
Mode: follower
#檢查node3節點狀態(最先啟動的節點)
[root@chengxiaobai bin]# ./zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /middleware/zookeeper/node3/bin/../conf/zoo.cfg
Client port found: 2183. Client address: localhost. Client SSL: false.
Mode: leader
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/316441.html
標籤:其他
