一,查看当前zookeeper的版本:

[root@localhost conf]# echo stat|nc 127.0.0.1 2181
Zookeeper version: 3.5.6-c11b7e26bc554b8523dc929761dd28808913f091, built on 10/08/2019 20:18 GMT

说明:架构森林是一个专注架构的博客,地址:https://www.cnblogs.com/architectforest

对应的源码可以访问这里获取: https://github.com/liuhongdi/

说明:作者:刘宏缔 邮箱: 371125307@qq.com

二,启动zookeeper客户端

[root@localhost conf]# zkCli.sh 

三,使用 ls 命令来查看当前 ZooKeeper 中所包含的内容

[zk: localhost:2181(CONNECTED) 0] ls /
[zookeeper]

四,创建一个新的 znode

[zk: localhost:2181(CONNECTED) 1] create /lockdemo 'demo content'
Created /lockdemo
[zk: localhost:2181(CONNECTED) 2] ls /
[lockdemo, zookeeper]

五,获取一个znode的value

[zk: localhost:2181(CONNECTED) 3] get /lockdemo
demo content

六,设置一个znode的 value

[zk: localhost:2181(CONNECTED) 22] set /lockdemo 'demo content2'

六,删除一个znode

说明:使用delete命令

[zk: localhost:2181(CONNECTED) 4] create /lockdemo2
Created /lockdemo2
[zk: localhost:2181(CONNECTED) 5] ls /
[lockdemo, lockdemo2, zookeeper]
[zk: localhost:2181(CONNECTED) 6] delete /lockdemo2
[zk: localhost:2181(CONNECTED) 7] ls /
[lockdemo, zookeeper]

七,列出zkCli上执行过的命令

[zk: localhost:2181(CONNECTED) 8] history

八,创建一个子节点

[zk: localhost:2181(CONNECTED) 10] create /lockdemo/son
Created /lockdemo/son
[zk: localhost:2181(CONNECTED) 11] ls /
[lockdemo, zookeeper]

九,列出节点时,附带上统计信息

给ls 加上 s参数即可

[zk: localhost:2181(CONNECTED) 12] ls -s /lockdemo
[son]cZxid = 0x2
ctime = Tue Feb 18 21:44:25 CST 2020
mZxid = 0x2
mtime = Tue Feb 18 21:44:25 CST 2020
pZxid = 0x5
cversion = 1
dataVersion = 0
aclVersion = 0
ephemeralOwner = 0x0
dataLength = 12
numChildren = 1

十,统计节点的信息

[zk: localhost:2181(CONNECTED) 14] stat /lockdemo/son
cZxid = 0x5
ctime = Tue Feb 18 21:51:09 CST 2020
mZxid = 0x5
mtime = Tue Feb 18 21:51:09 CST 2020
pZxid = 0x5
cversion = 0
dataVersion = 0
aclVersion = 0
ephemeralOwner = 0x0
dataLength = 0
numChildren = 0

说明:各个字段的含义是什么

cZxid:节点创建时的zxid
ctime:节点创建时间
mZxid:节点最近一次更新时的zxid
mtime:节点最近一次更新的时间
cversion:子节点数据更新次数
dataVersion:本节点数据更新次数
aclVersion:节点ACL(授权信息)的更新次数
ephemeralOwner:如果该节点为临时节点,ephemeralOwner值表示与该节点绑定的session id.
如果该节点不是临时节点,ephemeralOwner值为0
dataLength:节点数据长度,本例中为根节点/的长度
numChildren:子节点个数

十一,删除带子节点的节点

节点如果带有子节点时,不能直接使用delete做删除

[zk: localhost:2181(CONNECTED) 15] delete /lockdemo
Node not empty: /lockdemo
[zk: localhost:2181(CONNECTED) 16] deleteall /lockdemo
[zk: localhost:2181(CONNECTED) 17] ls /
[zookeeper]

十二,watch一个节点的value变化

在终端一上操作:

[zk: localhost:2181(CONNECTED) 27] set /lockdemo 'demo content2'
WATCHER::
WatchedEvent state:SyncConnected type:NodeDataChanged path:/lockdemo
[zk: localhost:2181(CONNECTED) 28] get -w /lockdemo
demo content2

说明: get -w 给当前的key添加了watcher

在终端二上操作

[zk: localhost:2181(CONNECTED) 4] set /lockdemo 'change2'

此时回到终端一查看

[zk: localhost:2181(CONNECTED) 29]
WATCHER::
WatchedEvent state:SyncConnected type:NodeDataChanged path:/lockdemo

watcher提示: 有NodeDataChanged发生

十三,watch一个节点的node变化

说明:这种主要是子节点的变化,不包括value的变化

在终端一操作:

[zk: localhost:2181(CONNECTED) 32] ls -w /lockdemo
[]

在终端二操作:

[zk: localhost:2181(CONNECTED) 7] create /lockdemo/son 'son value'
Created /lockdemo/son

回到终端一查看

[zk: localhost:2181(CONNECTED) 33]
WATCHER:: WatchedEvent state:SyncConnected type:NodeChildrenChanged path:/lockdemo

说明:可以看到watcher提示的事件是:NodeChildrenChanged

十四,退出zkcli

[zk: localhost:2181(CONNECTED) 9] quit

zookeeper的客户端常用操作的更多相关文章

  1. iscsi客户端常用操作

    说明 本篇主要记录iscsi的客户端的一些常用的一些操作 iscsi服务端常用操作 删除一个lun tgtadm --lld iscsi --mode logicalunit --op delete ...

  2. 【转】ssh服务器启动和客户端常用操作

    前言 简单的来说,SSH 是 Secure SHell protocol 的简写 (安全的壳程序协议),它可以透过数据封包加密技术,将等待传输的封包加密后再传输到网络上, 因此,数据讯息当然就比较安全 ...

  3. zookeeper 学习 客户端Acl操作笔记

    Acl = Access control list create /node2 node2data [zk: localhost:2181(CONNECTED) 14] addauth digest ...

  4. .NET Core)的ZooKeeper异步客户端

    支持断线重连.永久watcher.递归操作并且能跨平台(.NET Core)的ZooKeeper异步客户端   阅读目录 什么是ZooKeeper? 项目介绍 提供的功能 使用说明 FAQ 在公司内部 ...

  5. Hbase常用操作(增删改查)

    Hbase常用操作(增删改查) [日期:2014-01-03] 来源:Linux社区  作者:net19880504 [字体:大 中 小]     运行Eclipse,创建一个新的Java工程“HBa ...

  6. HBase伪分布式安装(HDFS)+ZooKeeper安装+HBase数据操作+HBase架构体系

    HBase1.2.2伪分布式安装(HDFS)+ZooKeeper-3.4.8安装配置+HBase表和数据操作+HBase的架构体系+单例安装,记录了在Ubuntu下对HBase1.2.2的实践操作,H ...

  7. Zookeeper的命令行操作(三)

    Zookeeper的命令行操作 1. ZooKeeper服务命令 在准备好相应的配置之后,可以直接通过zkServer.sh 这个脚本进行服务的相关操作 1. 启动ZK服务: sh bin/zkSer ...

  8. zookeeper Cli的常用命令

    zookeeper Cli的常用命令 服务管理 启动ZK服务: zkServer.sh start 查看ZK状态: zkServer.sh status 停止ZK服务: zkServer.sh sto ...

  9. Apache Zookeeper Java客户端Curator使用及权限模式详解

    这篇文章是让大家了解Zookeeper基于Java客户端Curator的基本操作,以及如何使用Zookeeper解决实际问题. Zookeeper基于Java访问 针对zookeeper,比较常用的J ...

随机推荐

  1. 小BUG大原理:FastJSON实体转换首字母小写的尴尬事件

    问题描述 因为项目连接的Oracle数据库,字段名映射方便使用大写,但是通过接口调用返回到前端的字段名首字母为小写,这样带来的问题前端显示的字段就需要写这种很尴尬的格式. 原因分析 开发环境使用的是S ...

  2. P1295 [TJOI2011]书架 线段树优化dp,单调栈

    P1295 [TJOI2011]书架 本题思路比较好想(对我来说不是),但代码细节很多,奈何洛谷的题解只有思路,然后就是 没有丝毫解释的代码,让人看起来很头疼(~~ 尤其是像我这样的蒟蒻~~),所以便 ...

  3. Java基本数据类型、关键字

    Java基本数据类型.关键字 一.Java基本数据类型 Java有8中基本数据类型:byte\char \short \int\float\double\long\boolean 在说明每种类型大小前 ...

  4. 确成硅化+恒力+苏大文正节点2 oracle ora-4030 错误pga version:11204

    Errors in file /u01/app/oracle/oracle/diag/rdbms/orcl/orcl/trace/orcl_j000_61543.trc (incident=18009 ...

  5. Tensorflow图级别随机数设置-tf.set_random_seed(seed)

    tf.set_random_seed(seed) 可使得所有会话中op产生的随机序列是相等可重复的. 例如: tf.set_random_seed(1234) a = tf.random_unifor ...

  6. 【译】使用 WebView2 将最好的 Web 带到 .NET 桌面应用程序中

    在去年的 Build 大会上,我们引入了 WebView2,这是一个浏览器控件,可以用新的基于 Chrome 的 Microsoft Edge 来呈现 Web 内容(HTML / CSS / Java ...

  7. Spring学习(九)--Spring的AOP

    1.配置ProxyFactoryBean Spring IOC容器中创建Spring AOP的方法. (1)配置ProxyFactoryBean的Advisor通知器 通知器实现定义了对目标对象进行增 ...

  8. Python-列表推导式、生成器、字典推导式

    列表推导式 [] + for + if 算子.循环.条件, 对相同的数据进行处理, 算子也可以是函数 number = [i for i in range(1, 101) if i % 2 == 0] ...

  9. ECharts系列:玩转ECharts之常用图(折线、柱状、饼状、散点、关系、树)

    一.背景 最近产品叫我做一些集团系列的统计图,包括集团组织.协作.销售.采购等方面的.作为一名后端程序员,于是趁此机会来研究研究这个库. 如果你仅仅停留在用的层面,那还是蛮简单的. 二.介绍 ECha ...

  10. 探究"补阶乘大法的本质"——糖水不等式!

    废话不多说先来康一条例题: 证明: 下面给出题目的一种解法(我称之为"补阶乘大法"): 思考:为什么补上一个阶乘(准确说不是阶乘,是两个数阶乘的之商)项,放缩后再给去掉,就能达到我 ...