关闭

分布式服务框架ZooKeeper:四字命令

标签: zookeeper
802人阅读 评论(0) 收藏 举报
分类:

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

四字命令

ZooKeeper 四字命令如下:

类别 命令 描述
服务器状态 ruok 测试服务是否处于正确状态。如果服务器正在运行且未出错,则返回“imok ”,否则返回空
conf 输出相关服务配置的详细信息(根据配置文件zoo.cfg)。3.3.0版本引入。
envi 输出关于服务环境的详细信息(区别于 conf命令),包括Zookeeper版本,Java版本和其他系统属性
srvr 输出服务器的统计信息,包括延迟统计,znode数量和服务器运行模式(standalone/leader/followewr)。3.3.0版本引入。
stat 输出的统计信息和已连接的客户端
srst 重置服务器的统计。
isro 显示服务器所属模式,只读(ro)模式或读写(rw)模式
客户端连接 dump 列出集合中所有会话和临时znode。这个命令只能在leader节点上有用。参考srvr命令
cons 列出所有连接到这台服务器的客户端详细信息。包括”接受/发送”的包数量、会话id、操作延迟、最后的操作执行等。3.3.0版本引入
crst 重置所有连接统计信息。3.3.0版本引入
观察 wchs 列出服务器上所有watch的详细信息。3.3.0版本引入
wchc 通过session列出服务器watch的详细信息,它的输出是一个与watch相关的会话的列表。注意:如果watch数量较多,此命令会影响服务器的性能。3.3.0版本引入
wchp 通过znode路径列出服务器上所有watch。它输出一个与session相关的路径。注意:如果watch数量较多,此命令会影响服务器的性能。3.3.0版本引入
监控 mntr 按Java属性格式列出服务器的统计信息,输出可用于检测集群健康状态的变量列表。适合用做Ganglia和Nagios等监控系统的信息源。3.4.0版本引入.
注:除了mntr外,还可以通过JMX来提供Zookeeper服务器的统计信息。在安装目录src/contrib子目录下提供了相关监控工具和方法

使用

通过Linux中的netcat(nc)工具来执行上面的命令。

ruok

echo ruok | nc 127.0.0.1 2180

如果服务器没问题,则会返回‘imok’的信息。如下:

mungo@ubuntu:bin$ echo ruok | nc 127.0.0.1 2180
imok

conf和envi

echo conf | nc 127.0.0.1 2180
echo conf | nc 127.0.0.1 2181

这里写图片描述
由此可见,conf命令输出的是zoo.cfg配置文件里配置的一些Zookeeper的配置信息。

echo envi | nc 127.0.0.1 2180
echo envi | nc 127.0.0.1 2181

这里写图片描述
都是输出服务器相关的信息。通过上面对比可以看出不同,conf 命令输出的是Zookeeper的相关配置信息,而envi输出的是服务器服务环境的详细信息。

srvr

输出服务器的统计信息。

echo srvr | nc 127.0.0.1 2180

这里写图片描述
可以看出这台Zookeeper服务器的运行模式是follower.

echo srvr | nc 127.0.0.1 2181

这里写图片描述
可以看出这台Zookeeper服务器的运行模式是leader.
因为我已伪集群的模式配置了两台Zookeeper,所以standalone模式下就不截图输出了。已单机模式配置启动,该命令的Mode值就会是standalone。

stat

输出的统计信息和已连接的客户端。

echo stat | nc 127.0.0.1 2180

这里写图片描述

srst

重置服务器的统计。

echo srst | nc 127.0.0.1 2180

这里写图片描述
以上为先重置服务器统计,然后查询状态,可以和上面的stat命令输出做比较,会发现Received和Send信息被重置了。
这个命令要区分下crst命令,重置的内容不一样。

isro

显示服务器所属模式,只读(ro)模式或读写(rw)模式。

echo isro | nc 127.0.0.1 2180

输出

mungo@ubuntu:/usr/local/zookeeper-3.4.9-01/bin$ echo isro | nc 127.0.0.1 2180
rw

dump

列出集合中所有会话和临时znode。注意,该命令只在leader节点下有效。
根据上面srvr命令可以知道,2180端口是follower节点。

echo dump | nc 127.0.0.1 2180

执行结果如下:

这里写图片描述
根据上面srvr命令可以知道,2181端口是leader节点。

echo dump | nc 127.0.0.1 2181

执行结果如下:
这里写图片描述

cons

列出所有连接到这台服务器的客户端详细信息。
先在2180和2181两台服务器上分别连接一个客户端。

./zkCli.sh -server 127.0.0.1:2180
./zkCli.sh -server 127.0.0.1:2181

然后查看通过cons查看客户端详情。

echo cons | nc 127.0.0.1 2180

这里写图片描述

可以看出,cons命令输出客户端包括”接受/发送”的包数量、会话id、操作延迟等。

crst

重置所有连接统计信息。

echo crst | nc 127.0.0.1 2180

在2180上先连接了两个客户端。然后执行crst操作后对比操作前后的数据如下:
这里写图片描述

mntr

按Java属性格式列出服务器的统计信息,监控服务器状态的,这里只列出数据结果供参考。

echo mntr | nc 127.0.0.1 2180

这里写图片描述

wchs、wchc、wchp

这几个命令是和watch相关的, 因目前都是通过zkCli连接的,没有watch,所以只写出使用方法。如下:

echo wchs | nc 127.0.0.1 2180
echo wchc | nc 127.0.0.1 2180
echo wchp | nc 127.0.0.1 2180
1
0
查看评论

zookeeper四字命令

zookeeper四字命令 ZooKeeper3.4.6支持某些特定的四字命令字母与其的交互。它们大多是查询命令,用来获取 ZooKeeper 服务的当前状态及相关信息。用户在客户端可以通过 telnet 或 nc 向 ZooKeeper 提交相应的命令。由于telnet不安全,操作系统默认不开启...
  • u013673976
  • u013673976
  • 2015-08-05 00:22
  • 3470

【Zookeeper】常用监控“四字命令”

Four-Letter Words Now that we have our server configured and up and running, we need to monitor it. That is where four-letter words come in. We ...
  • MichaelJY1991
  • MichaelJY1991
  • 2015-12-09 10:32
  • 635

ZooKeeper 常用四字命令

1、ZooKeeper 常用四字命令:       ZooKeeper 支持某些特定的四字命令字母与其的交互。它们大多是查询命令,用来获取 ZooKeeper 服务的当前状态及相关信息。用户在客户端可以通过 telnet 或 nc 向 ZooKee...
  • u010523770
  • u010523770
  • 2017-03-07 16:27
  • 560

二、分布式服务框架Zookeeper学习笔记

二、分布式服务框架Zookeeper学习笔记标签
  • sinat_33761963
  • sinat_33761963
  • 2016-07-12 20:50
  • 255

详解 分布式服务框架 Zookeeper

Zookeeper 分布式服务框架是 Apache Hadoop 的一个子项目,它主要是用来解决分布式应用中经常遇到的一些数据管理问题,如:统一命名服务、状态同步服务、集群管理、分布式应用配置项的管理等。本文将从使用者角度详细介绍 Zookeeper 的安装和配置文件中各个配置项的意义,以及分析 ...
  • u011130752
  • u011130752
  • 2016-12-12 15:51
  • 852

zookeeper-03-常用配置和四字命令

默认配置文件示例 其他常用配置 常用四字命令 1 默认配置文件示例# 毫秒数,指定zookeeper中的最小时间单元大小 # 许多属性都是该属性的N倍 tickTime=2000# 此处的10,表示tickTime的10倍 initLimit=10 # The number of ticks tha...
  • hylexus
  • hylexus
  • 2016-11-26 16:45
  • 593

zookeeper命令行(zkCli.sh&zkServer.sh)使用及四字命令

zookeeper提供了很多方便的功能,方便我们查看服务器的状态,增加,修改,删除数据(入口是zkServer.sh和zkCli.sh)。 还提供了一系列四字命令,方便我们跟服务器进行各种交互,来确认服务器当前的工作情况(这也是服务器监控告警的基础)。 本文所讲的zkCli.sh和zkServe...
  • linux_bug
  • linux_bug
  • 2015-09-25 09:31
  • 23928

java分布式服务框架:zookeeper+dubbo+springmvc集成

dubbo springmvc
  • kidoo1012
  • kidoo1012
  • 2017-03-01 09:15
  • 8042

分布式服务框架原理与实践读书笔记

1.传统垂直应用架构:LAMP、MVC及早期的EJB随着业务不断发展和规模的扩大,存在的几个挑战 1)复杂应用的开发维护成本变高,部署效率逐渐降低 2)团队协作效率差,部分公共功能重复开发,代码重复率居高不下 3)系统可靠性变差 4)维护和定制困难 5)新功能上线周期变长 解决上面挑战的...
  • u014389822
  • u014389822
  • 2016-07-07 00:40
  • 1945

分布式服务框架的4项特性

原文地址 :http://timyang.net/distributed/service-architecture/ 在移动及云时代,尽管大部分可扩展的问题可以通过云平台解决,但是服务本身的扩展性挑战仍然存在。比如一个新的项目,用PHP或JSP实现了基本功能,部署在Apache...
  • xinxing__8185
  • xinxing__8185
  • 2015-10-16 09:06
  • 605