一、确认zk使用端口
1.进入zk根目录的conf
目录中,在zoo.cfg
文件中查找端口属性clientPort
的值
[root@34253fdsrf zookeeper-3.4.6]# cd conf/
[root@34253fdsrf conf]# cat zoo.cfg | grep clientPort
clientPort=4181
二、连接zk客户端
1.进入zk根目录的bin目录,执行zkCli.sh脚本
[root@34253fdsrf zookeeper-3.4.6]# cd bin/
[root@34253fdsrf bin]# sh zkCli.sh -server localhost:4181
[zk: localhost:4181(CONNECTED) 0]
三、使用命令查看zk上的信息
[zk: localhost:4181(CONNECTED) 0] ls /
[clue_metadata, module_register, zookeeper]
[zk: localhost:4181(CONNECTED) 0] ls /module_register
[tran, storage, entity]
使用h
命令可以看到zk命令参数
[zk: localhost:4181(CONNECTED) 0] h
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
rmr path
get path [watch]
create [-s] [-e] path data acl
addauth scheme auth
quit
getAcl path
close
connect host:port
四、zk命令详解
命令 | 释义 | 备注 |
---|---|---|
stat path [watch] | 获取指定节点的状态信息 | ls / :列出根节点下所有的子节点信息 |
set path data [version] | 修改当前节点的数据内容 如果指定版本,需要和当前节点的数据版本一致 | 其中值需要为字符串,版本号可以通过get path 指令获取如果版本号为"-1"表示更新时忽略版本校验 |
ls path [watch] | 查看子节点列表 | |
delquota [-n|-b] path | 删除节点路径的配额信息 | |
ls2 path [watch] | 是ls 和 stat两个命令的结合 | |
setAcl path acl | 设置ACL | setAcl /test digest:test:test:rwcda 和create 指令非常相似. |
setquota -n|-b val path | 设置节点配额 : -n 是限制子节点个数; -b是限制节点数据长度 |
超出配额后,ZooKeeper不会报错,而是在日志信息中记录; tail zookeeper.out |
history | 查看客户端这次会话所执行的所有命令 | |
redo cmdno | 执行指定历史命令 | |
printwatches on|off | ||
delete path [version] | 删除指定路径的节点 如果有子节点要先删除子节点 | 如果此path下还有子节点,将导致删除失败.这是和"rmr"指令的区别 |
sync path | ||
listquota path | 查看路径节点的配额信息 | |
rmr path | 删除当前路径节点及其所有子节点 | |
get path [watch] | 获取当前节点的数据内容 | |
create [-s] [-e] path data acl | -s 表示是顺序节点; -e 标识是临时节点; path 节点路径; data 节点数据 |
临时节点在客户端结束与服务器的会话后,自动消失; create -s /test null digest:test:test:rwcda 创建一个path为"/test"的节点,值为"null", ACL授权方式为"digest",其中授权的用户名:密码为"test:test", ACL的权限列表为"r""w""c""d""a". r表示"read",w表示"write",c表示"create",d表示"delete",a表示"admin" |
acl | 节点权限 | setAcl /test digest:test:test:rwcda --和create指令非常相似. |
addauth scheme auth | 添加授权信息 | addauth digest test:test 只有授权之后,才能够访问那些具有ACL控制的节点数据. 注意"auth"信息为原始的用户名和密码 |
quit | 退出客户端 | |
getAcl path | ||
close | ||
connect host:port | 在当前连接中连接其他的ZooKeeper服务器和关闭服务器 |
<span id="stat">stat</span>命令详解
命令 | 释义 |
---|---|
czxid | 创建该节点的事物ID |
ctime | 创建该节点的时间 |
mZxid | 更新该节点的事物ID |
mtime | 更新该节点的时间 |
pZxid | 操作当前节点的子节点列表的事物ID(这种操作包含增加子节点,删除子节点) |
cversion | 当前节点的子节点版本号 |
dataVersion | 当前节点的数据版本号 |
aclVersion | 当前节点的acl权限版本号 |
ephemeralowner | 当前节点的如果是临时节点,该属性是临时节点的事物ID |
dataLength | 当前节点的d的数据长度 |
numchildren | 当前节点的子节点个数 |