咱们在架设好zookeeper服务后,个别会应用监控零碎来对zookeeper的服务状态进行监控,比方grafana,Prometheus等,在这个场景下简略疾速的获取服务状态是很有必要的,所以zookeeper为咱们提供了一些这方面的命令工具,官网文档为:ZooKeeper Commands: The Four Letter Words
监控相干的材料以前我也有写,请看: 察看零碎解决了什么它又须要什么
zookeeper提供的一系列四字(The Four Letter Words)命令,不便咱们跟服务器进行各种交互,来确认服务器以后的工作状况(这也是服务器监控告警的根底),咱们传递四个字母的字符串给zookeeper,zookeeper会返回一些有用的信息.
zookeeper四字命令功能表
命令 | 性能 | |
---|---|---|
conf | 输入相干服务配置的详细信息。 | |
cons | 列出所有连贯到服务器的客户端的齐全的连贯 /会话的详细信息。包含“承受 / 发送”的包数量、会话 id 、操作提早、最初的操作执行等等信息. | |
dump | 列出未经解决的会话和长期节点. | |
envi | 输入对于服务环境的详细信息(区别于 conf命令). | |
reqs | 列出未经解决的申请 | |
ruok | 测试服务是否处于正确状态。如果的确如此,那么服务返回“imok ”,否则不做任何相应. | |
stat | 输入对于性能和连贯的客户端的列表. | |
wchs | 列出服务器 watch的详细信息. | |
wchc | 通过 session列出服务器 watch | 的详细信息,它的输入是一个与watch相干的会话的列表. |
wchp | 通过门路列出服务器 watch的详细信息。它输入一个与 session相干的门路. |
代码演示
上面咱们对zookeeper的The Four Letter Words做一些简略的演示
查看服务状态
[thinktik@ThinkOnline bin]$ echo stat|nc 127.0.0.1 2181stat is not executed because it is not in the whitelist.
默认状况下The Four Letter Words是没有退出白名单的,这意味着你须要将他们退出白名单后能力争取的执行,否则会报错xxx is not executed because it is not in the whitelist.
解决方案很简略,退出这些命令到白名单即可,咱们能够批改zoo.cfg
而后重启zookeeper即可
更多的细节这篇文章也不错:https://blog.csdn.net/Ellen5203/article/details/105706773
批改胜利后咱们就能够失常应用了,上面是一些演示
[thinktik@ThinkOnline bin]$ echo stat|nc 127.0.0.1 2181Zookeeper version: 3.6.2--803c7f1a12f85978cb049af5e4ef23bd8b688715, built on 09/04/2020 12:44 GMTClients: /127.0.0.1:41556[0](queued=0,recved=1,sent=0)Latency min/avg/max: 0/0.0/0Received: 1Sent: 0Connections: 1Outstanding: 0Zxid: 0x5eMode: standaloneNode count: 8
测试是否启动了该Server
,若回复imok
示意曾经启动
[thinktik@ThinkOnline bin]$ echo ruok|nc 127.0.0.1 2181imok
查看连贯到服务器的所有客户端的会话信息
[thinktik@ThinkOnline bin]$ echo cons|nc 127.0.0.1 2181 /127.0.0.1:41566[0](queued=0,recved=1,sent=0)
所以The Four Letter Words还是在服务监控畛域很实用的,残余的命令我就不一一列举了,大家有须要时本人钻研.
同时zkServer自身提供的一些命令参数也不错,放在这里给大家参考.
zkServer 小技巧
查看服务器状态
[thinktik@ThinkOnline bin]$ ./zkServer.sh status/home/thinktik/env/jdk11/bin/javaZooKeeper JMX enabled by defaultUsing config: /home/thinktik/env/zookeeper/bin/../conf/zoo.cfgClient port found: 2181. Client address: localhost. Client SSL: false.Mode: standalone
启动服务器
[thinktik@ThinkOnline bin]$ ./zkServer.sh start/home/thinktik/env/jdk11/bin/javaZooKeeper JMX enabled by defaultUsing config: /home/thinktik/env/zookeeper/bin/../conf/zoo.cfgStarting zookeeper ... STARTED
敞开服务器
[thinktik@ThinkOnline bin]$ ./zkServer.sh stop/home/thinktik/env/jdk11/bin/javaZooKeeper JMX enabled by defaultUsing config: /home/thinktik/env/zookeeper/bin/../conf/zoo.cfgStopping zookeeper ... STOPPED
本文原创链接: zookeeper The Four Letter Words Commands