ZooKeeper学习:CentOS7下ZooKeeper集群搭建
生活随笔
收集整理的這篇文章主要介紹了
ZooKeeper学习:CentOS7下ZooKeeper集群搭建
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
文章目錄
- 準(zhǔn)備
- 1、虛擬機
- 2、安裝包
- 安裝
- 1、創(chuàng)建安裝目錄
- 2、文件配置
- 3、驗證
- 啟動zookeeper
- 查看zookeeper啟動狀態(tài)
- 停止zookeeper
- 查看zookeeper啟動過程
準(zhǔn)備
1、虛擬機
本文采用的三臺一模一樣的模擬機系統(tǒng)都是CentOS7,jdk版本"1.8.0_261“
一共三臺機器:
2、安裝包
本文準(zhǔn)備的安裝包是:zookeeper-3.4.12.tar.gz
安裝
1、創(chuàng)建安裝目錄
在三臺機器上分別創(chuàng)建以下三個目錄:
/opt/zookeeper /opt/zookeeper/zkdata /opt/zookeeper/zkdatalog將安裝包放到/opt/zookeeper目錄下:
然后將zookeeper-3.4.12.tar.gz解壓,解壓命令:
2、文件配置
將配置文件拷貝一份成zoo.cfg并進行配置
[root@hadoop-slave1 conf]# cd /opt/zookeeper/zookeeper-3.4.12/conf [root@hadoop-slave1 conf]# cp zoo_sample.cfg zoo.cfg對zoo.cfg進行配置
[root@hadoop-slave1 conf]# cat zoo.cfg # 這個時間是作為 Zookeeper 服務(wù)器之間或客戶端與服務(wù)器之間維持心跳的時間間隔,也就是每個 tickTime 時間就會發(fā)送一個心跳。 tickTime=2000 # 這個配置項是用來配置 Zookeeper 接受客戶端(這里所說的客戶端不是用戶連接 Zookeeper 服務(wù)器的客戶端,而是 Zookeeper 服務(wù)器集群中連接到 Leader 的 Follower 服務(wù)器)初始化連接時最長能忍受多少個心跳時間間隔數(shù)。當(dāng)已經(jīng)超過 5個心跳的時間(也就是 tickTime)長度后 Zookeeper 服務(wù)器還沒有收到客戶端的返回信息,那么表明這個客戶端連接失敗。總的時間長度就是 5*2000=10 秒 initLimit=10 # 這個配置項標(biāo)識 Leader 與Follower 之間發(fā)送消息,請求和應(yīng)答時間長度,最長不能超過多少個 tickTime 的時間長度,總的時間長度就是5*2000=10秒 syncLimit=5 # 快照和日志的存儲路徑 dataDir=/opt/zookeeper/zkdata dataLogDir=/opt/zookeeper/zkdatalog # 這個端口就是客戶端連接Zookeeper服務(wù)端的端口,Zookeeper會監(jiān)聽這個端口,接受客戶端的訪問請求。默認(rèn)是2181 clientPort=12181# zk集群節(jié)點配置 server.1=0.0.0.0:12888:13888 server.2=hadoop-slave2:12888:13888 server.3=hadoop-slave3:12888:13888 #server.1 這個1是服務(wù)器的表示也可以是其他數(shù)字,表示是第幾號服務(wù)器,用來表示服務(wù)器,這個標(biāo)識要寫到快照目錄下的myid文件中 #192.168.223.130為集群里的IP地址,第一個端口是master和slave之間的通信端口,默認(rèn)是2888,第二個端口是leader選舉端口, #集群剛啟動的時候選舉或者leader掛掉之后進行新的選舉的端口默認(rèn)是3888 # 一個ip所對應(yīng)的客戶機,只能和zk服務(wù)器維持60個連接 maxClientCnxns=60 # 這個參數(shù)和下面的參數(shù)搭配使用,這個參數(shù)指定了需要保留的文件數(shù)目。默認(rèn)是保留3個 autopurge.snapRetainCount=3 # 這個參數(shù)指定了清理頻率,單位是小時,需要填寫一個1或更大的整數(shù),默認(rèn)是0,表示不開啟自己清理功能 autopurge.purgeInterval=1這里需要注意,如果是在本機節(jié)點的話zk集群節(jié)點的ip需要配置成0.0.0.0,不然會報找不到域名的錯誤,
例如:我這個zookeeper是在hadoop-slave1上部署的,那么這個server.1節(jié)點ip就配置成0.0.0.0。
hadoop-slave1上的配置:
hadoop-slave2上的配置:
hadoop-slave3上的配置:
3、驗證
首先進入目錄:
[root@hadoop-slave1 bin]# cd /opt/zookeeper/zookeeper-3.4.12/bin [root@hadoop-slave1 bin]# ll 總用量 80 -rwxr-xr-x. 1 leo leo 232 3月 27 2018 README.txt -rwxr-xr-x. 1 leo leo 1937 3月 27 2018 zkCleanup.sh -rwxr-xr-x. 1 leo leo 1056 3月 27 2018 zkCli.cmd -rwxr-xr-x. 1 leo leo 1534 3月 27 2018 zkCli.sh -rwxr-xr-x. 1 leo leo 1759 3月 27 2018 zkEnv.cmd -rwxr-xr-x. 1 leo leo 2696 3月 27 2018 zkEnv.sh -rwxr-xr-x. 1 leo leo 1089 3月 27 2018 zkServer.cmd -rwxr-xr-x. 1 leo leo 6773 3月 27 2018 zkServer.sh -rw-r--r--. 1 root root 44128 12月 18 17:49 zookeeper.out然后查看命令使用方法
[root@hadoop-slave1 bin]# zkServer.sh --help ZooKeeper JMX enabled by default Using config: /opt/zookeeper/zookeeper-3.4.12/bin/../conf/zoo.cfg Usage: ./zkServer.sh {start|start-foreground|stop|restart|status|upgrade|print-cmd}啟動zookeeper
[root@hadoop-slave1 bin]# zkServer.sh start ZooKeeper JMX enabled by default Using config: /opt/zookeeper/zookeeper-3.4.12/bin/../conf/zoo.cfg Starting zookeeper ... STARTED
如上可以通過jps查看是否啟動成功。
查看zookeeper啟動狀態(tài)
將我們配置的三臺集群全部啟動,然后查詢狀態(tài)
[root@hadoop-slave1 bin]# zkServer.sh status ZooKeeper JMX enabled by default Using config: /opt/zookeeper/zookeeper-3.4.12/bin/../conf/zoo.cfg Mode: follower從這里可以看出我們的hadoop-slave1是follower節(jié)點
停止zookeeper
[root@hadoop-slave1 bin]# zkServer.sh stop ZooKeeper JMX enabled by default Using config: /opt/zookeeper/zookeeper-3.4.12/bin/../conf/zoo.cfg Stopping zookeeper ... STOPPED查看zookeeper啟動過程
如果一直啟動失敗可以使用如下命令查看啟動過程和日志:
[root@hadoop-slave1 bin]# zkServer.sh start-foreground ZooKeeper JMX enabled by default Using config: /opt/zookeeper/zookeeper-3.4.12/bin/../conf/zoo.cfg 2020-12-19 12:18:28,361 [myid:] - INFO [main:QuorumPeerConfig@136] - Reading configuration from: /opt/zookeeper/zookeeper-3.4.12/bin/../conf/zoo.cfg 2020-12-19 12:18:28,387 [myid:] - INFO [main:QuorumPeer$QuorumServer@184] - Resolved hostname: hadoop-slave3 to address: hadoop-slave3/192.168.223.130 2020-12-19 12:18:28,388 [myid:] - INFO [main:QuorumPeer$QuorumServer@184] - Resolved hostname: hadoop-slave2 to address: hadoop-slave2/192.168.223.129總結(jié)
以上是生活随笔為你收集整理的ZooKeeper学习:CentOS7下ZooKeeper集群搭建的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Linux运维:ulimit命令修改打开
- 下一篇: Linux运维:常用的压缩解压缩命令(z