Java前沿技術(shù)——最詳細的Zookeeper集群部署流程

Java前沿技術(shù)——最詳細的Zookeeper集群部署流程

北大青鳥長沙麓谷校區(qū)      2022-03-29 17:10:01     11

Java前沿技術(shù)——最詳細的Zookeeper集群部署流程,  今天北大青鳥長沙麓谷校區(qū)java學(xué)院小編為大家介紹“Java前沿技術(shù)——最詳細的Zookeeper集群部署流程”,想要學(xué)習(xí)Java前沿技

課程價格 請咨詢

上課時段: 授課校區(qū):

詳細介紹

  


今天北大青鳥長沙麓谷校區(qū)java學(xué)院小編為大家介紹“Java前沿技術(shù)——最詳細的Zookeeper集群部署流程”,想要學(xué)習(xí)Java前沿技術(shù)的小伙伴們,就跟隨小編的一起看看最詳細的Zookeeper集群部署流程吧。


ZooKeeper是一個開源的分布式應(yīng)用程序協(xié)調(diào)服務(wù),是Google的Chubby一個開源的實現(xiàn)。ZooKeeper為分布式應(yīng)用提供一致性服務(wù),提供的功能包括:分布式同步(Distributed Synchronization)、命名服務(wù)(Naming Service)、集群維護(Group Maintenance)、分布式鎖(Distributed Lock)等,簡化分布式應(yīng)用協(xié)調(diào)及其管理的難度,提供高性能的分布式服務(wù)。


  ZooKeeper本身可以以單機模式安裝運行,不過它的長處在于通過分布式ZooKeeper集群(一個Leader,多個Follower),基于一定的策略來保證ZooKeeper集群的穩(wěn)定性和可用性,從而實現(xiàn)分布式應(yīng)用的可靠性。


  1、服務(wù)器環(huán)境準備


  我們這次環(huán)境搭建,將采用5臺主機來完成。其中兩臺主要用來做控制ZKFC(Zookeeper Failure Controller),另外三臺作為客戶端。




(1)關(guān)閉網(wǎng)絡(luò)防火墻


為了保證系統(tǒng)能夠正常運行,我們先關(guān)閉網(wǎng)絡(luò)防火墻,在CentOS7下這樣完成:


sudo systemctl stop firewalld


sudo systemctl disable firewalld



(2)關(guān)閉SELinux


SELinux也需要關(guān)閉,臨時關(guān)閉采用這種:sudo setenforce 0


永久關(guān)閉這樣操作:vi /etc/Selinux/config


        將 SELINUX=行,修改為 SELINUX=disabled




(3)設(shè)置主機名


在各臺電腦上,分別編輯/etc/hostname,按照上述表格的主機名進行設(shè)置。


sudo vi /etc/hostname


138.137.100主機:master


138.137.101主機:secondary


138.137.102主機:slave1


138.137.103主機:slave2


138.137.104主機:slave3



(4)設(shè)置主機名稱解析


再在各臺主機上,編輯/etc/hosts文件:sudo vi /etc/hosts


內(nèi)容是一樣的,均為:


192.168.137.100 master


192.168.137.101 secondary


192.168.137.102 slave1


192.168.137.103 slave2


192.168.137.104 slave3



(5)創(chuàng)建相應(yīng)的用戶


為了方便,以后有關(guān)Hadoop、Zookeeper、Hive、Hbase、Spark集群的安裝,我們都將采用以下設(shè)置的賬號和密碼來進行。


useradd -m hadoop -G hadoop -s /bin/bash


password hadoop



2、 安裝配置Zookeeper


Zookeeper的官方網(wǎng)站為: http://zookeeper.apache.org。


注意:以下操作,將全部使用hadoop用戶來完成。執(zhí)行以下指令切換到hadoop用戶:su - hadoop


(1) 設(shè)置工作目錄


執(zhí)行以下指令,創(chuàng)建Zookeeper的程序和數(shù)據(jù)存放目錄,并設(shè)置相應(yīng)的權(quán)限。


sudo mkdir -p /opt/zookeeper


sudo mkdir -p /home/hadoop/data/zookeeper/data


sudo mkdir -p /home/hadoop/data/zookeeper/logs


sudo chown -R hadoop:hadoop /opt/zookeeper


sudo chown -R hadoop:hadoop /home/hadoop/data/zookeeper



(2)下載


從國內(nèi)鏡像站點下載會快點:


wget http://mirrors.hust.edu.cn/apache/zookeeper/zookeeper-3.4.13/zookeeper-3.4.13.tar.gz



(3)解壓


執(zhí)行以下指令解壓后,移動到剛才創(chuàng)建的工作目錄。


tar zxvf zookeeper-3.4.13.tar.gz


mv zookeeper-3.4.13/* /opt/zookeeper/



(5)配置Zookeeper


執(zhí)行以下指令編輯Zookeeper的配置文件:


cd /opt/zookeeper/conf


cp zoo_sample.cfg zoo.cfg


vi /opt/zookeeper/zoo.cfg


最后的內(nèi)容如下:


# 服務(wù)器之間或客戶端與服務(wù)器之間維持心跳的時間間隔


# tickTime以毫秒為單位。


 tickTime=2000


 # 集群中的follower服務(wù)器(F)與leader服務(wù)器(L)之間的初始連接心跳數(shù)


 initLimit=10


 # 集群中的follower服務(wù)器與leader服務(wù)器之間請求和應(yīng)答之間能容忍的最多心跳數(shù)


 syncLimit=5


 # 快照保存目錄


 # 不要設(shè)置為/tmp,該目錄重新啟動后會被自動清除


 dataDir=/home/hadoop/data/zookeeper/data


# 日志保存目錄


 dataLogDir=/home/hadoop/data/zookeeper/logs


 # 客戶端連接端口


 clientPort=2181


 # 客戶端最大連接數(shù)。


 # 根據(jù)自己實際情況設(shè)置,默認為60個


 # maxClientCnxns=60


 # 三個接點配置,格式為:


#     server.服務(wù)編號=服務(wù)地址、LF通信端口、選舉端口


 server.1=salve1:2888:3888


 server.2=slave2:2888:3888


 server.3=slave3:2888:3888


將該文件分發(fā)到各個節(jié)點:


scp -R /opt/zookeeper/* secondary:/opt/zookeeper/


scp -R /opt/zookeeper/* slave1:/opt/zookeeper/


scp -R /opt/zookeeper/* slave2:/opt/zookeeper/


scp -R /opt/zookeeper/* slave2:/opt/zookeeper/



(5)寫入節(jié)點標(biāo)記


在三個slave節(jié)點上,分別在/home/hadoop/data/zookeeper/data/myid寫入節(jié)點標(biāo)記:

slave1:1


slave2:2


slave3:3



3、啟動Zookeeper


在slave1、slave2、slave3上,分別啟動zkServer。


zkServer.sh start



4、可用性測試


(1) 節(jié)點狀態(tài)查看


在slave1、slave2、slave3上,分別執(zhí)行以下指令看Zookeeper是否啟動成功。


zkServer.sh status


可以看到,3個節(jié)點,一個leader,其他的都是follower。


Zookeeper節(jié)點狀態(tài)


(2)客戶端連接測試


在客戶端電腦上,執(zhí)行以下指令測試連接:


# 連接服務(wù)器

[hadoop@master ~]$ zkCli.sh -server slave1:2181


# 查看目錄

[zk: slave1(CONNECTED) 0] ls /



以上就是北大青鳥長沙麓谷校區(qū)java學(xué)院小編介紹的“ Java前沿技術(shù)——最詳細的Zookeeper集群部署流程”的內(nèi)容,希望對大家有幫助,更多精彩內(nèi)容請關(guān)注北大青鳥長沙麓谷校區(qū)java學(xué)院官網(wǎng)。



相關(guān)免費視頻教程推薦


zookeeper集群部署免費視頻教程下載:


http://www.bjpowernode.com/xiazai/2398.html



培訓(xùn)啦提醒您:交易時請核實對方資質(zhì),對于過大宣傳或承諾需謹慎!任何要求預(yù)付定金、匯款等方式均存在風(fēng)險,謹防上當(dāng)。