Zookeeper集羣搭建

下載zookeeper和jdk

下載地址:
zookeeper : http://mirror.bit.edu.cn/apache/zookeeper/
jdk: https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

解壓

解壓

tar -zxvf apache-zookeeper-3.5.6-bin.tar.gz -C /usr/local/soft
tar -zxvf jdk-8u231-linux-x64.tar.gz -C /usr/local/soft

創建軟連接
建立了一個redis目錄的軟鏈接,這樣做是爲了不把zookeeper目錄固定在指定版本上,有利於Zookeeper未來版本升級,算是安裝軟件的一種好習慣。
創建完軟連接相當於windows上面的快捷鍵,可以直接從/usr/local/jkd 進入到指定目錄

ln -s /usr/local/soft/jdk1.8.0_231 /usr/local/jdk
ln -s /usr/local/soft/apache-zookeeper-3.5.6-bin /usr/local/zookeeper

配置環境變量

修改環境變量

vim /etc/profile

在文件最後加入下面內容

#set zookeeper environment
export ZK_HOME=/usr/local/zookeeper
export PATH=$PATH:$ZK_HOME/bin

#set JDK and JRE environment
export JAVA_HOME=/usr/local/jdk
export JRE_HOME=/usr/local/jdk/jre
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
export CLASSPATH=.$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH

使配置生效

souce /etc/profile

配置Zookeeper

修改zookeeper配置文件

cd /usr/local/zookeeper/conf
cp zoo_sample.conf zoo.conf
vim zoo.conf

修改並加入如下內容

dataDir=/usr/local/zookeeper/data

clientPort=2812

server.0=192.168.31.129:2888:3888
server.1=192.168.31.130:2888:3888
server.2=192.168.31.131:2888:3888

圖片說明如下
在這裏插入圖片描述
上面紅色框住的內容即是我們修改的內容:

①、tickTime:基本事件單元,這個時間是作爲Zookeeper服務器之間或客戶端與服務器之間維持心跳的時間間隔,每隔tickTime時間就會發送一個心跳;最小 的session過期時間爲2倍tickTime

②、dataDir:存儲內存中數據庫快照的位置,除非另有說明,否則指向數據庫更新的事務日誌。注意:應該謹慎的選擇日誌存放的位置,使用專用的日誌存儲設備能夠大大提高系統的性能,如果將日誌存儲在比較繁忙的存儲設備上,那麼將會很大程度上影像系統性能。

③、client:監聽客戶端連接的端口。

④、initLimit:允許follower連接並同步到Leader的初始化連接時間,以tickTime爲單位。當初始化連接時間超過該值,則表示連接失敗。

⑤、syncLimit:表示Leader與Follower之間發送消息時,請求和應答時間長度。如果follower在設置時間內不能與leader通信,那麼此follower將會被丟棄。

⑥、server.A=B:C:D

A:其中 A 是一個數字,表示這個是服務器的編號;

B:是這個服務器的 ip 地址;

C:Leader選舉的端口;

D:Zookeeper服務器之間的通信端口。

我們需要修改的第一個是 dataDir ,在指定的位置處創建好目錄。

第二個需要新增的是 server.A=B:C:D 配置,其中 A 對應下面我們即將介紹的myid 文件。B是集羣的各個IP地址,C:D 是端口配置。

創建配置文件所必須的文件
寫入服務序號
第一個服務器 192.168.31.129

mkdir /usr/local/zookeeper/data
touch /usr/local/zookeeper/data/myid
vim /usr/local/zookeeper/data/myid
## 輸入內容
0

第二個服務器 192.168.31.130

mkdir /usr/local/zookeeper/data
touch /usr/local/zookeeper/data/myid
vim /usr/local/zookeeper/data/myid
## 輸入內容
1

。。。以此類推跟配置文件中相匹配

啓動 Zookeeper

#啓動ZK服務: 
zkServer.sh start
#停止ZK服務: 
zkServer.sh stop
#重啓ZK服務: 
zkServer.sh restart
#查看ZK服務狀態: 
zkServer.sh status

Zookeeper集羣需要每臺挨個啓動。

啓動集羣的時候,集羣數量啓動沒有超過一半,狀態會有錯誤提示,當集羣啓動數量超過一半就會自動轉爲正常狀態,並且此臺使集羣進入正常工作狀態的服務器會成爲leader角色,集羣中其他服務器的角色爲fllower。
如果啓動有錯誤到 /usr/local/zookeeper/log文件下查看即可,百度。。。。

啓動後

在這裏插入圖片描述在這裏插入圖片描述
在這裏插入圖片描述

發佈了9 篇原創文章 · 獲贊 3 · 訪問量 9227
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章