Java中的zookeeper常用命令详解

这篇文章主要介绍了Java中的zookeeper常用命令,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

注意我这里用的是官方最稳定的版本3.7.1,版本之间有个别命令是有差距的!

1.zkCli.sh客户端

zkCli.sh可以理解成客户端,也可以理解成命令行工具,把命令交给他,让他和zk的服务端打交道。
类似于mysql,我们安装完mysql想要执行命令,那么就必须要通过mysql -u账号 -p密码进入命令行工具里面,才能执行sql。

在zookeeper/bin 目录下:

执行./zkCli.sh就进入到了客户端

ls /:查询当前目录下的节点
create /test1:创建test1节点

客户端关闭:

输入quit 或者按 Ctrl + C

2.多节点类型创建

  • 创建持久节点:create /test2
  • 创建持久序号节点:create -s /test2
  • 创建临时节点:create -e /test2
  • 创建临时序号节点:create -e -s /test2
  • 创建容器节点:create -c /test2

创建test3临时节点,并向节点赋值数据1(其他节点创建的时候赋值同样如此,在后面跟上数据即可):create -e /test3 1

3.查询节点

  • 查询子节点:
  • 查询当前节点的子节点:ls /
  • 就是获取test2下的子节点:ls /test2
  • 普通节点下的数据:get /test2
  • 查询节点详细信息:get -s /test2 || start /test2 || ls -s /test2 (这三种都可以的)

4.set数据

set [-s] [-v version] path data
  • path:节点路径。
  • data:需要存储的数据。
  • [-v version]:可选项,版本号(可用作乐观锁)。
  • [-s]:set后返回详情,不添加-s就是返回的set的数据

版本不对就set不成功!

5.删除节点

  • 普通删除
  • 删除a下的b节点:delete /a/b
  • 删除a节点:delete /a
  • 不管有没有子节点都删除:deleteall /test1
  • 乐观锁删除(1就是get -s查询出来的dataVersion版本,版本不对删除就失败):delete -v 1 /test2

6.权限设置

acl:权限,定义了什么样的⽤户能够操作这个节点,且能够进⾏怎样的操作。

  • c: create 创建权限,允许在该节点下创建⼦节点
  • w:write 更新权限,允许更新该节点的数据
  • r:read 读取权限,允许读取该节点的内容以及⼦节点的列表信息
  • d:delete 删除权限,允许删除该节点的⼦节点
  • a:admin 管理者权限,允许对该节点进⾏acl权限设置

常用命令:

  • 获取某个节点的 acl 权限信息:getAcl /test2
  • 设置某个节点的 acl 权限信息:
  • 指定该节点只有c的权限:setAcl /test2 world:anyone:c
  • 指定某个ip具有什么权限:setAcl /runoob/ip ip:192.168.3.7:cdrwa

注册当前会话的账号和密码:

addauth digest xiaowang:123456

创建一个节点赋值abcd数据,然后必须使用xiaoming账号密码才能进行读写权限,这时候使用别的会话是访问不了这个节点的。

create /test-node abcd auth:xiaowang:123456:cdwra

在另⼀个会话中必须先使⽤账号密码,才能拥有操作该节点的权限

7.其他命令

当命令输入错误的时候会出现命令帮助文档的!
查看当前会话的历史命令:history

到此这篇关于Java中的zookeeper常用命令详解的文章就介绍到这了,更多相关zookeeper常用命令内容请搜索编程学习网以前的文章希望大家以后多多支持编程学习网!

本文标题为:Java中的zookeeper常用命令详解

基础教程推荐