zookeeper常用命令 - 雨中散步撒哈拉

码影逐风家
• 阅读 1181

作者:雨中散步撒哈拉
来源:https://liudongdong.top
公众号:雨中散步撒哈拉
备注:欢迎关注公众号,学习技术,一起成长!

文末福利:上百本电子书,等待你的领取^v^

环境说明:

  1. 服务器为centos7集群
  2. zk为zookeeper-3.4.10.tar.gz版本
  3. jdk为1.8

一、常用命令

zookeeper常用命令 - 雨中散步撒哈拉

image.png

0、启动客户端

# zkCli.sh -server master:2181

1、help帮助

显示所有命令

[zk: master:2181(CONNECTED) 0] 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
    rmr path
    get path [watch]
    create [-s] [-e] path data acl
    addauth scheme auth
    quit 
    getAcl path
    close 
    connect host:port

2、ls 路径 [watch]

查看节点

[zk: master:2181(CONNECTED) 1] ls /
[zookeeper]

3、ls2 路径[watch]

查看当前节点数据并能看到更新次数等数据

[zk: master:2181(CONNECTED) 2] ls2 /
[zookeeper]
cZxid = 0x0
ctime = Wed Dec 31 16:00:00 PST 1969
mZxid = 0x0
mtime = Wed Dec 31 16:00:00 PST 1969
pZxid = 0x0
cversion = -1
dataVersion = 0
aclVersion = 0
ephemeralOwner = 0x0
dataLength = 0
numChildren = 1

4、create 创建节点

[zk: master:2181(CONNECTED) 17] create /hello "world"
Created /hello
[zk: master:2181(CONNECTED) 18] ls /
[hello, zookeeper]

[zk: master:2181(CONNECTED) 19] create -e /hello2 "world"
Created /hello2
[zk: master:2181(CONNECTED) 20] ls /                     
[hello2, hello, zookeeper]

5、get 路径 [watch]

获取节点的值

[zk: master:2181(CONNECTED) 21] get /hello2
world
cZxid = 0x300000008
ctime = Sun May 09 03:38:15 PDT 2021
mZxid = 0x300000008
mtime = Sun May 09 03:38:15 PDT 2021
pZxid = 0x300000008
cversion = 0
dataVersion = 0
aclVersion = 0
ephemeralOwner = 0x17950947f120001
dataLength = 5
numChildren = 0

6、set 路径  设置节点的值

[zk: master:2181(CONNECTED) 22] set /hello2 "112233"
cZxid = 0x300000008
ctime = Sun May 09 03:38:15 PDT 2021
mZxid = 0x300000009
mtime = Sun May 09 03:46:09 PDT 2021
pZxid = 0x300000008
cversion = 0
dataVersion = 1
aclVersion = 0
ephemeralOwner = 0x17950947f120001
dataLength = 6
numChildren = 0
[zk: master:2181(CONNECTED) 23] get /hello2
112233
cZxid = 0x300000008
ctime = Sun May 09 03:38:15 PDT 2021
mZxid = 0x300000009
mtime = Sun May 09 03:46:09 PDT 2021
pZxid = 0x300000008
cversion = 0
dataVersion = 1
aclVersion = 0
ephemeralOwner = 0x17950947f120001
dataLength = 6
numChildren = 0

7、stat 状态查看

查看节点状态

[zk: master:2181(CONNECTED) 24] stat /hello2
cZxid = 0x300000008
ctime = Sun May 09 03:38:15 PDT 2021
mZxid = 0x300000009
mtime = Sun May 09 03:46:09 PDT 2021
pZxid = 0x300000008
cversion = 0
dataVersion = 1
aclVersion = 0
ephemeralOwner = 0x17950947f120001
dataLength = 6
numChildren = 0

8、delete 路径

删除节点

[zk: master:2181(CONNECTED) 26] delete /hello2
[zk: master:2181(CONNECTED) 27] ls /
[hello, zookeeper]

9、rmr 路径

递归删除节点

[zk: master:2181(CONNECTED) 31] ls /hello                
[word]
[zk: master:2181(CONNECTED) 32] rmr /hello
[zk: master:2181(CONNECTED) 33] ls /
[zookeeper]

二、监听节点变化

1、监听节点值变化

  1. 第一台服务器,进行监听节点hello,路径为:/hello
[zk: slave1:2181(CONNECTED) 0] ls /
[hello, zookeeper]
[zk: slave1:2181(CONNECTED) 1] get /hello watch
jjj
cZxid = 0x30000000f
ctime = Sun May 09 03:54:52 PDT 2021
mZxid = 0x30000000f
mtime = Sun May 09 03:54:52 PDT 2021
pZxid = 0x30000000f
cversion = 0
dataVersion = 0
aclVersion = 0
ephemeralOwner = 0x0
dataLength = 3
numChildren = 0
  1. 第二台服务器进行修改节点hello的数据,修改节点路径为:/hello
[zk: master:2181(CONNECTED) 35] ls /
[hello, zookeeper]
[zk: master:2181(CONNECTED) 36] set /hello "kkk"
cZxid = 0x30000000f
ctime = Sun May 09 03:54:52 PDT 2021
mZxid = 0x300000011
mtime = Sun May 09 03:55:57 PDT 2021
pZxid = 0x30000000f
cversion = 0
dataVersion = 1
aclVersion = 0
ephemeralOwner = 0x0
dataLength = 3
numChildren = 0
[zk: master:2181(CONNECTED) 37] 
  1. 此时发现第一台服务器有打印日志
[zk: slave1:2181(CONNECTED) 2] 
WATCHER::

WatchedEvent state:SyncConnected type:NodeDataChanged path:/hello

注:监听只能监听一次,重新监听需再次进行watch

2、监听节点路径变化

  1. 第一台服务器,进行监听节点hello节点下的路径变化
[zk: slave1:2181(CONNECTED) 0] ls /   
[hello, zookeeper]
[zk: slave1:2181(CONNECTED) 1] ls /hello watch
[]
  1. 第二台服务器,进行创建节点world,父节点路径为:/hello
[zk: master:2181(CONNECTED) 38] create /hello/world "world"
Created /hello/world
  1. 此时第一台服务器变化为
[zk: slave1:2181(CONNECTED) 2] 
WATCHER::

WatchedEvent state:SyncConnected type:NodeChildrenChanged path:/hello

文末福利

包含c、c++、java、python、linux、html、php等上百本电子书!

zookeeper常用命令 - 雨中散步撒哈拉

zookeeper常用命令 - 雨中散步撒哈拉

zookeeper常用命令 - 雨中散步撒哈拉

获取方式:

搜索并关注公众号:雨中散步撒哈拉

回复关键词:001

点赞
收藏
评论区
推荐文章
blmius blmius
4年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
美凌格栋栋酱 美凌格栋栋酱
7个月前
Oracle 分组与拼接字符串同时使用
SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(
Stella981 Stella981
3年前
React Hooks实现异步请求实例—useReducer、useContext和useEffect代替Redux方案
<blockquote本文是学习了2018年新鲜出炉的ReactHooks提案之后,针对<strong异步请求数据</strong写的一个案例。注意,本文假设了:<br1.你已经初步了解<codehooks</code的含义了,如果不了解还请移步<ahref"https://reactjs.org/docs/hooksintro.html
Stella981 Stella981
3年前
SpringBoot学习:整合shiro自动登录功能(rememberMe记住我功能)
首先在shiro配置类中注入rememberMe管理器!复制代码(https://oscimg.oschina.net/oscnet/675f5689159acfa2c39c91f4df40a00ce0f.gif)/cookie对象;rememberMeCookie()方法是设置Cookie的生成模
Stella981 Stella981
3年前
Exceptionless
<divid"cnblogs\_post\_body"class"blogpostbodycnblogsmarkdown"<h1id"exceptionless.netcore开源日志框架"Exceptionless.NetCore开源日志框架</h1<blockquote<p作者:markjiang7m2<b
Stella981 Stella981
3年前
Centos7
1\.下载zookeeper压缩包    \root@localhost(https://my.oschina.net/u/570656)tools\wgethttp://mirrors.shuosc.org/apache/zookeeper/zookeeper3.4.11/zookeeper3.4.11.tar.gz2\.
Stella981 Stella981
3年前
Python基础教程,Python入门教程(非常详细)
<divclass"htmledit\_views"id"content\_views"<p<ahref"http://c.biancheng.net/python/base/"rel"nofollow"第1章Python编程基础</a</p<p1.<ahref"http://c.biancheng.net/view/
Easter79 Easter79
3年前
SpringBoot学习:整合shiro自动登录功能(rememberMe记住我功能)
首先在shiro配置类中注入rememberMe管理器!复制代码(https://oscimg.oschina.net/oscnet/675f5689159acfa2c39c91f4df40a00ce0f.gif)/cookie对象;rememberMeCookie()方法是设置Cookie的生成模
Stella981 Stella981
3年前
Dubbo爆出严重漏洞!可导致网站被控制、数据泄露!附解决方案
http://dy.163.com/v2/article/detail/F5FPIFRU0511Q1AF.html  !(http://dingyue.ws.126.net/2020/0216/125ec4c4p00q5rcrs0019d200ig009qg00ig009q.png)  来源:华为云  原文地址:https://w
Stella981 Stella981
3年前
2018java面试集合
作者:刘成链接:https://www.zhihu.com/question/266822548/answer/317700943来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。另一个java后端面试总结:http://www.cnblogs.com/java1024/p/7685400.html39
可莉 可莉
3年前
2018java面试集合
作者:刘成链接:https://www.zhihu.com/question/266822548/answer/317700943来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。另一个java后端面试总结:http://www.cnblogs.com/java1024/p/7685400.html39