之前一直沒有時間去整理,現在抽出幾分鐘時間整理以下,有問題的在評論區留言即可。

前期準備JDK環境(ZK需要jdk進行編譯,本文以jdk1.8.0_211為例)、Linux系統(本文以Centos7為例)、zookeeper安裝包(通過zookeeper官網下載,本文以3.5.5版本為例)

 

 

Zookeeper的安裝(使用安裝包,否則無法啟動)

1、下載zookeeper安裝包

進入zookeeper官網選擇下載鏈接如下: https://www-eu.apache.org/dist/zookeeper/

選擇最新穩定版本3.5.5,選擇下載apache-zookeeper-3.5.5-bin.tar.gz,文件說明:

1)apache-zookeeper-3.5.5.tar.gz  源碼包

2)apache-zookeeper-3.5.5-bin.tar.gz  安裝包

或者直接通過

wget http://mirror.bit.edu.cn/apache/zookeeper/current/apache-zookeeper-3.5.5-bin.tar.gz 下載安裝包。

解壓完成后 進入我們的Linux下/etc/profile文件增加環境變量: export ZOOKEEPER_HOME=zookeeper安裝路徑,并加入PATH下

如圖所示,完成后保存退出,至此zk的安裝告一段落(注意此時zookeeper還不能啟動 需要更改zk.cfg(zoo_sample.cfg))。

zookeeper目錄結構

  1. bin 常用命令
  2. conf 存放配置文件,其中我們需要修改zk.cfg(zoo_sample.cfg)
  3. docs 存放幫助文檔信息
  4. lib 需要依賴的jat包

zookeeper的配置文件信息(zoo_sample.cfg)

 

tickTime 用于計算的基本時間單元,所有時間設置都是tickTime的倍數,單位為毫秒。當為session超時設置5的時候 則真實session超時時間為5*tickTime

initLimit 用于集群,允許 “從節點” 連接 并同步 到 “master節點” 的初始化連接時間,以tickTime的倍數表示

syncLimit 用于集群,在運行過程中,“master節點” 負責與ZK集群中所有機器進行通信,例如通過一些心跳檢測機制,來檢測機器的存活狀態。如果“master節點” 發出心跳包在syncLimit之后,還沒有從“從節點”收到響應,那么就認為這個 “從節點”已經不在線了將其拋棄。因此不要把這個參數設置得過大,否則可能會掩蓋一些問題。(No Java system property)

 dataDir 存放數據文件的目錄,必須配置(當“日志目錄”dataLogDir沒有配置時則默認此地址為log文件存放地址)

 clientPort 連接服務器的端口,默認2181

配置文件修改完畢后重命名為“zoo.cfg” ,否則運行時會提示 zoo.cfg: No such file or directory

 

單機ZOOKEEPER的運行

  1. 完成上述配置之后來到我們的bin目錄下可以運行我們的zk

命令:./zkServer.sh start 啟動ZK

命令:./zkServer.sh status查看當前zk的運行狀態信息

出現 :

Client port found: 2181. Client address: localhost.

 

以上就是單機的zookeeper安裝教程,本文有不足的地方希望大家可以在評論區多多討論,感謝。