进入 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 分布式一致性原理与实践》
继续阅读与本文标签相同的文章
上一篇 :
利用Clang探究__block的本质
下一篇 :
有意思的TimeUnit
-
网络编程懒人入门(十):一泡尿的时间,快速读懂QUIC协议
2026-05-16栏目: 教程
-
代理——将本地服务暴露公网
2026-05-16栏目: 教程
-
maven 中配置多个mirror的问题
2026-05-16栏目: 教程
-
Maven 项目中依赖的搜索顺序
2026-05-16栏目: 教程
-
docker中java应用new FileOutputStream直接报Input/output error
2026-05-16栏目: 教程
