只会一点java

java持续学习者,每月一篇博客。罗列出技术栈,慢慢完善,持续学习,总有一天,你会追上甚至超越曾经的大神。
  博客园  :: 首页  :: 联系 :: 订阅 订阅  :: 管理

zookeeper(zkCli)命令概览

Posted on 2017-08-02 10:48  只会一点java  阅读(6001)  评论(0编辑  收藏  举报

连接:

./zkCli.sh -timeout 0 -r -server ip:port

-timeout:当前会话的超时时间,zookeper依靠与客户端的心跳来判断会话是否有效,单位是毫秒
-r: 只读模式,zookeeper的只读模式指一个服务器与集群中过半机器失去连接以后,这个服务器就不在不处理客户端的请求,但我们仍然希望该服务器可以提供读服务。
-server: zookeeper服务器ip地址和端口号

h(help):查看帮助


ls:列出某一节点下的子节点信息


ls2:列出当前节点的子节点,同时列出节点状态


stat:查看节点的状态信息

在zookeeper中,每一次对节点的写操作都认为是一次事务,每一个事务,系统都会分配一个唯一的事务ID。
  czxid:节点被创建的事务ID
  ctime: 创建时间
  mzxid: 最后一次被更新的事务ID
  mtime: 修改时间
  pzxid:子节点列表最后一次被更新的事务ID
  cversion:子节点的版本号
  dataversion:数据版本号
  aclversion:权限版本号
  ephemeralOwner:用于临时节点,代表临时节点的事务ID,如果为持久节点则为0
  dataLength:节点存储的数据的长度
  numChildren:当前节点的子节点个数

get:获取当前节点存储的数据内容
  如:get /zk


create:创建节点
  -s:顺序节点
  -e:临时节点
  如:create /zk "myData"

set:修改节点数据,可携带版本号
  如:set /zk "myData"

delete:删除节点,只能删除没有子节点的节点
  如:delete /zk

rmr:递归删除节点(含子节点)
  如:rmr /zk

setquota:设置配额

  给节点限制值,比如限制子节点个数、节点数据的长度(当创建节点超出配额时,zookeeper不会抛出异常,会在zookeeper.out记录警告信息)
  -n:限制子节点个数
  -b:限制值的长度

listquota:查看配额,以及节点的配额状态


delquota:删除配额


close:关闭当前连接


history:查看历史执行指令


redo:重复执行指令

ACL相关


1、zookeeper的节点有5种操作权限:CREATE、READ、WRITE、DELETE、ADMIN 也就是 增、删、改、查、管理权限,这5种权限简写为crwda(即:每个单词的首字符缩写)
2、zookeeper的身份认证有4种方式:
(1)world:默认方式,相当于全世界都能访问
(2)auth:代表已经认证通过的用户(cli中可以通过addauth digest user:pwd 来添加当前上下文中的授权用户)
(3)digest:即用户名:密码这种方式认证,这也是业务系统中最常用的
(4)ip:使用ip地址认证

3、认证实例:
(1)增加一个认证用户:addauth digest 用户名:密码明文,如:addauth digest user1:password1
(2)设置权限:
(2.1):setAcl /path auth:用户名:密码明文:权限,如:setAcl /test auth:user1:password1:cdrwa
(2.2):setAcl /path digest:用户名:密码密文:权限
(3)查看Acl设置:getAcl /path

 

转载自http://www.cnblogs.com/yuanyee