zookeeper常见的操作命令

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了zookeeper常见的操作命令相关的知识,希望对你有一定的参考价值。

ls & ls2 命令

ls # 查看当前目录节点 ls / 查看根目录的子节点
如下,/ 下有一个子节点
技术图片

ls /zookeeper #查看/zookeeper下接子节点

ls / watch #watch 是注册监听的意思,根目录发生了变化,zookeeper才会通知,不注册是不会通知的。这个是监听子节点的变化(路径的变化),监听也只是仅一次有效,

我们对 / 进行了监听, 我们在“/”下创建 lxp子节点的时候会被告知,123是 lxp节点储存的内容
技术图片

ls2 查看节点的详细信息
ls2 /lxp 查看详细的节点信息,查看数据的详情
技术图片

create命令

Create /tt123 abcdef #我们创建节点的时候,要写节点的全路径,后边要写上该节点存储的内容(abcdef)。
-s 创建一个带序号的节点,并且这个序号是全局递增的,
技术图片
序列号的作用:在分布式系统中,序列号可以被用于为所有的事件进行全局排序,这样客户端可以通过序列号判断事件的顺序,就是在client连接的时候,根据序号可以看出哪个客户端先建立的链接

-e 是创建短暂节点,client与zk断开链接后节点会自动删除

create -e /lxp 123 在 服务器动态上下线的时候会用到

获取节点数据get 命令:

技术图片

监听节点数据的变化 get /lxp watch

1、
技术图片

2、
技术图片
3、
技术图片
4、
技术图片

监听功能仅有效一次,上边我们已经对“/lxp” 进行监听了,当我们把/lxp set为123的时候已经对client进行告知了,但是当我们再次进行修改的时候,把 “/lxp” set 为“456”的时候,就不会在进行告知了,没有watcher了,需要在进行注册的时候,才会被重新监听。

修改节点的值:set 命令

技术图片
set /lxp “liuxipeng”
技术图片

删除节点: delete命令

技术图片

递归删除:rmr命令

技术图片

zk节点信息的解释(了解)

[zk: localhost:2181(CONNECTED) 4] ls2 /
[zookeeper, lxp]
cZxid = 0x0 #创建节点的事务zxid (zxid是事务id)
ctime = Thu Jan 01 08:00:00 CST 1970 #节点创建时间
mZxid = 0x0 #最后一次更新的事务zxid
mtime = Thu Jan 01 08:00:00 CST 1970 #最后一次更新的时间
pZxid = 0x300000010 #最后一次更新子节点的事务zxid
cversion = 12 #子节点变化号,znode子节点修改的次数
dataVersion = 0 数据变化号,变化了多少版
aclVersion = 0 #访问控制列表的变化号,变了多少次
ephemeralOwner = 0x0 # 如果是临时节点为session id,如果不是临时节点为0
dataLength = 0 #znode数据的长度
numChildren = 2 #子节点的数量

以上是关于zookeeper常见的操作命令的主要内容,如果未能解决你的问题,请参考以下文章

Zookeeper3.5.7版本——客户端命令行操作(监听器原理)

zookeeper入门-Zookeeper命令行操作

Zookeeper服务常用的操作命令

zookeeper的shell操作

zookeeper-应用场景与操作

ZooKeeper客户端命令行操作