前言
好了現在三臺機器上JDK8我們已經安裝好了(沒裝好的移步上一篇文章 三分鐘安裝JDK),現在讓我們愉快地安裝Zookeeper。
下載Zookeeper
這裏我用的是zookeeper3.4.6
留個鏈接:https://pan.baidu.com/s/1LGOIO1O16Z0Q0dP8X68WgA 提取碼:4anv
把他上傳到你的linux機器上去,用xftp就可以
安裝
首先解壓 tar xf zookeeper-3.4.6.tar.gz
然後把解壓出來的文件放到你想放的地方去。我放在了 /opt下面
mv zookeeper-3.4.6 /opt
然後修改配置文件,建議copy一份
cd /opt/zookeeper-3.4.6/conf
cp zoo_sample.cfg zoo.cfg
vi zoo.cfg
修改如下內容:
dataDir=/temp/zookeeper 改爲 dataDir=/var/zookeeper
在末尾追加如下內容
server.1=node01:2888:3888
server.2=node02:2888:3888
server.3=node03:2888:3888
... 你有多少server要進集羣就寫多少 我這裏是三臺 node01-03是主機名,可以換成ip,否則需要創建主機名到ip的映射
稍微提一下,你需要設置主機名 vi /etc/sysconfig/network 比如說追加:HOSTNAME=node01
然後還需要再hosts文件中添加主機名到各個節點的映射:vi /etc/hosts 添加如下內容:
192.168.27.66 node01
192.168.27.67 node02
192.168.27.68 node03
server後面的數字是server的myid,2888是集羣內通信端口,3888是選主端口。想知道詳細的細節可以去看各種“Zookeeper 看這一篇就夠了”的博文,看我這一篇肯定不夠!不過後續可能會更,對我就是騙關注(不要臉)
創建剛纔的dataDir目錄,mkdir -p /var/zookeeper
創建myid文件,並寫入1(因爲我在node01上並且我給node01配成了server.1), vi /var/zookeeper/myid 寫入一個1 然後保存並退出
至此node01上的zookeeper配置完成了。接下來用同樣的手法給其他機器來一遍... 王德發??? 所以我們來拷貝
我現在在opt目錄下,執行 scp -r ./zookeeper-3.4.6 node02:`pwd` 同理node03也來一遍
然後在node02和node03上創建myid文件,忘了的話看看node01上怎麼創建的,注意要和server.number中的數字對應
爲了使用方便我們來配置一下環境變量
vi /etc/profile
添加zookeeper的環境變量: export ZOOKEEPER_HOME=/opt/zookeeper-3.4.6
追加到path中,我的path現在長這樣: PATH=$PATH:$JAVA_HOME/bin:$ZOOKEEPER_HOME/bin
然後分發到node02和node03即可,怎麼分發? 看上面scp命令!
啓動Zookeeper
所有一切都準備好了,嘗試使用zkServer.sh start來啓動zookeeper吧。當然 配置在集羣裏的非observer節點需要啓動半數以上集羣才能正常工作。第一次玩的同學可以使用zkServer.sh start-foreground來進行阻塞式啓動,所有日誌都會打印在控制檯。
如果你發現日誌一直在報錯,無法正常訪問其他節點的話,請關閉linux的防火牆,命令如下:
service iptables stop
禁止開機自啓動
chkconfig iptables off
寫在最後的話
恭喜你完成了今天的五分鐘安裝Zookeeper課程!如果覺得太累可以選擇更低難度的課程,如果覺得太輕鬆可以選擇進階難度的Zookeeper機制全解析!完成課程後記得做一組拉伸放鬆一下喔!手動@keep打錢!!!期待下次課程和你再會!Over