Zookeeper常用基础命令操作

2019-05-26  本文已影响0人  逆水寻洲

以下内容参照自Zookeeper系列一:Zookeeper基础命令操作,并在本地电脑上测试实现。

启动zk服务

./zkServer.sh start

dengzhilideMacBook-Pro:bin dengzhili$ ./zkServer.sh  start
JMX enabled by default
Using config: ./../conf/zoo.cfg
-n Starting zookeeper ... 
STARTED
停止zk服务

./zkServer.sh stop

查看zk的运行状态

./zkServer.sh status

dengzhilideMacBook-Pro:bin dengzhili$ ./zkServer.sh status 
JMX enabled by default
Using config: ./../conf/zoo.cfg
Mode: standalone (单机状态)
客户端链接zk

./zkCli.sh

WATCHER::

WatchedEvent state:SyncConnected type:None path:null
help 查看客户端帮助命令
[zk: localhost: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
    get path [watch]
    create [-s] [-e] path data acl
    addauth scheme auth
    quit 
    getAcl path
    close 
    connect host:port
查看路径下的节点信息(跟Linux ls命令作用类似)

ls path [watch]

[zk: localhost:2181(CONNECTED) 1] ls /
[dzl-test, app, zookeeper, dzl, dubbo, app1]
获取节点数据和更新信息

get path [watch]

[zk: localhost:2181(CONNECTED) 2] get /app
test-version
cZxid = 0x3d
ctime = Sun May 26 18:37:34 CST 2019
mZxid = 0x4a
mtime = Sun May 26 18:47:59 CST 2019
pZxid = 0x50
cversion = 4
dataVersion = 3
aclVersion = 0
ephemeralOwner = 0x0
dataLength = 12
numChildren = 2

内容的具体含义:
cZxid :创建节点的id
ctime : 节点的创建时间
mZxid :修改节点的id
mtime :修改节点的时间
pZxid :子节点的id
cversion : 子节点的版本
dataVersion : 当前节点数据的版本
aclVersion :权限的版本
ephemeralOwner :判断是否是临时节点
dataLength : 数据的长度
numChildren :子节点的数量

获得节点的更新信息

stat path [watch]

[zk: localhost:2181(CONNECTED) 3] stat /app
cZxid = 0x3d
ctime = Sun May 26 18:37:34 CST 2019
mZxid = 0x4a
mtime = Sun May 26 18:47:59 CST 2019
pZxid = 0x50
cversion = 4
dataVersion = 3
aclVersion = 0
ephemeralOwner = 0x0
dataLength = 12
numChildren = 2
ls2

ls命令和stat命令的整合

[zk: localhost:2181(CONNECTED) 4] ls2 /app
[sec0000000000, sec0000000002]
cZxid = 0x3d
ctime = Sun May 26 18:37:34 CST 2019
mZxid = 0x4a
mtime = Sun May 26 18:47:59 CST 2019
pZxid = 0x50
cversion = 4
dataVersion = 3
aclVersion = 0
ephemeralOwner = 0x0
dataLength = 12
numChildren = 2
创建持久节点(默认)

create path data acl

[zk: localhost:2181(CONNECTED) 8] create /app appData
Created /app
[zk: localhost:2181(CONNECTED) 9] get /app   
appData
cZxid = 0x3d
ctime = Sun May 26 18:37:34 CST 2019
mZxid = 0x3d
mtime = Sun May 26 18:37:34 CST 2019
pZxid = 0x3d
cversion = 0
dataVersion = 0
aclVersion = 0
ephemeralOwner = 0x0
dataLength = 7
numChildren = 0
创建临时节点

create -e path data acl

[zk: localhost:2181(CONNECTED) 10] create -e /app-temp tempData
Created /app-temp
[zk: localhost:2181(CONNECTED) 11] get /app-temp
tempData
cZxid = 0x3e
ctime = Sun May 26 18:39:48 CST 2019
mZxid = 0x3e
mtime = Sun May 26 18:39:48 CST 2019
pZxid = 0x3e
cversion = 0
dataVersion = 0
aclVersion = 0
ephemeralOwner = 0x16af3add6330000
dataLength = 8
numChildren = 0
#断开重连之后,临时节点自动消失
创建顺序节点 自动累加

create -s path data acl

[zk: localhost:2181(CONNECTED) 12] create -s /app/sec seq
Created /app/sec0000000000
[zk: localhost:2181(CONNECTED) 13] create -s /app/sec seq
Created /app/sec0000000001
[zk: localhost:2181(CONNECTED) 14] create -s /app/sec seq
Created /app/sec0000000002
修改节点

set path data [version]

[zk: localhost:2181(CONNECTED) 8] set /app info   
cZxid = 0x3d
ctime = Sun May 26 18:37:34 CST 2019
mZxid = 0x59
mtime = Sun May 26 23:48:30 CST 2019
pZxid = 0x50
cversion = 4
dataVersion = 6
aclVersion = 0
ephemeralOwner = 0x0
dataLength = 4
numChildren = 2
删除节点

delete path [version]

[zk: localhost:2181(CONNECTED) 3] ls /app                 
[sec0000000000, sec0000000001, sec0000000002]
[zk: localhost:2181(CONNECTED) 5] delete /app/sec0000000001
[zk: localhost:2181(CONNECTED) 6] ls /app                  
[sec0000000000, sec0000000002]
上一篇 下一篇

猜你喜欢

热点阅读