Zookeeper 从入门到入土②:常用命令
1. ls path [watch]
查看某个路径下有多少个节点
1 | [zk: localhost:2181(CONNECTED) 2] ls / |
2. ls2 path [watch]
= ls + stat
3. get path [watch]
获取值
1 | [zk: localhost:2181(CONNECTED) 10] get /test |
4. stat path [watch]
1 | [zk: localhost:2181(CONNECTED) 4] stat / |
- cZxid:Create ZXID,表示节点被创建时的事务 ID。
- ctime:Create Time,表示节点创建时间。
- mZxid:Modified ZXID,表示节点最后⼀次被修改时的事务 ID。
- mtime:Modified Time,表示节点最后⼀次被修改的时间。
- pZxid:该节点的⼦节点列表最后⼀次被修改时的事务 ID。只有⼦节点列表变更才会更新 pZxid, ⼦节点内容变更不会更新。
- cversion:⼦节点的版本号。
- dataVersion:内容版本号。
- aclVersion:标识 acl 版本
- ephemeralOwner:创建该临时节点时的会话 sessionID,如果是持久性节点那么值为 0
- dataLength:数据⻓度。
- numChildren:直系⼦节点数。
5. create [-s] [-e] path data acl
-s: sequence。顺序节点,为节点自动添加
1 | [zk: localhost:2181(CONNECTED) 15] create -s /test/sec seq |
-e: ephemeral。Session 创建临时节点
- 非持久化,临时节点
- 客户端与服务端之间维持心跳联系,无心跳则删除
- ephemeralOwner 为非 0x0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15[zk: localhost:2181(CONNECTED) 12] create -e /test/tmp test-data
Created test/tmp
[zk: localhost:2181(CONNECTED) 13] get /test/tmp
test-data
cZxid = 0x9
ctime = Mon May 27 14:26:43 CST 2019
mZxid = 0x9
mtime = Mon May 27 14:26:43 CST 2019
pZxid = 0x9
cversion = 0
dataVersion = 0
aclVersion = 0
ephemeralOwner = 0x16adeeddbe80003
dataLength = 9
numChildren = 0
6. set path data [version]
dataVersion 会 +1
1 | [zk: localhost:2181(CONNECTED) 23] set /test new-test-data |
version: 验证版本号
若填写的版本号与当前版本号不一致则 set 失败
1 | [zk: localhost:2181(CONNECTED) 25] set /test new-test-data-2 1 |
7. delete path [version]
1 | [zk: localhost:2181(CONNECTED) 31] delete /test/sec |
version: 验证版本号
若填写的版本号与当前版本号不一致则 delete 失败( 同 set)