ZooKeeper客户端常用命令

本文涉及的产品
云原生网关 MSE Higress,422元/月
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
注册配置 MSE Nacos/ZooKeeper,118元/月
简介: ZooKeeper客户端常用命令

连接客户端

ZK的客户端位于安装目录的bin目录下。ZK的客户端为zkCli.sh,进入bin目录后执行./zkCli.sh即可启动客户端。

zkCli.sh还可以携带一些参数:

./zkCli.sh –timeout 1000 –r –server ip:port
-timeout 1000:设置超时时间,单位毫秒
-r:设置为只读权限,不加-r则为可读可写权限
-server ip:port:指定连接的ZK服务器以及端口号

如果就是连接本机的ZK服务,那么可以在bin目录下直接输入:./zkCli.sh,连接成功:

增加节点

首先了解一下ZK的节点类型,ZNode共有四种形式的目录节点:

  1. PERSISTENT:持久节点,客户端与ZK断开连接后,该节点依旧存在。
  2. PERSISTENT_SEQUENTIAL:持久顺序节点,客户端与ZK断开连接后,该节点依旧存在,只是ZK给该节点名称进行顺序编号。
  3. EPHEMERAL:临时节点,客户端与ZK断开连接后,该节点被删除。
  4. EPHEMERAL_SEQUENTIAL:临时顺序节点,客户端与ZK断开连接后,该节点被删除,只是ZK给该节点名称进行顺序编号。

使用ZK客户端连接到服务之后,可以使用以下命令创建节点:

create [-s] [-e] path data [acl]
-s:创建顺序节点,不加此参数则默认创建非顺序节点
-e:创建临时节点,不加此参数则默认创建持久节点
alc:权限相关修饰符

删除节点

删除ZK节点有两种方式:

# 删除指定节点,当节点下包含子节点则无法删除。
delete path [version]
version : 版本号,和set命令一样中的意思一样,版本相同才能删除成功
# 递归删除节点
rmr path

查看节点状态

stat path [watch]
watch:一次性监听器

每一个ZK节点都有以下状态属性:

列出目录下节点

列出节点也有以下两种方法:

# 单纯列出节点
ls path [watch]
watch:一次性监听器
# 列出节点同时显示当前节点的状态,相当于 ls + stat
ls2 path [watch]
watch:一次性监听器

设置节点数据

set path data [version]
version:数据版本,对应stat的dataVersion属性,默认自动递增

查询节点数据

get path [watch]
watch:一次性监听器

节点配额相关

为节点配额也就是可以约束节点所能创建子节点的数量以及节点本身所能存储的数据最大长度。但是当超过限制的时候也仅仅是在ZK的日志打印警告信息(默认输出在bin/zookeeper.out)。

# 设置配额
setquota -n | -b val path
-n:val设置子节点个数
-b:val设置节点的数据长度
# 查看配额
listquota path
# 删除配额
delquota -n | -b path

查看历史以及重复执行

# 用于列出最近的命令历史
history
[zk: localhost:2181(CONNECTED) 1] history
0 - help
1 - get /
2 - stat /
3 - ls /
4 - ls2 /
5 - listquota /
6 - history
# 重新执行历史命令
redo 顺序ID


相关实践学习
基于MSE实现微服务的全链路灰度
通过本场景的实验操作,您将了解并实现在线业务的微服务全链路灰度能力。
相关文章
|
3月前
|
Shell
Zookeeper常用命令
Zookeeper常用命令
54 1
|
4月前
|
存储 数据安全/隐私保护
zookeeper 节点介绍及节点常用命令总结
zookeeper 节点介绍及节点常用命令总结
127 4
|
3月前
|
存储 API Apache
【zookeeper 第三篇章】客户端 API
本文介绍了Apache ZooKeeper客户端的一些常用命令及其用法。首先,`create`命令用于创建不同类型的节点并为其赋值,如持久化节点、有序节点及临时节点等。通过示例展示了如何创建这些节点,并演示了创建过程中的输出结果。其次,`ls`命令用于列出指定路径下的所有子节点。接着,`set`命令用于更新节点中的数据,可以指定版本号实现乐观锁机制。
33 0
|
1月前
|
分布式计算 Java Hadoop
Hadoop-30 ZooKeeper集群 JavaAPI 客户端 POM Java操作ZK 监听节点 监听数据变化 创建节点 删除节点
Hadoop-30 ZooKeeper集群 JavaAPI 客户端 POM Java操作ZK 监听节点 监听数据变化 创建节点 删除节点
61 1
|
1月前
|
分布式计算 监控 Hadoop
Hadoop-29 ZooKeeper集群 Watcher机制 工作原理 与 ZK基本命令 测试集群效果 3台公网云服务器
Hadoop-29 ZooKeeper集群 Watcher机制 工作原理 与 ZK基本命令 测试集群效果 3台公网云服务器
39 1
|
2月前
|
负载均衡 API 数据安全/隐私保护
Zookeeper的客户端-原生的API
Zookeeper的客户端-原生的API
|
2月前
|
存储 运维 监控
zookeeper的命令
zookeeper的命令
|
4月前
|
API
【想进大厂还不会阅读源码】ShenYu源码-替换ZooKeeper客户端
ShenYu源码阅读。相信大家碰到源码时经常无从下手,不知道从哪开始阅读😭。我认为有一种办法可以解决大家的困扰!至此,我们发现自己开始从大量堆砌的源码中脱离开来😀。ShenYu是一个异步的,高性能的,跨语言的,响应式的 API 网关。
|
5月前
|
Shell 虚拟化
分布式系统详解--框架(Zookeeper-基本shell命令)
分布式系统详解--框架(Zookeeper-基本shell命令)
52 1
|
6月前
|
Java API Apache
ZooKeeper【基础 03】Java 客户端 Apache Curator 基础 API 使用举例(含源代码)
【4月更文挑战第11天】ZooKeeper【基础 03】Java 客户端 Apache Curator 基础 API 使用举例(含源代码)
74 11