ZooKeeper客户端命令行操作

  1. 启动服务端

    [simon@hadoop102 zookeeper-3.4.10]$ bin/zkServer.sh start
  2. 查看状态信息

    Using config: /opt/module/zookeeper-3.4.10/bin/../conf/zoo.cfg
    Starting zookeeper ... STARTED
    [simon@hadoop102 zookeeper-3.4.10]$ bin/zkServer.sh status
    ZooKeeper JMX enabled by default
    Using config: /opt/module/zookeeper-3.4.10/bin/../conf/zoo.cfg
    Mode: follower
  3. 启动客户端

    [simon@hadoop102 zookeeper-3.4.10]$ bin/zkCli.sh
  4. 查看当前znode中所包含的内容

    [zk: localhost:2181(CONNECTED) 1] ls /
    [zookeeper]
  5. 查看当前节点的详细数据

    [zk: localhost:2181(CONNECTED) 2] ls2 /
    [zookeeper]
    cZxid = 0x0
    ctime = Thu Jan 01 08:00:00 CST 1970
    mZxid = 0x0
    mtime = Thu Jan 01 08:00:00 CST 1970
    pZxid = 0x0
    cversion = -1
    dataVersion = 0
    aclVersion = 0
    ephemeralOwner = 0x0
    dataLength = 0
    numChildren = 1
  6. 分别创建两个普通节点

    [zk: localhost:2181(CONNECTED) 3] create /simon "user"
    [zk: localhost:2181(CONNECTED) 0] create /simon/a "a"
    Created /simon/a
  7. 获得节点的值

    [zk: localhost:2181(CONNECTED) 1] get /simon
    user
    cZxid = 0x100000004
    ctime = Thu Oct 24 21:59:31 CST 2019
    mZxid = 0x100000004
    mtime = Thu Oct 24 21:59:31 CST 2019
    pZxid = 0x100000007
    cversion = 1
    dataVersion = 0
    aclVersion = 0
    ephemeralOwner = 0x0
    dataLength = 4
    numChildren = 1 [zk: localhost:2181(CONNECTED) 2] get /simon/a
    a
    cZxid = 0x100000007
    ctime = Thu Oct 24 22:19:10 CST 2019
    mZxid = 0x100000007
    mtime = Thu Oct 24 22:19:10 CST 2019
    pZxid = 0x100000007
    cversion = 0
    dataVersion = 0
    aclVersion = 0
    ephemeralOwner = 0x0
    dataLength = 1
    numChildren = 0
  8. 创建临时节点

    [zk: localhost:2181(CONNECTED) 3] create -e /simon/temp "temp"
    Created /simon/temp

    (1)在客户端可以查看到

    [zk: localhost:2181(CONNECTED) 5] ls /simon
    [a, temp]

    (2)退出当前客户端之后再重启客户端

    [zk: localhost:2181(CONNECTED) 6] quit
    Quitting...
    2019-10-24 22:22:00,789 [myid:] - INFO [main:ZooKeeper@684] - Session: 0x26dfe0bc0f60002 closed
    2019-10-24 22:22:00,790 [myid:] - INFO [main-EventThread:ClientCnxn$EventThread@519] - EventThread shut down for session: 0x26dfe0bc0f60002 [simon@hadoop102 zookeeper-3.4.10]$ bin/zkCli.sh

    (3)再次查看根目录下临时节点已经被删除

    [zk: localhost:2181(CONNECTED) 0] ls /simon
    [a]
  9. 创建带序号的节点

    (1)先创建一个普通的根节点/simon/b

    [zk: localhost:2181(CONNECTED) 1] create /simon/b "b"
    Created /simon/b

    (2)创建一个带序号的节点

    [zk: localhost:2181(CONNECTED) 1] create -s /simon/b/ba "ba"
    Created /simon/b/ba0000000001
    [zk: localhost:2181(CONNECTED) 2] create -s /simon/b/bb "bb"
    Created /simon/b/bb0000000002
    [zk: localhost:2181(CONNECTED) 3] create -s /simon/b/bc "bc"
    Created /simon/b/bc0000000003

    如果原来没有节点序号,序号从0开始依次递增。如果原节点下已经有2个节点,则再排序时从2开始,以此类推。

  10. 修改节点数据的值

    [zk: localhost:2181(CONNECTED) 4] set /simon/b "B"
    
    [zk: localhost:2181(CONNECTED) 5] get /simon/b
    [zk: localhost:2181(CONNECTED) 5] get /simon/b
    B
    cZxid = 0x10000000b
    ctime = Thu Oct 24 22:23:07 CST 2019
    mZxid = 0x100000012
    mtime = Thu Oct 24 22:26:16 CST 2019
    pZxid = 0x100000011
    cversion = 4
    dataVersion = 1
    aclVersion = 0
    ephemeralOwner = 0x0
    dataLength = 1
    numChildren = 4
  11. 节点值的变化监听

    (1)在Hadoop104主机上注册监听/simon节点数据的变化

    [zk: localhost:2181(CONNECTED) 0] get /simon watch    #监听根节点用:get 子节点:ls
    user
    cZxid = 0x100000004
    ctime = Thu Oct 24 21:59:31 CST 2019
    mZxid = 0x100000004
    mtime = Thu Oct 24 21:59:31 CST 2019
    pZxid = 0x10000000b
    cversion = 4
    dataVersion = 0
    aclVersion = 0
    ephemeralOwner = 0x0
    dataLength = 4
    numChildren = 2

    (2)在Hadoop103主机上修改/simon节点的数据

    [zk: localhost:2181(CONNECTED) 0] set /simon "hello world"
    cZxid = 0x100000004
    ctime = Thu Oct 24 21:59:31 CST 2019
    mZxid = 0x100000015
    mtime = Thu Oct 24 22:29:32 CST 2019
    pZxid = 0x10000000b
    cversion = 4
    dataVersion = 1
    aclVersion = 0
    ephemeralOwner = 0x0
    dataLength = 11
    numChildren = 2

    (3)在Hadoop104节点上观察数据的变化的监听

    [zk: localhost:2181(CONNECTED) 1]
    WATCHER:: WatchedEvent state:SyncConnected type:NodeDataChanged path:/simon
  12. 节点的子节点变化监听(路劲变化)

    (1)在Hadoop104主机上注册监听/simon节点的子节点变化

    [zk: localhost:2181(CONNECTED) 0] ls /simon watch
    [a, b]

    (2)在Hadoop103主机/simon节点创建子节点

    [zk: localhost:2181(CONNECTED) 4] create /simon/c "c"
    Created /simon/c

    (3)观察Hadoop104主机收到的子节点变化的监听

    [zk: localhost:2181(CONNECTED) 4] ls /simon watch
    WATCHER:: WatchedEvent state:SyncConnected type:NodeChildrenChanged path:/simon
  13. 删除节点

    [zk: localhost:2181(CONNECTED) 6] delete /simon/b/bd
    
    
  14. 递归删除节点

    [zk: localhost:2181(CONNECTED) 7] rmr /simon/b      
    
    
  15. 查看节点的状态

    [zk: localhost:2181(CONNECTED) 8] stat /simon
    cZxid = 0x100000004
    ctime = Thu Oct 24 21:59:31 CST 2019
    mZxid = 0x100000015
    mtime = Thu Oct 24 22:29:32 CST 2019
    pZxid = 0x100000021
    cversion = 6
    dataVersion = 1
    aclVersion = 0
    ephemeralOwner = 0x0
    dataLength = 11
    numChildren = 2

ZooKeeper学习笔记(四)——shell客户端命令操作的更多相关文章

  1. ZooKeeper学习笔记四:使用ZooKeeper实现一个简单的分布式锁

    作者:Grey 原文地址: ZooKeeper学习笔记四:使用ZooKeeper实现一个简单的分布式锁 前置知识 完成ZooKeeper集群搭建以及熟悉ZooKeeperAPI基本使用 需求 当多个进 ...

  2. Zookeeper学习笔记——2 Shell和Java API的使用

    ZooKeeper的使用一般都接触不到,因为平时工作甚少直接使用ZK.但是通过手动操作一下ZK,还是能对其中的门道了解各一二. shell 常用命令 help 查看所有支持的命令 [zk: local ...

  3. SQL学习笔记四之MySQL数据操作

    阅读目录 一 介绍 二 插入数据INSERT 三 更新数据UPDATE 四 删除数据DELETE 五 查询数据SELECT 六 权限管理 一 介绍 MySQL数据操作: DML =========== ...

  4. 吴裕雄--天生自然ShellX学习笔记:Shell test 命令

    Shell中的 test 命令用于检查某个条件是否成立,它可以进行数值.字符和文件三个方面的测试. 实例演示: num1=100 num2=100 if test $[num1] -eq $[num2 ...

  5. 吴裕雄--天生自然ShellX学习笔记:Shell printf 命令

    printf 命令模仿 C 程序库(library)里的 printf() 程序. printf 由 POSIX 标准所定义,因此使用 printf 的脚本比使用 echo 移植性好. printf ...

  6. 吴裕雄--天生自然ShellX学习笔记:Shell echo命令

    Shell 的 echo 指令与 PHP 的 echo 指令类似,都是用于字符串的输出.命令格式: echo string 您可以使用echo实现更复杂的输出格式控制. 1.显示普通字符串: echo ...

  7. ELK学习笔记之使用curl命令操作elasticsearch

    0x00 _cat系列 _cat系列提供了一系列查询elasticsearch集群状态的接口.你可以通过执行curl -XGET localhost:9200/_cat 1. 获取所有_cat系列的操 ...

  8. CMake学习笔记四-CMake常用命令

    CMake常用命令 PROJECT PROJECT(projectname [CXX] [C] [Java]) 指定工程名称,并可指定工程支持的语言.支持语言列表可忽略,默认支持所有语言 SET ...

  9. RabbitMQ学习笔记四:RabbitMQ命令(附疑难问题解决)

    本来今天是想做RabbitMQ之优先级队列的,但是,在RabbitMQ Server创建queue时,增加优先级的最大值,头脑发热写了9999999,导致电脑内存直接飙到100%,只能重启电脑,并卸载 ...

随机推荐

  1. Java RMI实践

    Java远程方法调用,即Java RMI(Java Remote Method Invocation).一种用于实现远程过程调用的应用程序编程接口.客户机上运行的程序可以调用服务器上的对象. 缺点:只 ...

  2. 2019年逾期率上升_24家头部P2P平台最新运营数据解读:8家近一年逾期率走势曝光

    python信用评分卡建模(附代码,博主录制) https://study.163.com/course/introduction.htm?courseId=1005214003&utm_ca ...

  3. mvn创建flink项目

    使用如下项目骨架创建flink项目,结果被官方的下面这个创建方式坑了.. mvn archetype:generate \ -DarchetypeGroupId=org.apache.flink \ ...

  4. 实战二:LoadRunner创建一个测试脚本

    问题一:执行脚本浏览器不能自动启动??? 原因:loadrunner11只支持IE9以下浏览器和火狐低版本浏览器 解决办法:1.IE浏览器取消勾选[启用第三方浏览器扩展]启动IE,从[工具]进入[In ...

  5. Jmeter之__CSVRead随机读取变量

    背景:当你需要从一些数据中随机的取值用的话可以用这个函数来实现__CSVRead __CSVRead函数用于对脚本进行参数化,当脚本中不同变量需要不同参数值时,可以考虑__CSVRead函数. _CS ...

  6. IsNull、rs、sum

    <% 'response.write (IsNull(rs("month_finish_count_price"))) If IsNull(rs("month_fi ...

  7. linux后台启动springboot并指定日志文件名称

    如果用nohup启动jar包的话,默认的日志文件就是nohup.out,那么如果启动多个jar包的话,看日志文件就麻烦了,因为他们都会写入到nohup.out文件中. 所以我们来指定一下不同jar包的 ...

  8. 零基础学Python-第一章 :Python介绍和安装-02.Python的发展历史与版本

    pthhon3.0对开发者带来了麻烦,因为2.0个3.0的程序并不是兼容的. 目前python3.0已经变成了真正的主力 官方版本和发行版 发行版会把常用的科学计算的包也给继承进来.这样就不用考虑包和 ...

  9. django.db.utils.OperationalError: (1251, 'Client does not support authentication protocol requested by server; consider upgrading MySQL client')

    1.打开MySQL: cmd里 net start mysql mysql -hlocalhost -uroot -p回车 进入mysql数据库 2. 命令如下: 1.use mysql; 2.alt ...

  10. HtmlHelper介绍

    目录 什么是HtmlHelper? 为什么要使用HtmlHelper? 清爽简单 修改路由不用改连接 很早就知道这个了,但是我一直不用.今天看了看书,准备以后都使用这个 什么是HtmlHelper? ...