1、下載zookeeper
下載地址:http://archive.apache.org/dist/zookeeper/
或
wget http://archive.apache.org/dist/zookeeper/zookeeper-3.4.6/zookeeper-3.4.6.tar.gz
2、解壓安裝包
tar -zxvf zookeeper-3.4.6.tar.gz
3、在 zookeeper根目錄下創建data及logs目錄
cd /usr/local/zookeeper-3.4.6
mkdir data
mkdir logs
4、進入 zookeeper-3.4.6/conf 目錄
4.1 新建zoo.cfg配置文件
vi zoo.cfg
4.2 寫入如下內容
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/usr/local/zookeeper-3.4.6/data
dataLogDir=/usr/local/zookeeper-3.4.6/logs
#dubbo服務的提供者和消費者對於zookeeper來說,都是客戶端、都訪問2181端口
clientPort=2181
server.1=106.12.72.208:2888:3888
server.A=B:C:D
A 是一個數字,表示這個是第幾號服務器;
B 是這個服務器的 IP 地址或/etc/hosts 文件中映射了 IP 的主機名;
C 表示的是這個服務器與集羣中的 Leader 服務器交換信息的端口;
D 表示的是萬一集羣中的 Leader 服務器掛了,需要一個端口來重新進行選舉,選出一個新的 Leader,而這個端口就是
用來執行選舉時服務器相互通信的端口。
如果是僞集羣的配置方式,由於 B 都是一樣,所以不同的 Zookeeper 實例通信端口號不能一樣,所以要給它們分配不同
的端口號。
5、進入 zookeeper-3.4.6/data 目錄,新建myid文件,寫入如上A值
vi myid
1
6、配置環境變量
export ZOOKEEPER_HOME=/usr/local/zookeeper-3.4.6
export PATH=$PATH:$ZOOKEEPER_HOME/bin
7、防火牆開啓2181、2888、3888端口,以Cent0S7爲例
#開啓端口
#--permanent永久生效,沒有此參數重啓後失效
firewall-cmd --zone=public --add-port=2181/tcp --permanent
firewall-cmd --zone=public --add-port=2888/tcp --permanent
firewall-cmd --zone=public --add-port=3888/tcp --permanent
#重載
firewall-cmd --reload
8、啓停命令,進入 zookeeper-3.4.6/bin 目錄
#啓動
./zkServer.sh start
#停止
./zkServer.sh stop
#重啓
./zkServer.sh restart
#查看狀態
./zkServer.sh status
#查看zookeeper輸出信息
tail -f zookeeper.out