zookeeper客户端shell命令详解

本文详细介绍了Zookeeper客户端的各类命令,包括网络连接、节点操作、配额管理、权限控制、配置管理、监视器以及其他的实用命令。重点讨论了创建、删除节点,设置和获取节点数据,以及查看和管理配额的方法。对于节点操作,涵盖了create、stat、get、set、ls、delete等一系列命令的使用。在配额管理中,提到了setquota、listquota和delquota命令。此外,还介绍了动态修改服务器配置的reconfig命令。
摘要由CSDN通过智能技术生成


​ 本文将介绍zookeeper的客户端命令,并对命令进行归类,方便以后查阅。由于权限控制和配置相关涉及内容较多,这两块独立出来,可通过文章内的链接查看。本文命令使用和实验对象为zookeeper3.5。

1.1 网络相关命令

网络相关主要包括以下三个命令:

  • connect host:port:连接指定host:port zk服务,连接过程中状态为CONNECTING,连接成功后状态转变为CONNECTED
  • close :关闭当前连接,即关闭当前session。使用close命令后,连接状态转变为CLOSED
  • quit :退出当前客户端
[root@VM_147_78_centos /data/zookeeper/bin]# ./zkCli.sh -server 127.0.0.1:2181
/usr/local/jdk1.8.0_231/bin/java
Connecting to 127.0.0.1:2181
Welcome to ZooKeeper!
JLine support is enabled
# 关闭连接
[zk: 127.0.0.1:2181(CONNECTED) 15] close
WATCHER::
WatchedEvent state:Closed type:None path:null
# 建立连接
[zk: 127.0.0.1:2181(CLOSED) 16] connect 127.0.0.1:2181
[zk: 127.0.0.1:2181(CONNECTING) 17] 
WATCHER::
WatchedEvent state:SyncConnected type:None path:null

# 退出客户端
[zk: 127.0.0.1:2181(CONNECTED) 17] quit
WATCHER::
WatchedEvent state:Closed type:None path:null
[root@VM_147_78_centos /data/zookeeper/bin]# 

1.2 节点操作相关命令

节点操作包括9个命令:create,stat,get,set,ls,ls2,delete,deleteall,rmr

1.2.1 创建znode节点:create

节点创建命令

create [-s] [-e] [-c] [-t ttl] path [data] [acl]

节点创建选项说明

  • path : znode节点路径
  • data : 节点存储的数据,可选参数,默认数据为空
  • acl :节点权限列表,可选参数,默认所有客户端都可以操作该节点
  • -s : 待创建的节点为顺序节点,创建节点时,zk会自动在节点名称后添加序号,序号相对于该节点的父节点是唯一的。
  • -e:指定当前创建的节点为临时节点,当创建该节点的session断开之后,该节点自动消失。
  • -t:指定节点ttl,当前节点到达ttl指定的时间(单位为ms)之后将会被自动删除。注意:该功能只有在设置extendedTypesEnabled属性之后才能使用;zookeeper扫描ttl节点的频率默认为1分钟,所以ttl的误差范围为1分钟。

节点创建实例

# 创建节点,并将节点内容初始化为data
[zk: 127.0.0.1:2181(CONNECTED) 0] create /test_create data
Created /test_create
[zk: 127.0.0.1:2181(CONNECTED) 1] 
[zk: 127.0.0.1:2181(CONNECTED) 1] create /test_create/test1 123 
Created /test_create/test1
[zk: 127.0.0.1:2181(CONNECTED) 2] get /test_create/test1
123
# 创建顺序节点,节点序号从0000000001开始
[zk: 127.0.0.1:2181(CONNECTED) 3] create -s /test_create/seq
Created /test_create/seq0000000001
[zk: 127.0.0.1:2181(CONNECTED) 4] ls /test_create
[seq0000000001, test1]
# 创建带有ttl的节点,
[zk: 127.0.0.1:2181(CONNECTED) 5] create /test_create/test_ttl -t 1
Created /test_create/test_ttl
[zk: 127.0.0.1:2181(CONNECTED) 6] ls /test_create
[seq0000000001, test1, test_ttl]
# 过期后ttl节点自动消失
[zk: 127.0.0.1:2181(CONNECTED) 7] ls /test_create
[seq0000000001, test1]
# 创建临时节点
[zk: 127.0.0.1:2181(CONNECTED) 8] create -e /test
test                 test%10d0000000039   test3                test4                test_create          
[zk: 127.0.0.1:2181(CONNECTED) 8] create -e /test_create/test_e
Created /test_create/test_e
[zk: 127.0.0.1:2181(CONNECTED) 9] ls /test_create
[seq0000000001, test1, test_e]
# 关闭当前会话
[zk: 127.0.0.1:2181(CONNECTED) 10] close
WATCHER::
WatchedEvent state:Closed type:None path:null
# 重新连接
[zk: 127.0.0.1:2181(CLOSED) 11] connect 127.0.0.1:2181
[zk: 127.0.0.1:2181(CONNECTING) 12] 
WATCHER::
WatchedEvent state:SyncConnected type:None path:null
# 重新连接后临时节点消失
[zk: 127.0.0.1:2181(CONNECTED) 12] ls /test_create
[seq0000000001, test1]

1.2.2 查看节点状态:stat

查看节点状态命令:

stat [-w] path

查看节点状态参数说明:

  • -w : 给指定节点设置监视器。该监视器在 修改节点数据(set)/删除当前节点(delete/deleteall/rmr)的时候触发,注意增删子节点以及修改子节点数据不会出发当前监视器。

查看节点状态实例

[zk: 127.0.0.1:2181(CONNECTED) 25] stat -w /test_create
cZxid = 0xd0000003b
ctime = Sun Dec 22 17:56:35 CST 2019
mZxid = 0xd00000047
mtime = Sun Dec 22 18:10:03 CST 2019
pZxid = 0xd00000046
cversion = 8
dataVersion = 2
aclVersion = 0
ephemeralOwner = 0x0
dataLength = 3
numChildren = 2
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值