1.準(zhǔn)備工作:
##準(zhǔn)備3個(gè)節(jié)點(diǎn),要求配置好主機(jī)名稱(chēng),服務(wù)器之間系統(tǒng)時(shí)間保持一致
##注意/etc/hostname 和/etc/hosts 配置主機(jī)名稱(chēng)(在這個(gè)里我準(zhǔn)備Prac-zk-133, Prac-zk-134 , Prac-zk-135二節(jié)點(diǎn))
vim /etc/hosts #保證可以通過(guò)主機(jī)名互通 添加格式為IP 主機(jī)名稱(chēng)
## 比如
172.16.144.133 Prac-zk-133
172.16.144.134 Prac-zk-134
172.16.144.135 Prac-zk-135
## 測(cè)試
ping ip
ping 主機(jī)名
##注意關(guān)閉防火墻
# 1. 啟動(dòng)防火墻
systemctl start firewalld
# 2. 關(guān)閉防火墻
systemctl stop firewalld
# 3. 重啟防火墻
systemctl restart firewalld
# 4.查看防火墻狀態(tài)
systemctl status firewalld
# 5. 開(kāi)啟禁用的防火墻
systemctl disable firewalld
##特別注意以下操作3個(gè)節(jié)點(diǎn)要同時(shí)進(jìn)行操作哦!
2.上傳zk到三臺(tái)服務(wù)器節(jié)點(diǎn)
## 復(fù)制到其他機(jī)器 暫時(shí)測(cè)試不好用
#scp zookeeper-3.4. 6. tar.gz 192. 168.11.222: /usr/local /software/
## 上傳到/usr/local/software
cd /usr/local/software
##注意我這里解壓到/usr/local下
## 2.1進(jìn)行解壓:
tar -zxvf zookeeper-3.4.6.tar.gz -C /usr/local/
cd /usr/local/
# 2.2重命名:
mv zookeeper-3.4.6 zookeeper
# 2.3修改環(huán)境變量:
vim ~/.bash_profile
##這里要添加zookeeper的全局變量 jdk如果不會(huì)裝,可以看之前文章
export JAVA_HOME=/usr/local/jdk1.8
export ZOOKEEPER_HOME=/usr/local/zookeeper
export PATH=.:$JAVA_HOME/bin:$ZOOKEEPER_HOME/bin:$PATH
## 2.4刷新環(huán)境變量:
source ~/.bash_profile
# 2.5到zookeeper 下修改配置文件:
# 2.5.1首先到指定目錄:
cd /usr/local/zookeeper/conf
# 2.5.2然后復(fù)制zoo_sample.cfg文件, 復(fù)制后為zoo.cfg:
mv zoo_sample.cfg zoo.cfg
# 2.5.3然后修改兩處地方,最后保存退出:
vim /usr/local/zookeeper/conf/zoo.cfg
# (1)修改數(shù)據(jù)的dir 存儲(chǔ)數(shù)據(jù)的地方
dataDir=/usr/local/zookeeper/data
# (2) 修改集群地址
server.0=Prac-zk-133:2888:3888
server.1=Prac-zk-134:2888:3888
server.2=Prac-zk-135:2888:3888
## 2.5.4 增加服務(wù)器標(biāo)識(shí)配置,需要2步驟,第一是創(chuàng)建文件夾和文件, 第二是添加配置內(nèi)容:
# (1)創(chuàng)建文件夾:
mkdir /usr/local/zookeeper/data
# (2)創(chuàng)建文件myid路徑應(yīng)該創(chuàng)建在/usr/local/zookeeper/data 下面,如下:
vim /usr/local/zookeeper/data/myid
# 注意這里每臺(tái)服務(wù) 器的myid文件內(nèi)容不同,分別修改里面的值為0, 1, 2;與我們之前的zoo.cfg配置文件里:
# server.0, server.1, server.2 順序相對(duì)應(yīng),然后保存退出;
# 2.7到此為止,Zookeeper集群環(huán)境大功告成!啟動(dòng)zookeeper命令
啟動(dòng)路徑: cd /usr/local/zookeeper/bin (也可在任意目錄,因?yàn)榕渲昧谁h(huán)境變量)
執(zhí)行命令: zkServer.sh start (注意這里3臺(tái)機(jī)器都要進(jìn)行啟動(dòng),啟動(dòng)之后可以查看狀態(tài))
./zkServer.sh start-foreground # 有日志的打印的啟動(dòng)
查看狀態(tài): zkServer.sh status (在三個(gè)節(jié)點(diǎn)上檢驗(yàn)zk的mode,會(huì)看到一個(gè)leader和倆個(gè) follower)
關(guān)閉 : zkServer.sh stop
## zkCli.sh進(jìn)入zookeeper客戶(hù)端
Hostname | Ip | Root |
---|---|---|
Prac-zk-133 | 172.16.144.133 | root |
Prac-zk-134 | 172.16.144.134 | root |
Prac-zk-135 | 172.16.144.135 | root |
172.16.144.133 Prac-zk-133
172.16.144.134 Prac-zk-134
172.16.144.135 Prac-zk-135
zkServer.sh start-foreground 使用它啟動(dòng)會(huì)出現(xiàn)地址已在使用
Zookeeper啟動(dòng)失?。╦ava.net.BindException: 地址已在使用
端口被占用了,把2181端口改成別的就可以
lsof -i:2181 #查到進(jìn)程
kill -s 9 2715 #然后殺掉上面的進(jìn)程
如果只是使用zkServer.sh stop會(huì)停不干凈,后續(xù)繼續(xù)研究,方法在上文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-680669.html
zoo.cfg配置說(shuō)明
tickTime : 時(shí)間單位
initLimit follower與leader 同步數(shù)據(jù)的時(shí)間(initLimit*tickTime))
Synclimit 心跳檢測(cè)最大延遲時(shí)間。
dataDir 默認(rèn)情況下,zookeeper的事務(wù)日志 和 數(shù)據(jù)快照 都會(huì)保存在 dataDir 目錄下.
dataLogDir log日志存儲(chǔ)目錄,默認(rèn)dataDir下
clientPort 客戶(hù)端與服務(wù)端建立連接的端口號(hào),默認(rèn)2181文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-680669.html
到了這里,關(guān)于kafka---- zookeeper集群搭建的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!