进入 ZooKeeper 安装文件夹的 bin 目录,执行以下命令连接 ZooKeeper 服务,连接之前首选要确定 ZooKeeper 服务已经成功启动:
./zkCli.sh -server 127.0.0.1:2181
-
查看命令:
help
-
创建节点:
create
通过 create 命令在根目录创建 node1 节点,与它关联的字符串是 "node1"
[zk: 127.0.0.1:2181(CONNECTED) 34] create /node1 “node1”
通过 create 命令在 node1 目录创建 node1 节点,与它关联的内容是数字 123
[zk: 127.0.0.1:2181(CONNECTED) 1] create /node1/node1.1 123
Created /node1/node1.1
- 更新节点的内容:
set
[zk: 127.0.0.1:2181(CONNECTED) 11] set /node1 "set node1"
- 获取节点的数据:
get
get 命令可以获取指定节点的数据内容和节点状态
get node1
cZxid = 0x47
ctime = Sun Jan 20 10:22:59 CST 2019
mZxid = 0x4b
mtime = Sun Jan 20 10:41:10 CST 2019
pZxid = 0x4a
cversion = 1
dataVersion = 1
aclVersion = 0
ephemeralOwner = 0x0
dataLength = 9
numChildren = 1
- 查看某个目录下的子节点:
ls
通过 ls 命令查看根目录下的节点
[zk: 127.0.0.1:2181(CONNECTED) 37] ls /
[dubbo, zookeeper, node1]
通过 ls 命令查看 node1 目录下的节点
[zk: 127.0.0.1:2181(CONNECTED) 5] ls /node1
[node1.1]
zookeeper 中的 ls 命令和 linux 命令中的 ls 类似, 这个命令将列出绝对路径path下的所有子节点信息(列出1级,并不递归)
- 查看节点状态:
stat
通过 stat 命令查看节点状态
[zk: 127.0.0.1:2181(CONNECTED) 10] stat /node1
cZxid = 0x47
ctime = Sun Jan 20 10:22:59 CST 2019
mZxid = 0x47
mtime = Sun Jan 20 10:22:59 CST 2019
pZxid = 0x4a
cversion = 1
dataVersion = 0
aclVersion = 0
ephemeralOwner = 0x0
dataLength = 11
numChildren = 1
- 查看节点信息和状态:
ls2
ls2 命令就像是 ls 命令和 stat 命令的结合。ls2 命令返回的信息包括2部分:子节点列表 + 当前节点的 stat 信息
[zk: 127.0.0.1:2181(CONNECTED) 7] ls2 /node1
[node1.1]
cZxid = 0x47
ctime = Sun Jan 20 10:22:59 CST 2019
mZxid = 0x47
mtime = Sun Jan 20 10:22:59 CST 2019
pZxid = 0x4a
cversion = 1
dataVersion = 0
aclVersion = 0
ephemeralOwner = 0x0
dataLength = 11
numChildren = 1
- 删除节点:
delete
需要注意,如果要删除某一个节点,那么这个节点必须无子节点才行
[zk: 127.0.0.1:2181(CONNECTED) 3] delete /node1/node1.1
参考:《从 Paxos 到 Zookeeper 分布式一致性原理与实践》
网友评论