zookeeper 4 letter 描述与实践
zookeeper 4 letter 描述与实践
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
|
命令示例描述 Conf echo conf | nc localhost 2181 (New in 3.3.0)输出相关服务配置的详细信息。比如端口、zk数据及日志配置路径、最大连接数,session超时时间、serverId等 Cons echo cons | nc localhost 2181 (New in 3.3.0)列出所有连接到这台服务器的客户端连接/会话的详细信息。包括“接受/发送”的包数量、session id 、操作延迟、最后的操作执行等信息。 Crst echo crst | nc localhost 2181 (New in 3.3.0)重置当前这台服务器所有连接/会话的统计信息 Dump echo dump | nc localhost 2181 列出未经处理的会话和临时节点(只在leader上有效)。 Envi echo envi | nc localhost 2181 输出关于服务器的环境详细信息(不同于conf命令),比如host.name、java.version、java.home、user.dir=/data/zookeeper-3.4.6/bin之类信息 Ruok echo ruok | nc localhost 2181 测试服务是否处于正确运行状态。如果正常返回"imok",否则返回空。 Srst echo srst | nc localhost 2181 重置服务器的统计信息 Srvr echo srvr | nc localhost 2181 (New in 3.3.0)输出服务器的详细信息。zk版本、接收/发送包数量、连接数、模式(leader/follower)、节点总数。 Stat echo stat | nc localhost 2181输出服务器的详细信息:接收/发送包数量、连接数、模式(leader/follower)、节点总数、延迟。 所有客户端的列表。 Wchs echo wchs | nc localhost 2181 (New in 3.3.0)列出服务器watches的简洁信息:连接总数、watching节点总数和watches总数 wchc echo wchc | nc localhost 2181 (New in 3.3.0)通过session分组,列出watch的所有节点,它的输出是一个与 watch 相关的会话的节点列表。如果watches数量很大的话,将会产生很大的开销,会影响性能,小心使用。 Wchp echo wchp | nc localhost 2181(New in 3.3.0)通过路径分组,列出所有的 watch 的session id信息。它输出一个与 session 相关的路径。如果watches数量很大的话,将会产生很大的开销,会影响性能,小心使用。 Mntr echo mntr | nc localhost 2181(New in 3.4.0)列出集群的健康状态。包括“接受/发送”的包数量、操作延迟、当前服务模式(leader/follower)、节点总数、watch总数、临时节点总数。 conf: clientPort:客户端端口号 dataDir:数据文件目录 dataLogDir:日志文件目录 tickTime:间隔单位时间 maxClientCnxns:最大连接数 minSessionTimeout:最小session超时 maxSessionTimeout:最大session超时 serverId:id initLimit:初始化时间 syncLimit:心跳时间间隔 electionAlg:选举算法 默认3 electionPort:选举端口 quorumPort:法人端口 peerType:未确认 cons: ip=ip port=端口 queued=所在队列 received=收包数 sent=发包数 sid=session id lop=最后操作 est=连接时间戳 to=超时时间 lcxid=最后id(未确认具体id) lzxid=最后id(状态变更id) lresp=最后响应时间戳 llat=最后/最新 延时 minlat=最小延时 maxlat=最大延时 avglat=平均延时 crst: 重置所有连接 dump: session id : znode path (1对多 , 处于队列中排队的session和临时节点) envi: zookeeper.version=版本 host.name=host信息 java.version=java版本 java.vendor=供应商 java.home=jdk目录 java.class.path=classpath java.library.path=lib path java.io.tmpdir=temp目录 java.compiler=< NA > os.name=Linux os.arch=amd64 os.version=2.6.32-358.el6.x86_64 user.name=hhz user.home=/home/hhz user.dir=/export/servers/zookeeper-3.4.6 ruok: 查看server是否正常 imok=正常 srst: 重置server状态 srvr: Zookeeper version:版本 Latency min/avg/max: 延时 Received: 收包 Sent: 发包 Connections: 连接数 Outstanding: 堆积数 Zxid: 操作id Mode: leader/follower Node count: 节点数 stat: Zookeeper version: 3.4.6-1569965, built on 02/20/2014 09:09 GMT Clients: /192.168.147.102:56168[1](queued=0,recved=41,sent=41) /192.168.144.102:34378[1](queued=0,recved=54,sent=54) /192.168.162.16:43108[1](queued=0,recved=40,sent=40) /192.168.144.107:39948[1](queued=0,recved=1421,sent=1421) /192.168.162.16:43112[1](queued=0,recved=54,sent=54) /192.168.162.16:43107[1](queued=0,recved=54,sent=54) /192.168.162.16:43110[1](queued=0,recved=53,sent=53) /192.168.144.98:34702[1](queued=0,recved=41,sent=41) /192.168.144.98:34135[1](queued=0,recved=61,sent=65) /192.168.162.16:43109[1](queued=0,recved=54,sent=54) /192.168.147.102:56038[1](queued=0,recved=165313,sent=165314) /192.168.147.102:56039[1](queued=0,recved=165526,sent=165527) /192.168.147.101:44124[1](queued=0,recved=162811,sent=162812) /192.168.147.102:39271[1](queued=0,recved=41,sent=41) /192.168.144.107:45476[1](queued=0,recved=166422,sent=166423) /192.168.144.103:45100[1](queued=0,recved=54,sent=54) /192.168.162.16:43133[0](queued=0,recved=1,sent=0) /192.168.144.107:39945[1](queued=0,recved=1825,sent=1825) /192.168.144.107:39919[1](queued=0,recved=325,sent=325) /192.168.144.106:47163[1](queued=0,recved=17891,sent=17891) /192.168.144.107:45488[1](queued=0,recved=166554,sent=166555) /172.17.36.11:32728[1](queued=0,recved=54,sent=54) /192.168.162.16:43115[1](queued=0,recved=54,sent=54) Latency min/avg/max: 0/0/599 Received: 224869 Sent: 224817 Connections: 23 Outstanding: 0 Zxid: 0x68000af707 Mode: follower Node count: 101081 (同上面的命令整合的信息) wchs: connectsions=连接数 watch-paths=watch节点数 watchers=watcher数量 wchc: session id 对应 path wchp: path 对应 session id mntr: zk_version=版本 zk_avg_latency=平均延时 zk_max_latency=最大延时 zk_min_latency=最小延时 zk_packets_received=收包数 zk_packets_sent=发包数 zk_num_alive_connections=连接数 zk_outstanding_requests=堆积请求数 zk_server_state=leader/follower 状态 zk_znode_count=znode数量 zk_watch_count=watch数量 zk_ephemerals_count=临时节点(znode) zk_approximate_data_size=数据大小 zk_open_file_descriptor_count=打开的文件描述符数量 zk_max_file_descriptor_count=最大文件描述符数量 zk_followers=follower数量 zk_synced_followers=同步的follower数量 zk_pending_syncs=准备同步数 |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
|
实践[spark-hadoop@master ~]$ echo conf | nc master 2181 //打印服务配置信息 clientPort=2181 dataDir=/home/spark-hadoop/zookeeper-3.4.9/zk_data/version-2 dataLogDir=/home/spark-hadoop/zookeeper-3.4.9/zk_data/version-2 tickTime=2000 maxClientCnxns=60 minSessionTimeout=4000 maxSessionTimeout=40000 serverId=1 initLimit=10 syncLimit=5 electionAlg=3 electionPort=3888 quorumPort=2888 peerType=0 [spark-hadoop@master ~]$ echo cons | nc master 2181 //显示所有连接到本服务的连接/会话信息;包括收发包数量,会话id等 /192.168.137.10:57725[0](queued=0,recved=1,sent=0) [spark-hadoop@master ~]$ echo crst | nc master 2181 // Connection stats reset. [spark-hadoop@master ~]$ echo dump | nc master 2181 //显示未处理会话、临时nodes。仅适用于leader。 SessionTracker dump: org.apache.zookeeper.server.quorum.LearnerSessionTracker@1cf00a1 ephemeral nodes dump: Sessions with Ephemerals (0): [spark-hadoop@master ~]$ echo envi | nc master 2181 //打印该服务的环境变量 Environment: zookeeper.version=3.4.9-1757313, built on 08/23/2016 06:50 GMT host.name=master java.version=1.7.0_79 java.vendor=Oracle Corporation java.home=/usr/java/jre java.class.path=/home/spark-hadoop/zookeeper-3.4.9/bin/../build/classes:/home/spark-hadoop/zookeeper-3.4.9/bin/../build/lib/*.jar:/home/spark-hadoop/zookeeper-3.4.9/bin/../lib/slf4j-log4j12-1.6.1.jar:/home/spark-hadoop/zookeeper-3.4.9/bin/../lib/slf4j-api-1.6.1.jar:/home/spark-hadoop/zookeeper-3.4.9/bin/../lib/netty-3.10.5.Final.jar:/home/spark-hadoop/zookeeper-3.4.9/bin/../lib/log4j-1.2.16.jar:/home/spark-hadoop/zookeeper-3.4.9/bin/../lib/jline-0.9.94.jar:/home/spark-hadoop/zookeeper-3.4.9/bin/../zookeeper-3.4.9.jar:/home/spark-hadoop/zookeeper-3.4.9/bin/../src/java/lib/*.jar:/home/spark-hadoop/zookeeper-3.4.9/bin/../conf:.::/usr/java/lib:/lib java.library.path=/usr/java/packages/lib/i386:/lib:/usr/lib java.io.tmpdir=/tmp java.compiler=< NA > os.name=Linux os.arch=i386 os.version=2.6.32-358.el6.i686 user.name=spark-hadoop user.home=/home/spark-hadoop user.dir=/home/spark-hadoop [spark-hadoop@master ~]$ echo ruok | nc master 2181 //测试服务是否正常运行。imok [spark-hadoop@master ~]$ echo srst | nc master 2181 Server stats reset. [spark-hadoop@master ~]$ echo srvr | nc master 2181 //显示服务的所有信息 Zookeeper version: 3.4.9-1757313, built on 08/23/2016 06:50 GMT Latency min/avg/max: 0/0/0 Received: 1 Sent: 1 Connections: 1 Outstanding: 0 Zxid: 0x400000002 Mode: follower Node count: 4 [spark-hadoop@master ~]$ echo stat | nc master 2181 //显示服务和已连接客户端的简单信息 Zookeeper version: 3.4.9-1757313, built on 08/23/2016 06:50 GMT Clients: /192.168.137.10:57733[0](queued=0,recved=1,sent=0) Latency min/avg/max: 0/0/0 Received: 2 Sent: 2 Connections: 1 Outstanding: 0 Zxid: 0x400000002 Mode: follower Node count: 4 [spark-hadoop@master ~]$ echo wchs | nc master 2181 //显示服务的watchs简单信息 0 connections watching 0 paths Total watches:0 [spark-hadoop@master ~]$ echo wchc | nc master 2181 //显示服务的watchs详细信息,依据会话 [spark-hadoop@master ~]$ echo wchp | nc master 2181 //显示服务的watchs详细信息,依据路径 [spark-hadoop@master ~]$ echo mntr | nc master 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 6 zk_packets_sent 6 zk_num_alive_connections 1 zk_outstanding_requests 0 zk_server_state follower zk_znode_count 4 zk_watch_count 0 zk_ephemerals_count 0 zk_approximate_data_size 27 zk_open_file_descriptor_count 25 zk_max_file_descriptor_count 4096 |