更新時(shí)間:2019-08-23 11:29:46 來(lái)源:動(dòng)力節(jié)點(diǎn) 瀏覽2932次
今天動(dòng)力節(jié)點(diǎn)java學(xué)院小編為大家介紹“Java前沿技術(shù)——最詳細(xì)的Zookeeper集群部署流程”,想要學(xué)習(xí)Java前沿技術(shù)的小伙伴們,就跟隨小編的一起看看最詳細(xì)的Zookeeper集群部署流程吧。
ZooKeeper是一個(gè)開(kāi)源的分布式應(yīng)用程序協(xié)調(diào)服務(wù),是Google的Chubby一個(gè)開(kāi)源的實(shí)現(xiàn)。ZooKeeper為分布式應(yīng)用提供一致性服務(wù),提供的功能包括:分布式同步(Distributed Synchronization)、命名服務(wù)(Naming Service)、集群維護(hù)(Group Maintenance)、分布式鎖(Distributed Lock)等,簡(jiǎn)化分布式應(yīng)用協(xié)調(diào)及其管理的難度,提供高性能的分布式服務(wù)。
ZooKeeper本身可以以單機(jī)模式安裝運(yùn)行,不過(guò)它的長(zhǎng)處在于通過(guò)分布式ZooKeeper集群(一個(gè)Leader,多個(gè)Follower),基于一定的策略來(lái)保證ZooKeeper集群的穩(wěn)定性和可用性,從而實(shí)現(xiàn)分布式應(yīng)用的可靠性。
1、服務(wù)器環(huán)境準(zhǔn)備
我們這次環(huán)境搭建,將采用5臺(tái)主機(jī)來(lái)完成。其中兩臺(tái)主要用來(lái)做控制ZKFC(Zookeeper Failure Controller),另外三臺(tái)作為客戶端。
(1)關(guān)閉網(wǎng)絡(luò)防火墻
為了保證系統(tǒng)能夠正常運(yùn)行,我們先關(guān)閉網(wǎng)絡(luò)防火墻,在CentOS7下這樣完成:
sudo systemctl stop firewalld
sudo systemctl disable firewalld
(2)關(guān)閉SELinux
SELinux也需要關(guān)閉,臨時(shí)關(guān)閉采用這種:sudo setenforce 0
永久關(guān)閉這樣操作:vi /etc/Selinux/config
將 SELINUX=行,修改為 SELINUX=disabled
(3)設(shè)置主機(jī)名
在各臺(tái)電腦上,分別編輯/etc/hostname,按照上述表格的主機(jī)名進(jìn)行設(shè)置。
sudo vi /etc/hostname
138.137.100主機(jī):master
138.137.101主機(jī):secondary
138.137.102主機(jī):slave1
138.137.103主機(jī):slave2
138.137.104主機(jī):slave3
(4)設(shè)置主機(jī)名稱解析
再在各臺(tái)主機(jī)上,編輯/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è)置的賬號(hào)和密碼來(lái)進(jìn)行。
useradd -m hadoop -G hadoop -s /bin/bash
password hadoop
2、 安裝配置Zookeeper
Zookeeper的官方網(wǎng)站為: http://zookeeper.apache.org。
注意:以下操作,將全部使用hadoop用戶來(lái)完成。執(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)下載
從國(guó)內(nèi)鏡像站點(diǎn)下載會(huì)快點(diǎn):
wget http://mirrors.hust.edu.cn/apache/zookeeper/zookeeper-3.4.13/zookeeper-3.4.13.tar.gz
(3)解壓
執(zhí)行以下指令解壓后,移動(dòng)到剛才創(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ù)器之間維持心跳的時(shí)間間隔
# tickTime以毫秒為單位。
tickTime=2000
# 集群中的follower服務(wù)器(F)與leader服務(wù)器(L)之間的初始連接心跳數(shù)
initLimit=10
# 集群中的follower服務(wù)器與leader服務(wù)器之間請(qǐng)求和應(yīng)答之間能容忍的最多心跳數(shù)
syncLimit=5
# 快照保存目錄
# 不要設(shè)置為/tmp,該目錄重新啟動(dòng)后會(huì)被自動(dòng)清除
dataDir=/home/hadoop/data/zookeeper/data
# 日志保存目錄
dataLogDir=/home/hadoop/data/zookeeper/logs
# 客戶端連接端口
clientPort=2181
# 客戶端最大連接數(shù)。
# 根據(jù)自己實(shí)際情況設(shè)置,默認(rèn)為60個(gè)
# maxClientCnxns=60
# 三個(gè)接點(diǎn)配置,格式為:
# server.服務(wù)編號(hào)=服務(wù)地址、LF通信端口、選舉端口
server.1=salve1:2888:3888
server.2=slave2:2888:3888
server.3=slave3:2888:3888
將該文件分發(fā)到各個(gè)節(jié)點(diǎn):
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)寫(xiě)入節(jié)點(diǎn)標(biāo)記
在三個(gè)slave節(jié)點(diǎn)上,分別在/home/hadoop/data/zookeeper/data/myid寫(xiě)入節(jié)點(diǎn)標(biāo)記:
slave1:1
slave2:2
slave3:3
3、啟動(dòng)Zookeeper
在slave1、slave2、slave3上,分別啟動(dòng)zkServer。
zkServer.sh start
4、可用性測(cè)試
(1) 節(jié)點(diǎn)狀態(tài)查看
在slave1、slave2、slave3上,分別執(zhí)行以下指令看Zookeeper是否啟動(dòng)成功。
zkServer.sh status
可以看到,3個(gè)節(jié)點(diǎn),一個(gè)leader,其他的都是follower。
Zookeeper節(jié)點(diǎn)狀態(tài)
(2)客戶端連接測(cè)試
在客戶端電腦上,執(zhí)行以下指令測(cè)試連接:
# 連接服務(wù)器
[hadoop@master ~]$ zkCli.sh -server slave1:2181
# 查看目錄
[zk: slave1(CONNECTED) 0] ls /
以上就是動(dòng)力節(jié)點(diǎn)java學(xué)院小編介紹的“ Java前沿技術(shù)——最詳細(xì)的Zookeeper集群部署流程”的內(nèi)容,希望對(duì)大家有幫助,更多精彩內(nèi)容請(qǐng)關(guān)注動(dòng)力節(jié)點(diǎn)java學(xué)院官網(wǎng)。
相關(guān)免費(fèi)視頻教程推薦
zookeeper集群部署免費(fèi)視頻教程下載:
http://m.dabaquan.cn/xiazai/2398.html
相關(guān)閱讀
0基礎(chǔ) 0學(xué)費(fèi) 15天面授
有基礎(chǔ) 直達(dá)就業(yè)
業(yè)余時(shí)間 高薪轉(zhuǎn)行
工作1~3年,加薪神器
工作3~5年,晉升架構(gòu)
提交申請(qǐng)后,顧問(wèn)老師會(huì)電話與您溝通安排學(xué)習(xí)
初級(jí) 202925
初級(jí) 203221
初級(jí) 202629
初級(jí) 203743