1.2 安裝
使用tar解壓要安裝的目錄即可,以3.4.13版本為例
這裡以解壓到/opt/data/software,實際安裝根據自己的想安裝的目錄修改(注意如果修改,那後邊的命令和配置檔案中的路徑都要相應修改)
tar -zxf zookeeper-3.4.13.tar.gz -c /opt/data/software
1.3 配置
在主目錄下建立data和logs兩個目錄用於儲存資料和日誌:
cd /opt/data/zookeeper-3.4.13
mkdir data
mkdir logs
在conf目錄下新建zoo.cfg檔案,寫入以下內容儲存:
ticktime=2000
datadir=/opt/data/zookeeper-3.4.13/data
datalogdir=/opt/data/zookeeper-3.4.13/logs
clientport=2181
1.4 啟動和停止
進入bin目錄,啟動、停止、重啟分和檢視當前節點狀態(包括集群中是何角色)別執行:
./zkserver.sh start
./zkserver.sh stop
./zkserver.sh restart
./zkserver.sh status
偽集群模式就是在同一主機啟動多個zookeeper並組成集群,下邊以在192.168.220.128主機上創3個zookeeper組集群為例。
將通過第一大點安裝的zookeeper,複製成zookeeper1/zookeeper2/zookeeper3三份
**myid檔案,其內容分別為1,2,3。然後分別在這三颱機器上啟動zk程序,這樣我們便將zk集群啟動了起來。**
2.1 zookeeper1配置
zookeeper1配置檔案conf/zoo.cfg修改如下:
複製**
ticktime=2000
datadir=/opt/data/zookeeper1/data
datalogdir=/opt/data/zookeeper1/logs
clientport=2181
initlimit=5
synclimit=2
server.1=192.168.220.128:2888:3888
server.2=192.168.220.128:4888:5888
server.3=192.168.220.128:6888:7888
複製**
zookeeper1的data/myid配置如下:
echo '1' > data/myid
2.2 zookeeper2配置
zookeeper2配置檔案conf/zoo.cfg修改如下:
複製**
ticktime=2000
datadir=/opt/data/zookeeper2/data
datalogdir=/opt/data/zookeeper2/logs
clientport=3181
initlimit=5
synclimit=2
server.1=192.168.220.128:2888:3888
server.2=192.168.220.128:4888:5888
server.3=192.168.220.128:6888:7888
複製**
zookeeper2的data/myid配置如下:
echo '2' > data/myid
2.3 zookeeper3配置
zookeeper3配置檔案conf/zoo.cfg修改如下:
複製**
ticktime=2000
datadir=/opt/data/zookeeper3/data
datalogdir=/opt/data/zookeeper3/logs
clientport=4181
initlimit=5
synclimit=2
server.1=192.168.220.128:2888:3888
server.2=192.168.220.128:4888:5888
server.3=192.168.220.128:6888:7888
複製**
zookeeper3的data/myid配置如下:
echo '3' > data/myid
最後使用1.4的命令把三個zookeeper都啟動即可,啟動順序隨意沒要求。
集群模式就是在不同主機上安裝zookeeper然後組成集群的模式;下邊以在192.168.220.128/129/130三颱主機為例。
將第1.1到1.3步中安裝好的zookeeper打包複製到129和130上,並都解壓到同樣的目錄下。
3.1 conf/zoo.cfg檔案修改
三個zookeeper的conf/zoo.cfg修改如下:
複製**
ticktime=2000
datadir=/opt/data/zookeeper-3.4.13/data
datalogdir=/opt/data/zookeeper-3.4.13/logs
clientport=2181
initlimit=5
synclimit=2
server.1=192.168.220.128:2888:3888
server.2=192.168.220.129:2888:3888
server.3=192.168.220.130:2888:3888
複製**
對於129和130,由於安裝目錄都是zookeeper-3.4.13所以datadir和datalogdir不需要改變,又由於在不同機器上所以clientport也不需要改變
所以此時129和130的conf/zoo.cfg的內容與128一樣即可。
3.2 data/myid檔案修改
128 data/myid修改如下:
echo '1' > data/myid
129 data/myid修改如下:
echo '2' > data/myid
130 data/myid修改如下:
echo '3' > data/myid
最後使用1.4的命令把三個zookeeper都啟動即可,啟動順序隨意沒要求。
initlimit:這個配置項是用來配置 zookeeper 接受客戶端(這裡所說的客戶端不是使用者連線 zookeeper 伺服器的客戶端,而是 zookeeper 伺服器集群中連線到 leader 的 follower 伺服器)初始化連線時最長能忍受多少個心跳時間間隔數。當已經超過 10 個心跳的時間(也就是 ticktime)長度後 zookeeper 伺服器還沒有收到客戶端的返回資訊,那麼表明這個客戶端連線失敗。總的時間長度就是 5*2000=10 秒
synclimit:這個配置項標識 leader 與 follower 之間傳送訊息,請求和應答時間長度,最長不能超過多少個 ticktime 的時間長度,總的時間長度就是 2*2000=4 秒
server.a=b:c:d:其中 a 是乙個數字,表示這個是第幾號伺服器;b 是這個伺服器的 ip 位址;c 表示的是這個伺服器與集群中的 leader 伺服器交換資訊的埠;d 表示的是萬一集群中的 leader 伺服器掛了,需要乙個埠來重新進行選舉,選出乙個新的 leader,而這個埠就是用來執行選舉時伺服器相互通訊的埠。如果是偽集群的配置方式,由於 b 都是一樣,所以不同的 zookeeper 例項通訊埠號不能一樣,所以要給它們分配不同的埠號。
data/myid:myid的值是zoo.cfg檔案裡定義的server.a項a的值,zookeeper 啟動時會讀取這個檔案,拿到裡面的資料與 zoo.cfg 裡面的配置資訊比較從而判斷到底是那個server,只是乙個標識作用。
zookeeper 安裝部署
2.解壓 tar zxvf zookeeper 3.5.1.tar.gz 3.將zookeeper 3.5.1 conf 目錄下的zoo sample.cfg修改為zoo.cfg,配置如下 ticktime 2000 datadir home zookeeper data clientport 21...
Zookeeper安裝部署
zookeeper zookeeper是乙個分布式協調服務的開源框架。主要用來解決分布式集群中應用系統的一致性問題。zookeeper本質上是乙個分布式的小檔案儲存系統。提供基於類似於檔案系統的目錄樹方式的資料儲存,並且可以對樹中的節點進行有效管理。從而用來維護和監控你儲存的資料的狀態變化。通過監控...
zookeeper安裝部署
計畫zookeeper的安裝目錄為 home dmp zookeeper 2.上傳安裝包到臨時目錄 home python root data2 python ls lrt rw r r 1 root root 12392394 8月 19 22 43 apache zookeeper 3.6.0 ...