最近學習zookeeper,但是自己又只有一台學習服務,所有只有搭了一個偽集群服務,詳細流程如下,最后說一下碰到的問題。
1:
.gz 是我下載下來的zookeeper的服務, zookeeper-3.4.14 是一台服務 zookeeper-3.4.14.01 是第二台 zookeeper-3.4.14.02是第三台 下面流程以第一台為主
2:進入/zookeeper-3.4.14/conf 目錄 ,將zookeeper的配置文件名稱修改為zoo.cfg
3:下列是zoo.cfg的詳細配置:
需要修改的是:dataDir內容 dataLogDir內容 clientPort內容(重要)
新增內容為:(重要)
server.1=0.0.0.0.88:2881:3881
server.2=47.107.54:2882:3882
server.3=47.107.54.88:2883:3883
A=B:C:D A表示當前服務所對應的標記 B服務的IP地址 C 表示的是這個服務器與集群中的 Leader 服務器交換信息的端口;D 表示的是萬一集群中的 Leader 服務器掛了,需要一個端口來重新進行選舉,選出一個新的 Leader,而這個端口就是用來執行選舉時服務器相互通信的端口
4:修改dataDir對應路徑的內容 新增一個myid文件:內容為對應服務的標記
5:其他服務都是如此配置需要改動的為 zoo.cfg的dataDir內容 dataLogDir內容 clientPort內容(重要)已經Service的對應的配置
6:啟動服務從機
主機狀態
7:遇到的問題:常見問題不在此處多BB ,說一個讓我很棘手的問題
各個配置都沒有問題,但是啟動后發現zookeeper沒有啟動起來狀態日志如下
后從網上查找發現,我們每一台服務在進行端口號監聽時 我們的zoo.cfg的Service配置應該對應這監聽的地址所以如圖
所以我們對應的Service的IP地址應該與之對應
其他的服務都應該對自己的zoo.cfg的Service進行配置,這樣才可以啟動。