[TOC]
1 默認(rèn)配置文件示例
# 毫秒數(shù),指定zookeeper中的最小時(shí)間單元大小
# 許多屬性都是該屬性的N倍
tickTime=2000
# 此處的10,表示tickTime的10倍
initLimit=10
# The number of ticks that can pass between
# sending a request and getting an acknowledgement
syncLimit=5
# 用于存儲(chǔ)快照的目錄
dataDir=/var/zookeeper
# 對(duì)外提供的服務(wù)端口,供客戶端使用
clientPort=2181
# maxClientCnxns=60
#
# autopurge.snapRetainCount=3
# autopurge.purgeInterval=1
server.1=h1:2183:2184
server.2=h2:2183:2184
server.3=h3:2183:2184
2 其他常用配置
- dataLogDir
默認(rèn)情況下,zookeeper的事務(wù)日志將會(huì)和快照文件存儲(chǔ)于同一目錄下.該屬性指定事務(wù)日志文件的存放位置拓哟。
并且,官方推薦的做法是: 為事務(wù)日志準(zhǔn)備專用的吞吐量較大的存儲(chǔ)設(shè)備撤缴,同時(shí)也將事務(wù)日志和快照文件的存儲(chǔ)分開了剧蚣。
- globalOutstandingLimit (zookeeper.globalOutstandingLimit)
當(dāng)客戶端請(qǐng)求到來的速度大于zookeeper處理請(qǐng)求的速度的時(shí)候(比如客戶端數(shù)量較大時(shí)),新的請(qǐng)求會(huì)堆積暇番。
太大的堆積會(huì)影響服務(wù)器的性能或者使zookeeper溢出。
該屬性就是設(shè)置堆積的請(qǐng)求的最大數(shù)量的狈涮。默認(rèn)為1000稻艰。
- preAllocSize (zookeeper.preAllocSize)
事務(wù)日志文件預(yù)分配的大小.默認(rèn)為64M。
- minSessionTimeout
最小超時(shí)時(shí)間,默認(rèn)為tickTime的2倍疯坤。
- maxSessionTimeout
最大超時(shí)時(shí)間报慕,默認(rèn)為tickTime的20倍。
- autopurge.snapRetainCount
啟用后,將自動(dòng)清理快照文件和日志文件压怠。該屬性指定在清理的時(shí)候保留幾個(gè)快照文件和日志文件眠冈。該值的最小值為3.
- autopurge.purgeInterval
定時(shí)清理日志和快照文件的時(shí)間間隔。0表示不清理菌瘫。
- initLimit
表示Leader等待Flower連接到Leader并和Leader同步數(shù)據(jù)的時(shí)間最大值蜗顽。當(dāng)數(shù)據(jù)量較大時(shí)應(yīng)該適當(dāng)調(diào)大該參數(shù)。
默認(rèn)為10*tickTime雨让。
- syncLimit
Leader和Follower之間心跳檢測(cè)的最大時(shí)間間隔雇盖。
如果超過該值配置的時(shí)間間隔沒有收到Follower的心跳信號(hào),則Leader認(rèn)為Follower已經(jīng)和自己斷開連接栖忠。
- forceSync (zookeeper.forceSync)
表示是否實(shí)時(shí)地將事務(wù)日志的內(nèi)容寫入磁盤(立即從緩存直接刷入磁盤)崔挖。
可取值為 yes|no
- skipACL (zookeeper.skipACL)
對(duì)于客戶端的請(qǐng)求是否跳過授權(quán)檢測(cè)。默認(rèn)為false庵寞。
3 常用四字命令
zookeeper中狸相,一些命令都是4個(gè)英文字母組成的,因此捐川,有人稱之為zookeeper “四字命令”脓鹃。
這些四字命令可以通過telnet或者nc來執(zhí)行以獲取zookeeper的一些信息。
以下stat命令的操作使用了兩種方法來演示:
- stat
查詢zookeeper集群狀態(tài)信息古沥。
[root@h1 zookeeper]# telnet 192.168.161.128 2181
Trying 192.168.161.128...
Connected to 192.168.161.128.
Escape character is '^]'.
stat
Zookeeper version: 3.4.9-1757313, built on 08/23/2016 06:50 GMT
Clients:
/192.168.161.128:53253[0](queued=0,recved=1,sent=0)
Latency min/avg/max: 0/0/0
Received: 4
Sent: 3
Connections: 1
Outstanding: 0
Zxid: 0x500000001
Mode: follower
Node count: 18
Connection closed by foreign host.
[root@h1 zookeeper]#
或者:
[root@h1 zookeeper]# echo stat | nc 192.168.161.128 2181
Zookeeper version: 3.4.9-1757313, built on 08/23/2016 06:50 GMT
Clients:
/192.168.161.128:53254[0](queued=0,recved=1,sent=0)
Latency min/avg/max: 0/0/0
Received: 5
Sent: 4
Connections: 1
Outstanding: 0
Zxid: 0x500000001
Mode: follower
Node count: 18
[root@h1 zookeeper]#
- mntr
[root@h1 zookeeper]# echo mntr | nc 192.168.161.128 2181
zk_version 3.4.9-1757313, built on 08/23/2016 06:50 GMT
zk_avg_latency 0
zk_max_latency 0
zk_min_latency 0
zk_packets_received 2
zk_packets_sent 2
zk_num_alive_connections 1
zk_outstanding_requests 0
zk_server_state follower
zk_znode_count 18
zk_watch_count 0
zk_ephemerals_count 0
zk_approximate_data_size 561
zk_open_file_descriptor_count 32
zk_max_file_descriptor_count 4096
- crst
重置所有客戶端連接統(tǒng)計(jì)信息
[root@h1 zookeeper]# echo crst | nc 192.168.161.128 2181
Connection stats reset.
- conf
獲取基本配置信息
[root@h1 zookeeper]# echo conf | nc 192.168.161.128 2181
clientPort=2181
dataDir=/var/zookeeper/version-2
dataLogDir=/var/zookeeper/version-2
tickTime=2000
maxClientCnxns=60
minSessionTimeout=4000
maxSessionTimeout=40000
serverId=1
initLimit=10
syncLimit=5
electionAlg=3
electionPort=2184
quorumPort=2183
peerType=0
[root@h1 zookeeper]#
- cons
客戶端連接的詳細(xì)信息
[root@h1 zookeeper]# echo cons | nc 192.168.161.128 2181
/192.168.161.128:53257[0](queued=0,recved=1,sent=0)
- envi
環(huán)境信息
[root@h1 zookeeper]# echo envi | nc 192.168.161.128 2181
Environment:
zookeeper.version=3.4.9-1757313, built on 08/23/2016 06:50 GMT
host.name=h1
java.version=1.8.0_101
java.vendor=Oracle Corporation
java.home=/soft/jdk1.8.0_101/jre
......
- ruok
ruok(are you ok)?
查詢瘸右,zookeeper是否處于工作狀態(tài)。
一般會(huì)返回 imok
(I am ok)
[root@h1 zookeeper]# echo ruok | nc 192.168.161.128 2181
imok[root@h1 zookeeper]#
- srvr
和stat命令類似岩齿,但是輸出不包括客戶端信息尊浓。
[root@h1 zookeeper]# echo srvr | nc 192.168.161.128 2181
Zookeeper version: 3.4.9-1757313, built on 08/23/2016 06:50 GMT
Latency min/avg/max: 0/0/0
Received: 13
Sent: 12
Connections: 1
Outstanding: 0
Zxid: 0x500000001
Mode: follower
Node count: 18
- srst
重置服務(wù)器端統(tǒng)計(jì)信息
[root@h1 zookeeper]# echo srst | nc 192.168.161.128 2181
Server stats reset.
[root@h1 zookeeper]#
- wchs
watcher信息
[root@h1 zookeeper]# echo wchs | nc 192.168.161.128 2181
0 connections watching 0 paths
Total watches:0
- wchc
以會(huì)話分組,顯示watcher信息
echo wchc | nc 192.168.161.128 2181
- wchp
以節(jié)點(diǎn)分組纯衍,顯示watcher信息
echo wchp | nc 192.168.161.128 2181
- dump
輸出會(huì)話信息
[root@h1 zookeeper]# echo dump | nc 192.168.161.128 2181
SessionTracker dump:
org.apache.zookeeper.server.quorum.LearnerSessionTracker@6f523655
ephemeral nodes dump:
Sessions with Ephemerals (0):