zoukankan      html  css  js  c++  java
  • ZooKeeper常用命令

      1. 在ZooKeeper ensemble中怎么查找Leader
        这里提供两种方法
        一种是在每个node上执行下面的命令看看哪个node是下面的输出
        # grep LEAD /var/log/zookeeper/zookeeper-zookeeper-server-xyz.out
        2016-02-29 22:33:47,113 - INFO  [QuorumPeer[myid=3]/0:0:0:0:0:0:0:0:2181:QuorumPeer@829] - LEADING
        2016-02-29 22:33:47,114 - INFO  [QuorumPeer[myid=3]/0:0:0:0:0:0:0:0:2181:Leader@358] - LEADING - LEADER ELECTION TOOK - 9066

        另一种方法是在每个node上使用nc命令

        # echo stat | nc localhost 2181 | grep Mode
        Mode: leader
        
        # echo stat | nc localhost 2181 | grep Mode
        Mode: follower
      2. 创建一个名叫znode_test的znode,数据是znode_test_data
        [zk: localhost:2181(CONNECTED) 0] ls /
        [zookeeper]
        [zk: localhost:2181(CONNECTED) 1] create /znode_test znode_test_data
        Created /znode_test
        [zk: localhost:2181(CONNECTED) 2] get /newznode
        znode_test_data
        cZxid = 0x200000002
        ctime = Wed Oct 14 05:19:00 EDT 2015
        mZxid = 0x200000002
        mtime = Wed Oct 14 05:19:00 EDT 2015
        pZxid = 0x200000009
        cversion = 1
        dataVersion = 0
        aclVersion = 0
        ephemeralOwner = 0x0
        dataLength = 6
        numChildren = 1
      3. 创建一个递归的名叫znode_rtest3的znode,数据为znode_rtest_data
        [zk: localhost:2181(CONNECTED) 3] ls /
        [zookeeper, znode_test]
        [zk: localhost:2181(CONNECTED) 4] create /znode_rtest1/znode_rtest2/znode_rtest3 znode_rtest_data3
        Node does not exist: /znode_rtest1/znode_rtest2/znode_rtest3
        [zk: localhost:2181(CONNECTED) 5] create /znode_rtest1 znode_rtest_data1
        Created /znode_rtest1
        [zk: localhost:2181(CONNECTED) 6] create /znode_rtest1/znode_rtest2/znode_rtest3 znode_rtest_data3
        Node does not exist: /znode_rtest1/znode_rtest2/znode_rtest3
        [zk: localhost:2181(CONNECTED) 7] create /znode_rtest1/znode_rtest2 znode_rtest_data2
        Created /znode_rtest1/znode_rtest2
        [zk: localhost:2181(CONNECTED) 8] create /znode_rtest1/znode_rtest2/znode_rtest3 znode_rtest_data3
        Created /znode_rtest1/znode_rtest2/znode_rtest3 
      4. 删除一个Znode
        delete /<znode>

         如果想要删除一个child znode

        delete /<parent_znode>/<child_znode

        递归删除znode(小心使用该命令)

        rmr /<znode-with-child>
      5. 读取Znode数据
        如果你想要读取某个znode的数据,你必须要拥有该znode的R权限(注意是不是拥有ACL的配置)
        get /<znode-name>
      6. 重写Znode数据
        你必须在拥有这个znode的W权限(注意是不是拥有ACL的配置)
        set /<znode-name> <new-data>
      7. 查看某个znode的权限
        [zk: localhost:2181(CONNECTED) 27] getAcl /yandufeng_test
        'world,'anyone
        : cdrwa
      8. World Schema
        World schema有一个ID(anyone),代表世界上的所有用户,例如,输入下面的命令来使任何用户可以访问那个znode
        setAcl /newznode world:anyone:crdwa
      9. Auth Schema
        当你使用Auth Schema的时候,你必须提供ID,否则将会报错,下面是错误的例子
        [zk: localhost:2181(CONNECTED) 36] setAcl /yandufeng_test auth:crdwa
        auth:crdwa does not have the form scheme:id:perm
        Acl is not valid : /yandufeng_test

         正确的形式应该是

        setAcl /newznode auth:username:password:crdwa
  • 相关阅读:
    element ui 表单清空
    element ui 覆盖样式 方法
    element ui 修改表单值 提交无效
    element ui 抽屉里的表单输入框无法修改值
    element ui 抽屉首次显示 闪烁
    css 左侧高度 跟随右侧内容高度 自适应
    PICNUF框架
    elementui 抽屉组件标题 出现黑色边框
    vue 子组件跨多层调用父组件中方法
    vue 编辑table 数据 未点击提交,table里的数据就发生了改变(深拷贝处理)
  • 原文地址:https://www.cnblogs.com/yandufeng/p/6365447.html
Copyright © 2011-2022 走看看