zookeeper 进入客户端_zookeeper客户端命令详解
今天同事突然向看一下zookeeper中都创建了哪些节点,而我本人对zookeeper的客服端命令了解的很少,有些操作竟然不知道怎么用,于是乎就索性整理一下zookeeper客服端命令的使用,并再此记录一下。
想要用zkClient链接zookeeper,首先执行如下命令,连接到zookeeper server
./zkCli.sh -server localhost:2181
help命令
help命令用于查询客服端所支持的所用的命令,执行help,输入如下:
ZooKeeper -server host:port cmd args
stat path [watch]
set path data [version]
ls path [watch]
delquota [-n|-b] path
ls2 path [watch]
setAcl path acl
setquota-n|-b val path
history
redo cmdno
printwatches on|off
delete path [version]
sync path
listquota path
get path [watch]
create [-s] [-e] path data acl
addauth scheme auth
quit
getAcl path
close
connect host:port
connect命令
连接zk服务端,与close命令配合使用可以连接或者断开zk服务端
connect 127.0.0.1:2181
close命令
close命令用于关闭与服务端的链接
get命令
get命令用于获取节点的信息,注意节点的路径必须是以/开头的绝对路径。如get /
cZxid = 0x0ctime= Thu Jan 01 08:00:00 CST 1970mZxid= 0x0mtime= Thu Jan 01 08:00:00 CST 1970pZxid= 0x1469cversion= 3dataVersion= 0aclVersion= 0ephemeralOwner= 0x0dataLength= 0numChildren= 4
其中:
cZxid:节点创建时的zxid
ctime:节点创建时间
mZxid:节点最近一次更新时的zxid
mtime:节点最近一次更新的时间
cversion:子节点数据更新次数
dataVersion:本节点数据更新次数
aclVersion:节点ACL(授权信息)的更新次数
ephemeralOwner:如果该节点为临时节点,ephemeralOwner值表示与该节点绑定的session id. 如果该节点不是临时节点,ephemeralOwner值为0
dataLength:节点数据长度,本例中为hello world的长度
numChildren:子节点个数
stat命令
stat命令用于查看节点的状态信息,如stat /
cZxid = 0x0ctime= Thu Jan 01 08:00:00 CST 1970mZxid= 0x0mtime= Thu Jan 01 08:00:00 CST 1970pZxid= 0x1469cversion= 3dataVersion= 0aclVersion= 0ephemeralOwner= 0x0dataLength= 0numChildren= 4
该命令的结果参数说明同get命令
set命令
set命令用于设置节点的数据,如:
set /usergrid hellUsergrid
ls命令
ls命令用于获取路径下的节点信息,注意路径为绝对路径,如:ls /storm
[assignments, storms, errors, supervisors, workerbeats]
ls2命令
ls2命令是ls命令的增强版,比ls命令多输出本节点信息,如:ls2 /storm
[assignments, storms, errors, supervisors, workerbeats]
cZxid= 0x1469ctime= Tue Nov 14 11:32:09 CST 2017mZxid= 0x1469mtime= Tue Nov 14 11:32:09 CST 2017pZxid= 0x1470cversion= 5dataVersion= 0aclVersion= 0ephemeralOwner= 0x0dataLength= 1numChildren= 5
listquota命令
listquota命令用于显示配额,如listquota /storm
absolute path is /zookeeper/quota/storm/zookeeper_limits
quotafor /storm does not exist.
setquota命令
setquota命令用于设置节点个数以及数据长度的配额,如:
setquota –n 4 /zookeeper/node 设置/zookeeper/node子节点个数最大为4
setquota –b 100 /zookeeper/node 设置/zookeeper/node节点长度最大为100
delquota命令
delquota命令用于删除配额,-n为子节点个数,-b为节点数据长度,如:delquota –n 2
history命令
history用于列出最近的命令历史,可以和redo配合使用。如history
12 - get /usergrid13 -help14 - ls /
15 - ls /storm16 - ls2 /storm17 -help18 - listquota /storm19 - listquota /zookeeper20 -help21 -history22 - history
redo命令
redo命令用于再次执行某个命令,使用方式为redo cmdid 如 redo 20
常与history配合使用
create命令
create命令用于创建节点,其中-s为顺序充点,-e临时节点
create /zookeeper/node1"test_create" world:anyone:fdsfds
delete命令
delete命令用于删除节点,如delete /nodeDelete
addauth命令
addauth命令用于节点认证,使用方式:如addauth digest username:password
setAcl命令
setAcl命令用于设置节点Acl
Acl由三部分构成:1为scheme,2为user,3为permission,一般情况下表示为scheme:id:permissions
getAcl命令
获取节点的Acl,如getAcl /node1
scheme和id
world: 它下面只有一个id, 叫anyone, world:anyone代表任何人,zookeeper中对所有人有权限的结点就是属于world:anyone的
auth: 它不需要id, 只要是通过authentication的user都有权限(zookeeper支持通过kerberos来进行authencation, 也支持username/password形式的authentication)
digest: 它对应的id为username:BASE64(SHA1(password)),它需要先通过username:password形式的authentication
ip: 它对应的id为客户机的IP地址,设置的时候可以设置一个ip段,比如ip:192.168.1.0/16, 表示匹配前16个bit的IP段
super: 在这种scheme情况下,对应的id拥有超级权限,可以做任何事情(cdrwa)
permissions
CREATE(c): 创建权限,可以在在当前node下创建child node
DELETE(d): 删除权限,可以删除当前的node
READ(r): 读权限,可以获取当前node的数据,可以list当前node所有的child nodes
WRITE(w): 写权限,可以向当前node写数据
ADMIN(a): 管理权限,可以设置当前node的permission
sync命令
sync命令用于强制同步,由于请求在半数以上的zk server上生效就表示此请求生效,那么就会有一些zk server上的数据是旧的。sync命令就是强制同步所有的更新操作。
printwatchers命令
printWatchers命令用于设置和显示监视状态,值为on或则off
quit命令
退出客户端
zookeeper 进入客户端_zookeeper客户端命令详解相关推荐
- Zookeeper集群搭建(涵盖命令详解)与Error contacting service. It is probably not running的问题解决
搭建部分参考文章:http://www.cnblogs.com/luotianshuai/p/5206662.html 这篇博客分为四个部分: >>>zookeeper简介 > ...
- linux下mysql数据库基础及客户端命令详解
linux下mysql数据库基础及客户端命令详解 1.mysql数据库存储引擎: SHOW ENGINES; #查看mysql支持的存储引擎 常见有如下两个存储引擎: MyISAM:每表三个文件: ...
- windows rsync 服务器端客户端下载安装配置详解,推,拉
Rsync是一款不错的文件免费同步软件,可以镜像保存整个目录树和文件系统,同时保持原来文件的权限.时间.软硬链接.第一次同步时 rsync 会复制全部内容,下次只传输修改过的文件部分.传输数据过程中可 ...
- Android客户端实现注册/登录详解(一)
前言 我们在开发安卓App时难免要与服务器打交道,尤其是对于用户账号信息的注册与登录更是每个android开发人员必须掌握的技能,本文将对客户端的注册/登录功能的实现进行分析,不到之处还请指出. 在这 ...
- hadoop之hdfs命令详解
目录 一.hadoop命令 1.archive 2.checknative 3.classpath 4.credential 5.distcp(比较常用) 6.fs 7.jar 8.key 9.tra ...
- python flask安装_python flask安装和命令详解
Flask Web开发实战学习笔记 Flask简介 Flask是使用Python编写的Web微框架.Web框架可以让我们不用关 心底层的请求响应处理,更方便高效地编写Web程序.因为Flask核心简 ...
- java 远程shell脚本_java通过ssh连接服务器执行shell命令详解及实例
java通过ssh连接服务器执行shell命令详解 java通过ssh连接服务器执行shell命令:JSch 是SSH2的一个纯Java实现.它允许你连接到一个sshd 服务器,使用端口转发,X11转 ...
- body curl 设置post_curl 命令详解
常用参数 常用参数分类 # 调试类-v, --verbose 输出信息-q, --disable 在第一个参数位置设置后 .curlrc 的设置直接失效,这个参数会影响到 -K, --config - ...
- 【转】tftp命令详解
转自:tftp命令详解 - 张大猛 - 博客园 介绍一个 FTP客户端-IIS7服务器管理工具 作为FTP客户端,它支持批量管理ftp站点.定时上传和定时下载,定时备份,且操作简洁.同时iis ...
- Redis命令详解:Hashs
Hash是一种String类型的field.value的映射表,因此,它非常适合存储对象.下面我们来一一介绍与Hash相关的命令. HDEL 最早可用版本:2.0.0 时间复杂度:O(N),其中N为要 ...
最新文章
- 区块链概况:从数字货币说起
- 12、OpenCV实现图像的空间滤波——图像平滑
- wp———跳转系统设置页面的wifi、网络连接、蓝牙、飞行模式等
- LeetCode 滑动窗口(Sliding Window)类问题总结
- 【shell】Linux shell 之 判断用户输入的变量是否为数字
- 再见,Navicat!这个IDEA的兄弟,真香!
- oracle自动提交没有生效,JBoss对Oracle的自动提交始终不起作用
- HTML的script标签
- 【报告分享】人工智能在五大行业的成就与挑战-毕马威.pdf(附下载链接)
- 用Vue来实现音乐播放器(八):自动轮播图啊
- [Linux] BASH程序设计
- 基于ASP的高校宿舍管理系统设计与实现
- chm文件打开文字排版错乱
- 使用dd命令修改bin文件
- ssm毕设项目农贸市场摊位管理系统c22ux(java+VUE+Mybatis+Maven+Mysql+sprnig)
- Java诊断工具Arthas使用说明
- UIAppearance定制UI元素
- c语言输出字母表,用c语言输出字母c和菱形
- python爬虫代码示例分享
- chrome和firefox在linux,我为什么使用Firefox浏览器而不是Chrome