ZooKeeper命令

首先我们先将ZooKeeper的服务启动

进入ZooKeeper的bin目录执行以下命令

./zkServer.sh start

启动成功

ZooKeeper JMX enabled by default
Using config: /opt/zookeeper-3.4.9/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED

ZooKeeper 命令

我们通过nc或者telnet命令访问2181端口,通过执行ruok(Are you OK?) 命令来检查ZooKeeper是否启动成功。

echo ruok | nc localhost 2181

结果:

imok

那么我们看见zookeeper回答我们imok。下面我们将来介绍zookeeper的所有命令,它们都是由4个字符组成的。

命令使用格式
echo 命令 | nc IP地址 端口
  • echo - Shell 的 echo 指令与 PHP 的 echo指令类似,都是用于字符串的输出。语法为echo string
  • 命令 - ZooKeeper的命令。例如ruok
  • nc - Linux nc命令用于设置路由器。执行本指令可设置路由器的相关参数。语法为nc IP地址 端口号
  • IP地址 - 即ZooKeeper所在的服务器IP地址
  • 端口 - 即ZooKeeper的端口号。
有关服务器状态命令
ruok

如果ZooKeeper正在运行且未处于错误状态,则打印imok。

示例:

echo ruok | nc localhost 2181

结果:

imok

出现imok证明ZooKeeper启动成功。

conf

打印ZooKeeper的zoo.cfg配置文件信息。

示例:

echo conf | nc localhost 2181

结果:

clientPort=2181
dataDir=/var/lib/zookeeper/version-2
dataLogDir=/var/lib/zookeeper/version-2
tickTime=2000
maxClientCnxns=60
minSessionTimeout=4000
maxSessionTimeout=40000
serverId=0
  • clientPort - 客户端连接server的端口,即对外服务端口,一般设置为2181吧。
  • dataDir - 存储快照的目录。
    • 默认情况下,事务日志也会存储在这里。建议同时配置参数dataLogDir, 事务日志的写性能直接影响ZooKeeper性能。
    • 默认存放目录是/tmp 。注意:快照目录不要使用/tmp进行存储,因为/tmp这个目录是用来存放一些临时文件的。(/tmp目录下的内容默认保留10天,这个天数可通过修改CentOS的tmp.conf配置来改变)。所以在安装完ZooKeeper时最好修改该配置。
  • dataLogDir -事务日志输出目录。尽量给事务日志的输出配置单独的磁盘或是挂载点,这将极大的提升ZooKeeper性能。
  • tickTime - ZooKeeper的一个时间单元(毫秒值)。所有时间都是以这个时间单元为基础,进行整数倍配置的。例如,session的最小超时时间是2*tickTime
  • maxClientCnxns - 最大客户端连接数。默认是60,如果设置为0,那么表明不作任何限制。
  • minSessionTimeout - Session最小超时时间限制,如果不设置则为2 * tickTime
  • maxSessionTimeout - Session最大超时时间限制,如果不设置则为20 * tickTime
  • serverId - 服务器ID
envi

打印服务器环境,包括ZooKeeper版本,Java版本和其他系统属性。

示例:

echo envi | nc localhost 2181

结果:

Environment:
zookeeper.version=3.4.9-1757313, built on 08/23/2016 06:50 GMT
host.name=bogon
java.version=1.8.0_181
java.vendor=Oracle Corporation
java.home=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.181-7.b13.el7.x86_64/jre
java.class.path=/opt/zookeeper-3.4.9/bin/../build/classes:/opt/zookeeper-3.4.9/bin/../build/lib/*.jar:/opt/zookeeper-3.4.9/bin/../lib/slf4j-log4j12-1.6.1.jar:/opt/zookeeper-3.4.9/bin/../lib/slf4j-api-1.6.1.jar:/opt/zookeeper-3.4.9/bin/../lib/netty-3.10.5.Final.jar:/opt/zookeeper-3.4.9/bin/../lib/log4j-1.2.16.jar:/opt/zookeeper-3.4.9/bin/../lib/jline-0.9.94.jar:/opt/zookeeper-3.4.9/bin/../zookeeper-3.4.9.jar:/opt/zookeeper-3.4.9/bin/../src/java/lib/*.jar:/opt/zookeeper-3.4.9/bin/../conf:
java.library.path=/usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib
java.io.tmpdir=/tmp
java.compiler=<NA>
os.name=Linux
os.arch=amd64
os.version=3.10.0-957.el7.x86_64
user.name=root
user.home=/root
user.dir=/opt/zookeeper-3.4.9/bin
srvr

打印服务器统计信息,包括延迟统计信息,znode数量和服务器模式(standalone(独立), leader(领导者), or follower(跟随者))。

  • standalone - 即ZooKeeper为单机架构。
  • leader - 即ZooKeeper为集群架构,并该服务器为主服务器。
  • follower - 即ZooKeeper为集群架构,并该服务器为从服务器。

示例:

 echo srvr | nc localhost 2181

结果:

Zookeeper version: 3.4.9-1757313, built on 08/23/2016 06:50 GMT
Latency min/avg/max: 0/0/0
Received: 6
Sent: 5
Connections: 1
Outstanding: 0
Zxid: 0x5
Mode: standalone
Node count: 4
stat

打印服务器统计信息和连接的客户端。

示例:

echo stat | nc localhost 2181

结果:

Zookeeper version: 3.4.9-1757313, built on 08/23/2016 06:50 GMT
Clients:
 /0:0:0:0:0:0:0:1:43486[0](queued=0,recved=1,sent=0)

Latency min/avg/max: 0/0/0
Received: 7
Sent: 6
Connections: 1
Outstanding: 0
Zxid: 0x5
Mode: standalone
Node count: 4
srst

重置服务器统计信息。

示例:

echo srst | nc localhost 2181

结果:

Server stats reset.
isro

显示服务器是处于只读(ro)模式(由于网络分区)还是读/写模式(rw)。

示例:

echo isro | nc localhost 2181

结果:

rw
有关客户连接信息命令
dump

列出集合的所有会话和临时znode。您必须连接到leader(领导者)(请参阅srvr)以获取此命令。

示例:

echo dump | nc localhost 2181

结果:

SessionTracker dump:
#会话集
Session Sets (4):
0 expire at Sat Aug 24 05:26:06 HKT 2019:
0 expire at Sat Aug 24 05:26:16 HKT 2019:
0 expire at Sat Aug 24 05:26:26 HKT 2019:
1 expire at Sat Aug 24 05:26:36 HKT 2019:
	0x16cc029862a0003
ephemeral nodes dump:
#会话的临时Znode
Sessions with Ephemerals (0):
cons

列出所有服务器客户端的连接统计信息。包括接受或者发送包的数量,会话ID,操作延迟,最后的操作执行等等信息。

示例:

echo cons | nc localhost 2181

结果:

 /127.0.0.1:47584[1](queued=0,recved=39,sent=39,sid=0x16cc029862a0003,lop=PING,est=1566595224110,to=30000,lcxid=0x0,lzxid=0xc,lresp=1566595604453,llat=0,minlat=0,avglat=0,maxlat=4)
 /0:0:0:0:0:0:0:1:43856[0](queued=0,recved=1,sent=0)
crst

重置连接统计信息。
示例:

echo crst | nc localhost 2181

结果:

Connection stats reset.
有关Watches的命令
wchs

列出服务器watch的详细信息。
显示带有watch的节点数量。

示例:

echo wchs | nc localhost 2181

结果:

connections watching 1 paths
# 监视器数量为1
Total watches:1
wchc

通过 session 列出服务器 watch 的详细信息,输出session下带有watch的所有节点。可能会影响大量Watches的服务器性能。

示例:

echo wchc | nc localhost 2181

结果:

0x16cc029862a0004
	/zookeeper

我在/zookeeper节点中设置一个watch(监视器),所以显示/zookeeper节点

wchp

通过带有watch的节点路径列出服务器的详细信息。输出带有watch的所有节点下的session信息。可能会影响大量Watches的服务器性能。
示例:

echo wchp | nc localhost 2181

结果:

/zookeeper
	0x16cc029862a0004
有关Monitoring的命令
mntr

列出Java属性格式的服务器统计信息,适合作为监控系统(如Ganglia和Nagios)的源。
示例:

echo mntr | nc localhost 2181

结果:

zk_version	3.4.9-1757313, built on 08/23/2016 06:50 GMT
zk_avg_latency	0 
zk_max_latency	10
zk_min_latency	0
zk_packets_received	1629
zk_packets_sent	1630
zk_num_alive_connections	2
zk_outstanding_requests	0
zk_server_state	standalone
zk_znode_count	4
zk_watch_count	1
zk_ephemerals_count	0
zk_approximate_data_size	29
zk_open_file_descriptor_count	29
zk_max_file_descriptor_count	4096

3.5.0以上的版本会有一个内嵌的web服务,通过访问http://localhost:8080/commands来访问以上的命令列表。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值