搭建 Zookeeper 集羣
注意:我們的集羣一般有3個節點,這些操作基本3個節點都要進行,這裏只針對一個節點進行說明。
1 進入/home/tools目錄,上傳zookeeper-3.4.13
[root@storm01 home]# cd tools
[root@storm01 tools]# rz
2 解壓 zookeeper-3.4.13.tar.gz 到 /home/softwares
[root@storm01 tools]# tar -zxf zookeeper-3.4.13.tar.gz -C ../softwares
3 進入zookeeper-3.4.13/
[root@storm01 softwares]# cd zookeeper-3.4.13/
4 進入conf,複製zoo_sample.cfg 文件命名爲zoo.cfg
[root@storm01 conf]# cp zoo_sample.cfg zoo.cfg
5 克隆一個窗口進入zookeeper-3.4.13,創建zkdata、logs文件夾
編輯zoo.cfg
vim zoo.cfg
tickTime=2000
initLimit=10
syncLimit=5 //在這以後加入:
dataDir=/home/softwares/zookeeper-3.4.13/zkdata ##zkdata路徑
dataLogDir=/home/softwares/zookeeper-3.4.13/logs ##logs路徑
server.1=storm01:2888:3888
server.2=storm02:2888:3888
server.3=storm02:2888:3888
說明:
dataDir 指定 Zookeeper 的數據文件目錄 server.id=host:port:port,id 是爲每個 Zookeeper 節點的編號,保存在 dataDir 目錄下的 myid 文件中,cddserver1、cddserver2、cddserver3 表示各個 Zookeeper 節點的 hostname,第一個 port 是用於連接 leader 的端口,第二個 port 是用於 leader 選舉的端口。
建立節點標識文件
[root@storm01 zookeeper-3.4.13]# cd zkdata/
[root@storm01 zkdata]# echo 1 >myid ##第一個節點
[root@storm02 zookeeper-3.4.13]# cd zkdata/
[root@storm02 zkdata]# echo 2>myid ##第二個節點
[root@storm03 zookeeper-3.4.13]# cd zkdata
[root@storm03 zkdata]# echo 3 >myid ##第三個節點
[root@storm03 zkdata]# cd ..
conf/zoo.cfg 文件中的 dataDir 參數指定目錄下創建 myid 文件,裏面內容爲一個數字,用來 標識當前主機,conf/zoo.cfg 文件中配置的 server.X 中 X 是什麼數字,則 myid 文件中就輸入這個數字
6 配置zookeeper環境,更新
注意:不管安裝任何軟件,配置環境後都要刷新,否則後續操作丟回出問題
[root@storm03 zookeeper-3.4.13]# vim /etc/profile
export ZOOKEEPER_HOME=/home/softwares/zookeeper-3.4.13
export PATH=$PATH:$ZOOKEEPER_HOME/bin
[root@storm03 zookeeper-3.4.13]# source /etc/profile
7 啓動zookeeper
[root@storm03 zookeeper-3.4.13]# zkServer.sh start
8 查看服務器是leader還是follwer
[root@storm03 zookeeper-3.4.13]# zkServer.sh status
9 關閉zookeeper(集羣使用完畢後關閉集羣)
[root@storm03 zookeeper-3.4.13]# zkServer.sh stop
說明:如果只是Zookeeper 集羣安裝,我們到這一步就可以了,但是,如果是要通過Zookeeper啓動storm集羣,運行storm項目的話,我們最好3個節點都回到主目錄,cd ~,在主目錄下啓動Zookeeper,因爲我們在啓動Zookeeper時,會生成一個Zookeeper.out文件和一個storm-local目錄,也就是說,我們在哪裏啓動Zookeeper,哪裏就將產生這兩個文件,爲方便我們查找記錄,還是統一在主目錄下啓動Zookeeper較好。
[root@storm03 zookeeper-3.4.13]# cd ~
[root@storm03 ~]# zkServer.sh start
[root@storm03 ~]# zkServer.sh stop