注:此处以kafka自带的zookeeper客户端为例
- 连接Zookeeper客户端
zookeeper-shell.sh localhost:2183
- 显示所有相关命令
h
如下图:- 查看某个节点下的所有子节点信息
ls path
path为你需要查看节点的绝对路径,需以/开始。其中 ls / 表示列出根节点下所有的子节点信息。
- 查看节点状态信息
stat /brokers
如下图:stat命令显示的数据项说明:
- czxid 创建该节点的事物ID
- ctime 创建该节点的时间
- mZxid 更新该节点的事物ID
- mtime 更新该节点的时间
- pZxid 操作当前节点的子节点列表的事物ID(这种操作包含增加子节点,删除子节点)
- cversion 当前节点的子节点版本号
- dataVersion 当前节点的数据版本号
- aclVersion 当前节点的acl权限版本号
- ephemeralowner 当前节点的如果是临时节点,该属性是临时节点的事物ID
- dataLength 当前节点的d的数据长度
- numchildren 当前节点的子节点个数
- 获取节点数据内容
get /brokers/topics/test1/partitions/0/state
如下图:- 查看节点数据内容和状态信息
ls2 path
ls2相当于是ls和stat两个命令的结合
如下图:- 创建节点
create [-s] [-e] path data acl
如下图:
- -s 表示是顺序节点
- -e 标识是临时节点
- path 节点路径
- data 节点数据
- acl 节点权限
注:临时节点在客户端结束与服务器的会话后,自动消失
- 退出客户端
quit
- 修改节点数据内容
#如果指定版本,需要和当前节点的数据版本一致
set path data [version] :
如下图:将节点node_1的内容从111修改为222
- 删除节点
#如果有子节点要先删除子节点
delete path [version]
#删除当前路径节点及其所有子节点
rmr path
- 设置节点配额
setquota -n|-b val path
-n 是限制子节点个数 -b是限制节点数据长度。超出配额后,ZooKeeper不会报错,而是在日志信息中记录
- 查看zookeeper日志
tail zookeeper.out
- 查看节点配额信息
listquota path
- 删除节点配额
delquota [-n|-b] path
- 连接或关闭其他zookeeper服务器
#在当前连接中连接其他的ZooKeeper服务器和关闭服务器
#连接
connect host:port
#关闭
close
- 查看或执行当前会话历史命令
#查看客户端这次会话所执行的所有命令
history
#执行指定历史命令
redo cmdno