zookeeper叢集搭建(備忘錄)
安裝步驟:
提示:要關閉虛擬機器的防火牆,執行:service iptables stop
1.準備虛擬機器,安裝並配置jdk 我用的是1.8
2.上傳zookeeper的安裝包 3.4.7版本
3.解壓安裝 tar -xvf …………
4.配置zookeeper。
5.配置叢集模式
①切換到zookeeper安裝目錄的conf目錄,其中有一個zoo_sample.cfg的配置檔案,這個一個配置模板檔案,我們需要複製這個檔案,並重命名為 zoo.cfg。zoo.cfg才是真正的配置檔案
②配置zoo.cfg
dataDir。這個引數是存放zookeeper叢集環境配置資訊的。這個引數默然是配置在 /tmp/zookeeper下的 。但是注意,tmp是一個臨時資料夾,這個是linux自帶的一個目錄,是linux本身用於存放臨時檔案用的目錄。但是這個目錄極有可能被清空,所以,重要的檔案一定不要存在這個目錄下。
所以改成:/home/work/zkdata
注意:這個路徑是自定義的,所以目錄需要手動建立
clientport。客戶端連線伺服器的埠,預設是2181,一般不用修改
在配置檔案裡,需要在加上如下的配置:
server.1=10.9.9.141:2888:3888
server.2=10.9.27.38:2888:3888
server.3=10.9.99.23:2888:3888
①server是關鍵字,寫死
②後面的數字是選舉id,在zk叢集的選舉過程中會用到。
補充:此數字不固定,但是需要注意選舉id不能重複,相互之間要能比較大小
然後儲存退出
③10.9.9.141:2888:3888
說明:2888原子廣播埠,3888選舉埠
zookeeper有幾個節點,就配置幾個server,
③配置檔案配置好,需要在dataDir目錄下建立一個檔案
即在:/home/work/zkdata 目錄下,建立 myid
vim myid
給當前的節點編號。zookeeper節點在啟動時,就會到這個目錄下去找myid檔案,得知自己的編號
儲存退出
修改hosts:
vim /etc/profile 新增如下資訊 將zookeeper新增到環境變數
執行 source /etc/profile
6.啟動三臺zookeeper
進入到zookeeper安裝目錄的bin目錄
執行:zkServer.sh start
然後可以輸入jps命令,檢視有哪些java程序,
執行:jps
7.執行 :zkServer.sh status 檢視當前zookeeper節點狀態
hadoop01:
hadoop02:
hadoop03:
配置說明:
tickTime: zookeeper中使用的基本時間單位, 毫秒值.
dataDir: 資料目錄. 可以是任意目錄.
dataLogDir: log目錄, 同樣可以是任意目錄. 如果沒有設定該引數, 將使用和dataDir相同的設定.
clientPort: 監聽client連線的埠號
initLimit: zookeeper叢集中的包含多臺server, 其中一臺為leader, 叢集中其餘的server為follower. initLimit引數配置初始化連線時, follower和leader之間的最長心跳時間. 此時該引數設定為5, 說明時間限制為5倍tickTime, 即5*2000=10000ms=10s.
syncLimit: 該引數配置leader和follower之間傳送訊息, 請求和應答的最大時間長度. 此時該引數設定為2, 說明時間限制為2倍tickTime, 即4000ms.