一、概述

zooKeeper支持某些特定的四字命令与其的交互。它们大多是查询命令,用来获取 zooKeeper服务的当前状态及相关信息。用户在客户端可以通过 telnet 或 nc 向zooKeeper提交相应的命令。

zooKeeper常用四字命令如下:

  • conf:输出相关服务配置的详细信息。比如端口、zk数据及日志配置路径、最大连接数,session超时时间、serverId等
  • cons:列出所有连接到这台服务器的客户端连接/会话的详细信息。包括“接受/发送”的包数量、session id 、操作延迟、最后的操作执行等信息
  • crst:重置当前这台服务器所有连接/会话的统计信息
  • dump:列出未经处理的会话和临时节点
  • envi:输出关于服务器的环境详细信息
  • ruok:测试服务是否处于正确运行状态。如果正常返回"imok",否则返回空
  • stat:输出服务器的详细信息:接收/发送包数量、连接数、模式(leader/follower)、节点总数、延迟。 所有客户端的列表
  • srst:重置server状态
  • wchs:列出服务器watches的简洁信息:连接总数、watching节点总数和watches总数
  • wchc:通过session分组,列出watch的所有节点,它的输出是一个与 watch 相关的会话的节点列表
  • mntr:列出集群的健康状态。包括“接受/发送”的包数量、操作延迟、当前服务模式(leader/follower)、节点总数、watch总数、临时节点总数

二、nc命令工具安装

在root用户下执行如下命令即可:

yum install -y nc

三、四字监控命令的使用

【a】conf命令

输出相关服务配置的详细信息。比如端口、zk数据及日志配置路径、最大连接数,session超时时间、serverId等。

[root@localhost bin]# echo conf| nc 192.168.179.133 2181
clientPort=2181  #客户端端口号
dataDir=/zookeeper/data/version-2  #数据快照文件目录 默认情况下100000次事务操作生成一次
快照
dataLogDir=/zookeeper/log/version-2  #事务日志文件目录,生产环境中放在独立的磁盘上
tickTime=2000  #服务器之间或客户端与服务器之间维持心跳的时间间隔(以
毫秒为单位)
maxClientCnxns=60  #最大连接数
minSessionTimeout=4000 #最小session过期时间  minSessionTimeout=tickTime*2
maxSessionTimeout=40000   #最大session过期时间  maxSessionTimeout=tickTime*20
serverId=3   #服务器编号
initLimit=10   #集群中的follower服务器(F)与leader服务器(L)之间初始连接
时能容忍的最多心跳数
syncLimit=5   #集群中的follower服务器(F)与leader服务器(L)之间 请求和
应答之间能容忍的最多心跳数
electionAlg=3   #选举算法
electionPort=3888   #选举端口
quorumPort=2888   #数据通信端口
peerType=0   #是否为观察者 1为观察者

【b】cons命令

列出所有连接到这台服务器的客户端连接/会话的详细信息。包括“接受/发送”的包数量、session id 、操作延迟、最后的操作执行等信息。

[root@localhost bin]# echo cons | nc 192.168.179.133 2181/127.0.0.1:43816[1](queued=0,recved=3,sent=3,sid=0x3000004c3f0000a,lop=CREA,est=1609234625852,to=30000,lcxid=0x1,lzxid=0x50000005b,lresp=24339919,llat=2,minlat=0,avglat=3,maxlat=7)/192.168.179.133:59288[0](queued=0,recved=1,sent=0)

属性说明:

  • ip:ip地址
  • port:端口号
  • queued:等待被处理的请求数,请求缓存在队列中
  • received:收到的包数
  • sent:发送的包数
  • sid:会话id
  • lop:最后的操作 GETD-读取数据 DELE-删除数据 CREA-创建数据
  • est:连接时间戳
  • to:超时时间
  • lcxid:当前会话的操作id
  • lzxid:最大事务id
  • lresp:最后响应时间戳
  • llat:最后/最新 延时
  • minlat:最小延时
  • maxlat:最大延时
  • avglat:平均延时

【c】crst命令

重置当前这台服务器所有连接/会话的统计信息。

[root@localhost bin]# echo cons | nc 192.168.179.133 2181/192.168.179.133:59290[0](queued=0,recved=1,sent=0)/127.0.0.1:43816[1](queued=0,recved=16,sent=16,sid=0x3000004c3f0000a,lop=PING,est=1609234625852,to=30000,lcxid=0x1,lzxid=0xffffffffffffffff,lresp=24470010,llat=0,minlat=0,avglat=0,maxlat=7)[root@localhost bin]# echo crst | nc 192.168.179.133 2181
Connection stats reset.
[root@localhost bin]# echo cons | nc 192.168.179.133 2181   #再次统计客户端连接/会话的详细信息/127.0.0.1:43816[1](queued=0,recved=1,sent=1,sid=0x3000004c3f0000a,lop=PING,est=1609234625852,to=30000,lzxid=0xffffffffffffffff,lresp=24490016,llat=0,minlat=0,avglat=0,maxlat=0)/192.168.179.133:59294[0](queued=0,recved=1,sent=0)

如上可见,服务器的所有连接以及会话统计信息都重置成功。

【d】dump命令

列出未经处理的会话和临时节点。

[zk: localhost:2181(CONNECTED) 3] create -e /node11 "node11"  #创建一个临时节点
Created /node11[root@localhost bin]# echo dump | nc 192.168.179.133 2181
SessionTracker dump:
org.apache.zookeeper.server.quorum.LearnerSessionTracker@5c2461e9
ephemeral nodes dump:
Sessions with Ephemerals (1):
0x3000004c3f0000a:   #会话ID/node11   #临时节点路径

【e】envi命令

输出关于服务器的环境详细信息。

[root@localhost bin]# echo envi | nc 192.168.179.133 2181
Environment:
zookeeper.version=3.4.14-4c25d480e66aadd371de8bd2fd8da255ac140bcf, built on 03/06/2019 16:18 GMT
host.name=localhost
java.version=1.8.0_161
java.vendor=Oracle Corporation
java.home=/usr/local/java/jdk1.8.0_161/jre
java.class.path=/usr/local/zookeeper-3.4.14/bin/../zookeeper-server/target/classes:/usr/local/zookeeper-3.4.14/bin/../build/classes:/usr/local/zookeeper-3.4.14/bin/../zookeeper-server/target/lib/*.jar:/usr/local/zookeeper-3.4.14/bin/../build/lib/*.jar:/usr/local/zookeeper-3.4.14/bin/../lib/slf4j-log4j12-1.7.25.jar:/usr/local/zookeeper-3.4.14/bin/../lib/slf4j-api-1.7.25.jar:/usr/local/zookeeper-3.4.14/bin/../lib/netty-3.10.6.Final.jar:/usr/local/zookeeper-3.4.14/bin/../lib/log4j-1.2.17.jar:/usr/local/zookeeper-3.4.14/bin/../lib/jline-0.9.94.jar:/usr/local/zookeeper-3.4.14/bin/../lib/audience-annotations-0.5.0.jar:/usr/local/zookeeper-3.4.14/bin/../zookeeper-3.4.14.jar:/usr/local/zookeeper-3.4.14/bin/../zookeeper-server/src/main/resources/lib/*.jar:/usr/local/zookeeper-3.4.14/bin/../conf:.:/usr/local/java/jdk1.8.0_161/lib:/usr/local/java/jdk1.8.0_161/jre/lib
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-862.el7.x86_64
user.name=root
user.home=/root
user.dir=/usr/local/zookeeper-3.4.14/bin

属性说明如下:

  • zookeeper.version:版本
  • host.name:host信息
  • java.version:java版本
  • java.vendor:供应商
  • java.home:运行环境所在目录
  • java.class.path:classpath
  • java.library.path:第三方库指定非java类包的位置(如:dll,so)
  • java.io.tmpdir:默认的临时文件路径
  • java.compiler:JIT 编译器的名称
  • os.name:Linux
  • os.arch:amd64
  • os.version:3.10.0-514.el7.x86_64
  • user.name:zookeeper
  • user.home:/home/zookeeper
  • user.dir:/home/zookeeper/zookeeper2181/bin

【f】ruok命令

【are you ok?】测试服务是否处于正确运行状态。如果正常返回"imok",否则返回空。

[root@localhost bin]# echo ruok | nc 192.168.179.133 2181
imok

【g】stat命令

输出服务器的详细信息:接收/发送包数量、连接数、模式(leader/follower)、节点总数、延迟。 所有客户端的列表。

[root@localhost bin]# echo stat | nc 192.168.179.133 2181
Zookeeper version: 3.4.14-4c25d480e66aadd371de8bd2fd8da255ac140bcf, built on 03/06/2019 16:18 GMT   #版本
Clients:   #每个连接客户端的会话信息/127.0.0.1:43816[1](queued=0,recved=42,sent=42)/192.168.179.133:59304[0](queued=0,recved=1,sent=0)Latency min/avg/max: 0/0/11  #延时
Received: 2368  #收到的包
Sent: 2367  #发送的包
Connections: 2  #当前连接数
Outstanding: 0  #当前请求堆积数
Zxid: 0x50000005c  #最大事务ID
Mode: follower  #当前节点在集群中的角色
Node count: 29  #节点数

【h】srst命令

重置server状态。

[root@localhost bin]# echo stat | nc 192.168.179.133 2181  #重置前
Zookeeper version: 3.4.14-4c25d480e66aadd371de8bd2fd8da255ac140bcf, built on 03/06/2019 16:18 GMT
Clients:/127.0.0.1:43816[1](queued=0,recved=42,sent=42)/192.168.179.133:59304[0](queued=0,recved=1,sent=0)Latency min/avg/max: 0/0/11
Received: 2368
Sent: 2367
Connections: 2
Outstanding: 0
Zxid: 0x50000005c
Mode: follower
Node count: 29[root@localhost bin]# echo srst | nc 192.168.179.133 2181   #重置后
Server stats reset.
[root@localhost bin]# echo stat | nc 192.168.179.133 2181
Zookeeper version: 3.4.14-4c25d480e66aadd371de8bd2fd8da255ac140bcf, built on 03/06/2019 16:18 GMT
Clients:/127.0.0.1:43816[1](queued=0,recved=56,sent=56)/192.168.179.133:59308[0](queued=0,recved=1,sent=0)Latency min/avg/max: 0/0/0
Received: 1
Sent: 1
Connections: 2
Outstanding: 0
Zxid: 0x50000005c
Mode: follower
Node count: 29

如上可见,重置完成功后,服务器相关的延时等信息都重置了。

【i】wchs命令

列出服务器watches的简洁信息:连接总数、watching节点总数和watches总数。

[zk: localhost:2181(CONNECTED) 11] get /node1 watch  #注册一个watcher监听[root@localhost bin]# echo wchs | nc 192.168.179.133 2181
1 connections watching 1 paths
Total watches:1

属性说明:

  • connectsions:连接数
  • watch-paths:watch节点数
  • watchers:watcher数量

【j】mntr命令

列出集群的健康状态。包括“接受/发送”的包数量、操作延迟、当前服务模式(leader/follower)、节点总数、watch总数、临时节点总数。

[root@localhost bin]# echo mntr | nc 192.168.179.133 2181
zk_version  3.4.14-4c25d480e66aadd371de8bd2fd8da255ac140bcf, built on 03/06/2019 16:18 GMT  #zk版本号
zk_avg_latency  0   #平均延时
zk_max_latency  3   #最大延时
zk_min_latency  0   #最小延迟
zk_packets_received 48   #收到的包数
zk_packets_sent 48   #发送的包数
zk_num_alive_connections    2   #连接数
zk_outstanding_requests 0   #堆积请求数
zk_server_state follower   #leader/follower 状态
zk_znode_count  29   #节点数量
zk_watch_count  2   #当前注册的watcher数量
zk_ephemerals_count 1   #临时节点个数(znode)
zk_approximate_data_size    482   #数据长度
zk_open_file_descriptor_count   33   #打开的文件描述符数量
zk_max_file_descriptor_count    65536   #最大文件描述符数量
zk_fsync_threshold_exceed_count 0   #

以上就是关于常见zookeeper中四字命令的使用总结。

Zookeeper四字监控命令使用总结相关推荐

  1. zookeeper四字监控命令

    文章目录 zookeeper四字监控命令 什么是四字监控命令 配置监控属性 安装nc conf命令 cons命令 crst命令 dump命令 envi命令 ruok命令 stat命令 srst命令 w ...

  2. 5、zookeeper四字监控命令/配置属性

    1.zookeeper四字监控命令介绍 zookeeper支持某些特定的四字命令与其的交互.它们大多数是查询命令,用来获取zookeeper服务的当前状态及相关信息.用户再客户端可以通过telnet或 ...

  3. Zookeeper常用命令大全之四字监控命令

    文章目录 四字监控命令 0. 官方文档 1. conf命令 2. cons命令 3. crst命令 4. dump命令 5. envi命令 6. ruok命令 7. stat命令 8. srst命令 ...

  4. 4-5 zookeeper四字命令

    zk四字命令 Four Letter Words 四字命令简介 zk可以通过它自身提供的简写命令来和服务器进行交互 zk通过简写的命令和服务器进行交互,进行交互之后可以提供一些服务器的状态信息.环境变 ...

  5. zookeeper 四字命令的使用

    Linux中的命令NetCat有"瑞士军刀"的美誉.我们可以通过nc命令查看Zookeeper的一行属性数据.在Zookeeper中有很多四字命令,汇总如下: 序号 使用命令 输出 ...

  6. 开启 Zookeeper 四字命令(is not executed because it is not in the whitelist)

    有时候我们需要使用四字命令查看 ZK 的一些信息,如果没有配置开启,救会出现这样的异常: ➜ bin echo mntr | nc localhost 2181 mntr is not execute ...

  7. ZooKeeper - 四字命令解析

    四字命令 操作方式 echo "ruok" | nc 192.168.0.106 2181 cons 输出当前服务器的所有客户端的连接信息 NIOServerCnxn代码: pri ...

  8. zookeeper四字命令_java培训

    zookeeper支持某些特定的四字命令,他们大多是用来查询ZK服务的当前状态及相关信息的, 通过telnet或nc向zookeeper提交相应命令,如:echo ruok | nc 127.0.0. ...

  9. Zookeeper四字命令

    zookeeper 支持某些特定的四字命令与其交互,用户获取 zookeeper 服务的当前状态及相关信息,用户在客户端可以通过 telenet 或者 nc(netcat) 向 zookeeper 提 ...

  10. zookeeper命令行(zkCli.shzkServer.sh)使用及四字命令

    zookeeper提供了很多方便的功能,方便我们查看服务器的状态,增加,修改,删除数据(入口是zkServer.sh和zkCli.sh). 还提供了一系列四字命令,方便我们跟服务器进行各种交互,来确认 ...

最新文章

  1. Druid:一个用于大数据实时处理的开源分布式系统——大数据实时查询和分析的高容错、高性能开源分布式系统...
  2. OpenCV中BriefDescriptorExtractor
  3. Docker 镜像之存储管理
  4. 《剑指offer》-斐波那契数列
  5. Unable to simultaneously satisfy constraints.
  6. 《 Docker 进阶与实战 》 读书笔记
  7. 土木工程计算机仿真学科未来前景,同济大学土木工程学院土木工程计算机仿真2010级学历教育硕士--培养方案...
  8. django多语言支持
  9. 功能安全 李艳文_中国汽车功能安全测试库首次成果发布会成功召开
  10. div超出部分点点显示
  11. Python: TensorFlow2.4与CUDA11.1缺失 ‘cusolver64_10.dll‘动态库
  12. OpenGL基础36:天空盒
  13. 单机手机消消乐php游戏源码,JS叠房子消消乐小游戏代码
  14. 全网首发:跟踪分析This parser does not support specification “null“ version “null“
  15. python-seleium实现珞珈在线网课辅助观看功能
  16. 使用命令行连接MySQL数据库
  17. html的网页主题标记是什么,html标记是什么
  18. 红米9a手动root方法
  19. CTeX:中英文混排无法正常换行+字体调整+行距调整
  20. Ubuntu硬盘挂载

热门文章

  1. vue移动端下拉切换页面_详解vue移动端 下拉刷新
  2. 极客大学产品经理训练营:数据分析 第16课总结
  3. java 遍历文件夹 性能_Java函数式编程(十一):遍历目录
  4. 释放空间后将指针置空
  5. python编写命令行框架_Python2和3的面向命令的命令行框架是什么?
  6. 现代通信原理A.3:随机信号的功率谱估计
  7. android studio | openGL es 3.0增强现实(AR)开发 (1) 建立一个openGL es 3.0开发环境
  8. android studio for android learning (八)开机启动界面splashActivity
  9. Cost function of Logistic Regression and Neural Network
  10. shiro(SpringBoot+SpringMVC+Mybatis+Shrio):丰富的登录模块附有GIF动图,博主可免费答疑