Zookeeper做爲分佈式協調服務,用於統一數據管理,可以單獨安裝應用,不依賴於其他組件,其他集羣服務是依賴於zookeeper來同步服務以及文件。
都是用root用戶,zookeeper-3.4.10.tar.gz 放在下載文件夾下
5臺機器的集羣配置如下(已安裝並配置jdk環境變量)
192.168.168.116 master1
192.168.168.117 master2
192.168.168.118 slaver1
192.168.168.119 slaver2
192.168.168.120 slaver3
修改主機ip映射文件如下(所有機器)
# vi /etc/hosts
# cd /root/下載
# tar -zxf zookeeper-3.4.10.tar.gz -C /usr/local
# mv /usr/local/zookeeper-3.4.10 /usr/local/zookeeper
修改配置文件:
# cd /usr/local/zookeeper/conf
# cp zoo_sample.cfg zoo.cfg # 複製配置文件(固定名稱zoo.cfg)
# vi zoo.cfg # 其他默認,修改新增以下配置
dataDir=/usr/local/zookeeper/tmp # 自定義緩存目錄,沒有要手動創建
server.1=master1:2888:3888
server.2=master2:2888:3888
server.3=slaver1:2888:3888
server.4=slaver2:2888:3888
server.5=slaver3:2888:3888
其中server.數字 是固定格式,後面myid文件中要對應上
在上面自定義的緩存目錄下新建一個文件,固定名稱爲myid
# touch /usr/local/zookeeper/tmp/myid
# vi /usr/local/zookeeper/tmp/myid
每個節點都要根據映射的實際server的數字更改,只填入相應數據即可(如1;或者2;或者3)
master1 的myid的值
修改環境變量:
# vi /etc/profile # 增加以下配置
export ZOOKEEPER_HOME=/usr/local/zookeeper
export PATH=$PATH:$ZOOKEEPER_HOME/bin
複製到其他節點:
# scp –r /usr/local/zookeeper slaver1:/usr/local
注意:各節點修改相應的myid並修改環境變量
在各個啓動zookeeper:
# cd /usr/local/zookeeper
# ./bin/zkServer.sh start
# ./bin/zkServer.sh status
查看狀態,有flower和leader,把leader節點kill掉後,會有其他flower變成leader,啓動原來被kill掉的節點成爲flower。說明zookeeper節點安裝配置成功。
# ./bin/zkServer.sh stop # 關閉服務
至此,zookeeper服務安裝完畢。安裝hadoop ha必須安裝zookeeper。