通过命令行操作zookeeper
1. 启动zk客户端
zkCli.sh
2. 节点的命令
创建节点命令
- create [-s] [-e] 节点路径 节点内容
-s和-e是一个可选项,可以加也可以不加 - -s代表的是创建的字节点需不需要带序号,如果加上-s的话,创建的子节点会自动在节点后拼接一个编号
-e代表的是否创建一个临时节点,如果不带-e就是永久节点
[zk: localhost:2181(CONNECTED) 13] create -e -s /test tt
Created /test0000000015
[zk: localhost:2181(CONNECTED) 10] create -e /test tt
Created /test
zk节点分类
- 临时带序号节点,临时不带序号节点:临时节点创建的客户端和服务端断开连接之后,节点会自动删除
- 永久带序号节点,永久不带序号节点:节点只要不手动删除,会一直存在
修改节点的数据
- set 节点路径 节点数据
[zk: localhost:2181(CONNECTED) 17] set /test whoareyou
删除节点
- delete 节点路径
只能删除空节点(没有子节点的节点)
[zk: localhost:2181(CONNECTED) 19] delete /test
- rmr 节点路径
[zk: localhost:2181(CONNECTED) 11] delete /a0000000017
Node not empty: /a0000000017
[zk: localhost:2181(CONNECTED) 12] rmr /a0000000017
查询节点数据/查询节点的子节点
- ls/ls2 节点路径(最好是绝对路径)
[zk: localhost:2181(CONNECTED) 15] ls /test
[]
[zk: localhost:2181(CONNECTED) 16] ls2 /test
[]
cZxid = 0x3000000c1
ctime = Tue Sep 06 11:40:54 CST 2022
mZxid = 0x3000000c1
mtime = Tue Sep 06 11:40:54 CST 2022
pZxid = 0x3000000c1
cversion = 0
dataVersion = 0
aclVersion = 0
ephemeralOwner = 0x18310a10cbd000d
dataLength = 2
numChildren = 0
- get 节点路径(查询节点数据)
[zk: localhost:2181(CONNECTED) 2] get /test
test
cZxid = 0x3000001a2
ctime = Tue Sep 06 12:00:14 CST 2022
mZxid = 0x3000001a2
mtime = Tue Sep 06 12:00:14 CST 2022
pZxid = 0x3000001a2
cversion = 0
dataVersion = 0
aclVersion = 0
ephemeralOwner = 0x18310a10cbd0018
dataLength = 4
numChildren = 0
监听器的命令----相当于是zk的监听通知机制的使用方式---只能使用一次
- 监听节点内容变化(get 节点路径 watch)
get /test watch
- 监听节点子节点个数变化(ls 节点路径 watch)
ls /a0000000021 watch
本文来自博客园,作者:jsqup,转载请注明原文链接:https://www.cnblogs.com/jsqup/p/16661200.html