一、單機(jī)安裝
1.官網(wǎng)下載zookeeper-3.4.12
2.解壓到D:\Program\zookeeper-3.4.12
3.將\conf\zoo_sample.cfg復(fù)制,命名為zoo.cfg
4.在zookeeper下新建目錄data、log作為數(shù)據(jù)和日志存放地
5.修改配置zoo.cfg,dataDir,dataLogDir指向data和log
dataDir=D:\\Program\\zookeeper-3.4.12\\data
dataLogDir=D:\\Program\\zookeeper-3.4.12\\log
6.進(jìn)入到bin目錄,cmd,并且啟動(dòng)zkServer.cmd,將會(huì)啟動(dòng)一個(gè)java進(jìn)程
D:\Program\zookeeper-3.4.12\bin >zkServer.cmd
7.啟動(dòng)后,jps命令可以看到QuorumPeerMain的進(jìn)程
D:\Program\zookeeper-3.4.12\bin>jps
15648 QuorumPeerMain
6336
7312 Callable_Test
8780 Jps
D:\Program\zookeeper-3.4.12\bin>
8.zkCli.cmd啟動(dòng)客戶端運(yùn)行查看一下
D:\Program\zookeeper-3.4.12\bin>zkCli.cmd -server 127.0.0.1:2181
二、配置解釋
tickTime:基本時(shí)間單位(ms),作為Zookeeper 主從之間或客戶端與服務(wù)器之間維持心跳的時(shí)間間隔,也就是每隔tickTime時(shí)間就會(huì)發(fā)送一個(gè)心跳。
dataDir:Zookeeper 保存數(shù)據(jù)的目錄,默認(rèn)情況下,Zookeeper將寫數(shù)據(jù)的日志文件也保存在這個(gè)目錄里。
dataLogDir:Zookeeper保存日志文件的目錄,默認(rèn)情況下沒有此項(xiàng)
clientPort:客戶端連接Zookeeper服務(wù)器的端口,Zookeeper會(huì)監(jiān)聽這個(gè)端口,接受客戶端的訪問請(qǐng)求。
initLimit:心跳間隔數(shù),啟動(dòng)zookeeper時(shí),從實(shí)例同步到主實(shí)例的初始化連接時(shí)間限制,超出時(shí)間限制則連接失?。ㄒ詔ickTime為時(shí)間單位),總的時(shí) 間長度就是5 * 2000=10秒
syncLimit:心跳間隔數(shù),zookeeper正常運(yùn)行時(shí),主從節(jié)點(diǎn)之間同步數(shù)據(jù)的時(shí)間限制,若超過這個(gè)時(shí)間限制,那么隨從實(shí)例將會(huì)被丟棄;總的時(shí)間長度就是5 * 2000=10秒
server.A=B:C:D:配置集群時(shí)使用,其中A是一個(gè)數(shù)字,表示這個(gè)是第幾號(hào)服務(wù)器;B是這個(gè)服務(wù)器的ip;C表示的是此服務(wù)器與集群中的Leader服務(wù)器交換信息的端口;D表示的是萬一集群中的Leader服務(wù)器掛了,需要一個(gè)端口來重新進(jìn)行選舉,選出一個(gè)新的Leader,而這個(gè)端口就是用來執(zhí)行選舉時(shí)服務(wù)器相互通信的端口。