zookeeper常用命令

本文档详述了ZooKeeper客户端命令行操作的基本步骤,包括连接客户端、查看及管理节点、设置权限和配额等功能,适用于ZooKeeper集群管理和数据同步场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、链接zookeeper客户端
./zkCli.sh -server 127.0.0.1:2181

2、查看节点
ls /
ls2 /

3、创建节点并初始化节点内容
create /zhaochangzhu "test"

4、创建znode,并设置初始内容, 默认内容也可以是空串,附加参数 :-s:顺序节点 ,-e:临时节点 例如:
create -e /zhaochangzhu "test"

5、获取znode节点数据
get /zhaochangzhu

6、修改znode节点内容,修改数据也可携带版本号,修改的时候要么不携带版本号,要么携带的版本号要跟dataVersion的版本号一致,否则就会报错
set /zhaochangzhu "6666what you want to update"

7、删除没有子节点的节点,如果有子节点将报Node not empty:
delete /zhaochangzhu

8、删除节点,有子节点一并删除
deleteall /zhaochangzhu
rmr /nodes

9、配额,给节点限制值,比如限制子节点个数、节点数据的长度 -n:限制子节点个数 -b:限制值的长度
create /node 123
setquota -n 2/node
create /node/node_1 234
create /node/node_2 456
create /node/node_3 789
当创建节点超出配额时,zookeeper不会抛出异常,会在bin/zookeeper.out记录警告信息。

10、查看配额,以及节点的配额状态,例如:
listquota /node

11、delquota:删除配额

12、close:关闭当前连接

13、history:查看历史执行指令

14、redo命令
再次执行某命令。
如redo 10
其中10为命令ID,需与history配合使用。

15、printwatches
在获取节点数据、子节点列表等操作时,都可以添加watch参数监听节点的变化,从而节点数据更改、子节点列表变更时收到通知,并输出到控制台。默认是打开,可以设置参数将其关闭。 例如:
printwatches on
printwatches off

16、scheme即采取的授权策略,每种授权策略对应不同的权限校验方式。下面是zk常用的几种scheme:
    world:默认方式,相当于全世界都能访问
    auth:不使用任何id,表示任何经过身份验证的用户。    digest:即用户名:密码这种方式认证,这也是业务系统中最常用的,使用username:password字符串生成MD5哈希,然后将其用作ACL的ID标识。通过以明文形式发送 例如:wangsaichao:123456 来完成身份验证。在ACL中使用时,表达式将是wangsaichao:G2RdrM8e0u0f1vNCj/TI99ebRMw=。
    ip:使用Ip地址认证

17、world
语法:world:anyone:cdrwa
创建节点默认的scheme,所有人都可以访问

18、digest
语法:digest:username:BASE64(SHA1(password)):cdrwa
digest:是授权方式
username:BASE64(SHA1(password)):是id部分
cdrwa:权限部份
用户名+密码授权访问方式,也是常用的一种授权策略。id部份是用户名和密码做sha1加密再做BASE64加密后的组合,比如设置一个节点的用户名为wangsaichao,密码为123456,则表示方式为:
原:wangsaicaho:BASE64(SHA1(123456))
正确:wangsaichao:G2RdrM8e0u0f1vNCj/TI99ebRMw=。

19、给节点加权限操作
create /node 123
添加授权用户-----密码自动加密
addauth digest zhao:123456
将这个目录授权给这个用户
setAcl /test auth:zhao:123456:cdrwa

20、设置可访问ip
setAcl / ip:192.168.1.xx:cdrwa,ip:192.168.1.xx:cdrwa

21、所有人可访问
setAcl / world:anyone:cdrwa

22、查看权限
getAcl /

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值