首先 你得去下個包 :https://archive.apache.org/dist/zookeeper/
這裏博主用 3.4.13舉個例子 記得下 結尾爲.gz的
案例用的服務器ip 主:192.168.79.130 從:192.168.79.131
把包弄到服務器上 然後用 tar -zxvf zookeeper-3.4.13.tar.gz 解壓
以下步驟 主從服務器的
完事進入解壓後的文件夾的conf文件夾 這裏 建議cp一份文件備用 cp zoo_sample.cfg zoo.cfg
配置參數說明:
tickTime這個時間是作爲zookeeper服務器之間或客戶端與服務器之間維持心跳的時間間隔,也就是說每個tickTime時間就會發送一個心跳。
initLimit這個配置項是用來配置zookeeper接受客戶端(這裏所說的客戶端不是用戶連接zookeeper服務器的客戶端,而是zookeeper服務器集羣中連接到leader的follower 服務器)初始化連接時最長能忍受多少個心跳時間間隔數。
當已經超過10個心跳的時間(也就是tickTime)長度後 zookeeper 服務器還沒有收到客戶端的返回信息,那麼表明這個客戶端連接失敗。總的時間長度就是 10*2000=20秒。
syncLimit這個配置項標識leader與follower之間發送消息,請求和應答時間長度,最長不能超過多少個tickTime的時間長度,總的時間長度就是5*2000=10秒。
dataDir顧名思義就是zookeeper保存數據的目錄,默認情況下zookeeper將寫數據的日誌文件也保存在這個目錄裏;
clientPort這個端口就是客戶端連接Zookeeper服務器的端口,Zookeeper會監聽這個端口接受客戶端的訪問請求;
server.A=B:C:D中的A是一個數字,表示這個是第幾號服務器,B是這個服務器的IP地址,C第一個端口用來集羣成員的信息交換,表示這個服務器與集羣中的leader服務器交換信息的端口,D是在leader掛掉時專門用來進行選舉leader所用的端口。
圈紅的地方是需要改動的,上面的那個圈 兩個文件夾得真實存在 完事下面這兩個地址就是 集羣服務器的ip加端口 這個server.1 server.2得記住 下面會有用
好的 從這裏開始的配置主從之間就有區別了
在上述zoo.cfg配置的dataDir目錄下創建myid文件 文件的內容 根據 zoo.cfg的文件內容決定 像博主這個例子
主機就用1
從機用2
然後將所有結點都啓動
bin/zkServer.sh start
檢測集羣是否成功
主機
從機
這樣顯示就代表成功了 當然 集羣不止可以兩臺,也可以多個,自行決定就好
雖然kafka比較新的版本中自帶zookeeper但是博主還是建議自己搭一下zookeeper集羣 方便管理
kafka集羣地址:https://blog.csdn.net/chengtanyong4777/article/details/88812788
老規矩 有問題 留言或者加qq:1559810637