使用方式:
telnet
1
2
3
4
5
6
7
8
9
10
11
12
13
14telnet localhost 2181
Trying ::1...
Connected to localhost.
Escape character is '^]'.
conf
clientPort=2181
dataDir=/usr/local/var/lib/zookeeper/version-2
dataLogDir=/usr/local/var/lib/zookeeper/version-2
tickTime=3000
maxClientCnxns=0
minSessionTimeout=6000
maxSessionTimeout=60000
serverId=0
Connection closed by foreign host.nc
1
2
3
4
5
6
7
8
9echo conf | nc localhost 2181
clientPort=2181
dataDir=/usr/local/var/lib/zookeeper/version-2
dataLogDir=/usr/local/var/lib/zookeeper/version-2
tickTime=3000
maxClientCnxns=0
minSessionTimeout=6000
maxSessionTimeout=60000
serverId=0
以下示例基于在本地以默认配置起单实例ZooKeeper和Kafka,Kafka连接到ZooKeeper。Mac系统下ZooKeeper配置文件目录为/usr/local/etc/zookeeper
。
1. conf
conf命令用于输出ZooKeeper服务器运行时使用的基本配置信息,包括clientPort,dataDir和tickTime等。
conf会根据当前的运行模式来决定打印输出的服务器配置信息,如果是单机模式(standalone),不会输出 initLimit、syncLimit、electionAlg以及electionPort等集群配置信息。
1 | echo conf | nc localhost 2181 |
2. cons
cons命令用于输出当前这台服务器上所有客户端连接的详细信息,包括每个客户端的客户端IP、会话ID和最后一次与服务器交互的操作类型等。
1 | echo cons | nc localhost 2181 |
3. crst
crst命令用于重置所有客户端的连接统计信息。
1 | echo crst | nc localhost 2181 |
4. dump
dump命令用于输出当前集群的所有会话信息,包括这些会话的会话ID,以及每个会话创建的临时节点等信息。另外,如果在Leader服务器上执行该命令的话,还能够看到每个会话的超时时间。
1 | echo dump | nc localhost 2181 |
5. envi
envi命令用于输出ZooKeeper所在服务器运行时的环境信息,包括os.version,java.version和user.home等。
1 | echo envi | nc localhost 2181 |
6. ruok
ruok命令即“are you ok”,用于输出当前ZooKeeper服务器是否正在运行。执行该命令后,如果当前ZooKeeper服务器正在运行,那么返回“imok”,否则没有任何响应输出。
ruok命令的输出仅仅只能表明当前服务器是否正在运行,准确地讲,只能说明2181端口打开着,同时四字命令执行流程正常,但是不能代表ZooKeeper服务器是否运行正常。在很多时候,如果当前服务器无法正常处理客户端的读写请求,甚至已经无法和集群中的其他机器通信,ruok命令依然返回“imok”。
1 | echo ruok | nc localhost 2181 |
7. stat
stat命令用于获取ZooKeeper服务器的运行时状态信息,包括基本的ZooKeeper版本,打包信息,运行时角色,集群数据节点个数等信息,另外还会将当前服务器的客户端连接信息打印出来。
1 | echo stat | nc localhost 2181 |
8. srvr
srvr命令和stat命令的功能一致,唯一的区别是srvr不会将客户端的连接情况输出,仅仅输出服务器的自身信息。
1 | echo srvr | nc localhost 2181 |
9. wchs
wchs命令用于输出当前服务器上管理的Watchers的概要信息。
1 | echo wchs | nc localhost 2181 |
10. wchc
wchc命令用于输出当前服务器上管理的Watchers的详细信息,以会话为单位进行归组,同时列出被该会话注册了Watcher的节点路径。
1 | echo wchc | nc localhost 2181 |
10. wchp
wchp命令和wchc命令非常类似,也是用于输出当前服务器上管理的Watchers的详细信息,不同点在于wchp命令的输出信息以节点路径为单位进行归组。
1 | echo wchp | nc localhost 2181 |
11. mntr
mntr命令用于输出比stat命令更为详尽的服务器统计信息,包括请求处理的延迟情况、服务器内存数据库大小和集群的数据同步情况。
1 | echo mntr | nc localhost 2181 |
12. isro
New in 3.4.0: Tests if server is running in read-only mode. The server will respond with “ro” if in read-only mode or “rw” if not in read-only mode.
1 | echo isro | nc localhost 2181 |
13. gtmk
Gets the current trace mask as a 64-bit signed long value in decimal format.
1 | echo gtmk | nc localhost 2181 |