0 課程地址
https://coding.imooc.com/lesson/201.html#mid=12716
1 重點關注
1.1 特別聲明
- 常規集羣都是3,5等奇數臺
由於本地內存有限,使用了偶數臺,並且沒有完全成功,
沒成功的地方是從虛擬機最終能起來zk服務端,但是無法查看狀態。很多配置都和主虛擬機不一致。
刪除了從虛擬機,但是空間沒有釋放。又不方便隨意刪除Hyper-V,重新配置,所以學完本課程,虛擬機可以統一刪除下。
- zookeeper 配置文件配置ip端口
ip配置不同,端口號可以相同
- 主虛擬機使用zk目錄,從虛擬機使用zk02目錄,便於區分
主節點用的zookeeper目錄,從節點用的zookeeper02目錄。因爲本地資源有限,本節一共用了兩臺服務器搭建,課程用了三臺
1.2 搭建真實環境集羣
- 修改對應zk目錄:
a 主虛擬機
-- 這塊不用動,因爲本來虛擬機就有zk相關配置
b 從虛擬機
cd / cd /usr/local -- copy zk到zk2,然後刪除zk,只保留zk2,作爲從節點,便於區分 cp zookeeper zookeeper02 -rf rm zookeeper -rf
- 修改環境變量:
a 主虛擬機
--查看下是否正確
vim /etc/profile
b 從虛擬機
vim /etc/profile 修改爲 export ZOOKEEPER_HOME=/usr/local/zookeeper02 保存
- 修改配置文件zoo.cfg和 myid:
a 主虛擬機
cd /usr/local/zookeeper/conf vim zoo.cfg --a.1 zoo.cfg添加 server.1=172.26.220.107:2888:3888 server.2=172.26.220.161:2888:3888 --a.2 zoo.cfg確認端口號爲2181 保存 cd /usr/local/zookeeper/dataDir --a.3 myid vim myid 寫入1(已寫入的不需要重複寫入)(便於區分,主節點)
b 從虛擬機
cd /usr/local/zookeeper02/conf vim zoo.cfg --a.1 zoo.cfg添加 server.1=172.26.220.107:2888:3888 server.2=172.26.220.161:2888:3888 --a.2 設置各個數據路徑和日誌路徑 dataDir=/usr/local/zookeeper02/dataDir dataLogDir=/usr/local/zookeeper02/dataLogDir --a.3 zoo.cfg確認端口號爲2181 確認端口號爲2181 --a.4 myid cd /usr/local/zookeeper02/dataDir vim myid 寫入2(已寫入的不需要重複寫入)(便於區分,從節點)
1.3 驗證真實集羣
- 啓動各個服務端
a 主虛擬機
cd /usr/local/zookeeper/bin --先關再起,防止剛剛修改的配置沒有生效 ./zkServer.sh stop ./zkServer.sh start
b 主虛擬機
cd /usr/local/zookeeper02/bin ./zkServer.sh stop ./zkServer.sh start
- 查看狀態
a 主虛擬機
cd /usr/local/zookeeper02/bin ./zkServer.sh status output:Mode:leader
b 從虛擬機
cd /usr/local/zookeeper02/bin ./zkServer.sh status output:Mode:follower
- 驗證集羣是否成功
同上節
2 課程內容
2.1 殺死進程
--查看進程 [root@bogon bin]# jps -l 25072 org.apache.zookeeper.server.quorum.QuorumPeerMain 20501 sun.tools.jps.Jps 25999 org.apache.zookeeper.server.quorum.QuorumPeerMain --殺死進程 [root@bogon bin]# kill -9 25072 [root@bogon bin]# kill -9 25999 --再次查看進程 [root@bogon bin]# jps -l 21162 sun.tools.jps.Jps
2.1 centos關閉防火牆和禁用防火牆
--關閉防火牆 systemctl stop firewalld --禁用防火牆 systemctl disable firewalld
3 Coding