本文只講安裝、基本概念跳過
一、準備三臺機器,我安裝三臺虛擬機、IP分別爲(需要已安裝JDK,未安裝自行百度):
192.168.0.55
192.168.0.56
192.168.0.57
二、下載zookeeper 本文下載3.4.10版本
三、解壓、我放到 /usr/local 下了
tar -zxvf zookeeper-3.4.10.tar.gz
四、將三臺服務器 zookeeper文件夾下conf/zoo_sample.cfg 重命名爲 zoo.cfg
mv zoo_sample.cfg zoo.cfg
五、增加文件目錄及配置文件
1、在zookeeper下新建 data目錄 用於存儲數據
mkdir data
2、分別在 55 56 57 剛剛新建的data文件夾下 新建myid文件,並分別在文件裏面寫入 1 2 3(用於標記是哪個服務器)
touch myid
vi myid
六、分別修改55 56 57配置文件
vi zoo.cfg
參數說明:
tickTime:與客戶端通信心跳時間、單位毫秒
initLimit:leader-follower初始通信時間
syncLimit:leader-follower同步通信時間
dataDir:數據文件目錄
clientPort:客戶端連接端口
標紅爲新增的集羣代碼。
七、分別配置三臺ip的環境變量
vi etc/profile 在最後添加如下兩個。
export ZOOKEEPER_HOME=/opt/zookeeper-3.4.10
export PATH=$PATH:$ZOOKEEPER_HOME/bin:$ZOOKEEPER_HOME/conf
保存後進入cd /etc目錄下,輸入source profile命令使修改生效。
八、啓動zookeeper
進入bin目錄
zkServer.sh start 啓動
zkServer.sh status 查看狀態
zkServer.sh stop 停止
zkServer.sh restart 重啓
zkServer.sh start-foreground 以打印方式啓動
啓動效果如下:
發現啓動沒問題、但是查看狀態的時候報錯了。
關於報錯看了一些其他網友的解決方案如:
解決錯誤之後、重啓服務,然後查看三臺服務器狀態分別如下:
55:
56:
57:
會發現 55被自動選舉爲leader 56 57爲follower.
到此zookeeper集羣就創建完畢。