一,查看当前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. python中faker模块:产生随机数据的模块

    #pip install faker #产生各种随机数据的模块 想要运用更多的随机数据,可以百度查找下

  2. NSOperation类

    NSOperation 抽象类 NSOperation 是一个"抽象类",不能直接使用 抽象类的用处是定义子类共有的属性和方法 在苹果的头文件中,有些抽象类和子类的定义是在同一个头 ...

  3. Win10安装Tensorflow-gpu遇到Could not install packages due to an EnvironmentError: [WinError 5] 拒绝访问

    最近因为上课需要安装Anaconda和Tensorflow,安装Anaconda后再使用 Tensorflow官网提供的pip安装Tensorflow-GPU方法会出现如下错误: 解决方法:在安装命令 ...

  4. 升级微服务架构5:API网关

    API网关是一个服务器,是系统的唯一入口.从面向对象设计的角度看,它与外观模式类似.API网关封装了系统内部架构,为每个客户端提供一个定制的API.它可能还具有其它职责,如身份验证.监控.负载均衡.缓 ...

  5. 【Nginx】冰河又一本超硬核Nginx PDF教程免费开源!!

    写在前面 在 [冰河技术] 微信公众号中的[Nginx]专题,更新了不少文章,有些读者反馈说,在公众号中刷 历史文章不太方便,有时会忘记自己看到哪一篇了,当打开一篇文章时,似乎之前已经看过了, 但就是 ...

  6. 3.GoolgeProtoBuffer序列化反序列化

  7. 【Netty之旅四】你一定看得懂的Netty客户端启动源码分析!

    前言 前面小飞已经讲解了NIO和Netty服务端启动,这一讲是Client的启动过程. 源码系列的文章依旧还是遵循大白话+画图的风格来讲解,本文Netty源码及以后的文章版本都基于:4.1.22.Fi ...

  8. ch4inrulz: 1.0.1靶机渗透

    ch4inrulz: 1.0.1靶机渗透 扫描主机端口,还行啦四个开放的端口,8011和80端口都运行着web服务. 80端口下的robots.txt告诉我们什么都没有 在8011端口的apache服 ...

  9. TabLayout+ViewPager制作简单导航栏

    先看样例,有图有真相 绑定viewpager 此处主要说明tablayout的使用方法,viewpager绑定fragment的介绍在其他文章说明 mBinding.tabsLayout.setupW ...

  10. Java 实现常见内排序

    一.内排序 1.排序基本概念 (1)什么是排序? 排序指将一个数据元素集合或者序列 按照某种规则 重新排列成一个 有序的集合或者序列.分为内排序.外排序.排序算法的好坏直接影响程序的执行速度以及存储空 ...