zookeeper节点相关命令

在zk安装成功后,怎么通过客户端连接呢?

        要回答这个问题,先明确一下什么叫做zk的客户端,zk自带了进入zookeeper交互模式的脚本------zkCli.sh,直接执行"./zkCli.sh"就可以进入与zookeeper的交互模式了 。比如现在我在node3机器上执行这个zkCli.sh了,那么node3就相当于一个客户端了。(比如java程序连接了zkserver集群,那么java程序就是客户端)。

在113上连接zk集群,其中113机器是我随便挑的,角色是个follower,结果类似下图:

[root@node113 /usr/local/zookeeper/zookeeper-3.4.9/bin]#./zkCli.sh 
......(打印的很多信息)
[zk: localhost:2181(CONNECTED) 0]

查看zk根目录下的所有znode节点:

[zk: localhost:2181(CONNECTED) 2] ls /
[20171214, zookeeper]

进入与zookeeper的交互模式后,有哪些命令可以使用呢,可以使用help命令来查看帮助:

[zk: localhost:2181(CONNECTED) 3] help
ZooKeeper -server host:port cmd args
	connect host:port
	get path [watch]
	ls path [watch]
	set path data [version]
	rmr path
	delquota [-n|-b] path
	quit 
	printwatches on|off
	create [-s] [-e] path data acl
	stat path [watch]
	close 
	ls2 path [watch]
	history 
	listquota path
	setAcl path acl
	getAcl path
	sync path
	redo cmdno
	addauth scheme auth
	delete path [version]
	setquota -n|-b val path

创建一个节点:

[zk: localhost:2181(CONNECTED) 5] create /appdata hello
Created /appdata
[zk: localhost:2181(CONNECTED) 6] ls /
[appdata, 20171214, zookeeper]
[zk: localhost:2181(CONNECTED) 7]

说明:节点,在zookeeper里面叫znode节点,create 的时候可以加-e或者-s选项。-e:ephemeral 表示创建的是临时性节点,客户端通过quit退出后短暂的节点就没有了,默认是persist的,即默认创建的节点是持久化的,除非你自己删除,不然永久存在。

-s:sequential,表示创建的是有序列的节点。-s类型的默认会在重名的znode节点名字后加序列号以避免重复。 

得到节点里面的数据:

[zk: localhost:2181(CONNECTED) 7] get /appdata
hello
cZxid = 0x300000002
ctime = Fri Jan 05 02:37:33 EST 2018
mZxid = 0x300000002
mtime = Fri Jan 05 02:37:33 EST 2018
pZxid = 0x300000002
cversion = 0
dataVersion = 0
aclVersion = 0
ephemeralOwner = 0x0
dataLength = 5
numChildren = 0

    说明:cZxid:表示节点/appdata创建时zk分配的id。

    mZxid:modify zid

    numChildren:子目录的格式

查看某个目录的子节点:

[zk: localhost:2181(CONNECTED) 16] create /201801  test
Created /201801
[zk: localhost:2181(CONNECTED) 17] create /201801/05  test2
Created /201801/05
[zk: localhost:2181(CONNECTED) 18] ls /201801
[05]

修改znode节点里面的数据,使用"set 节点路径  内容"格式的命令:

[zk: localhost:2181(CONNECTED) 19] set /appdata hi  
cZxid = 0x300000002
ctime = Fri Jan 05 02:37:33 EST 2018
mZxid = 0x300000005
mtime = Fri Jan 05 02:47:37 EST 2018
pZxid = 0x300000002
cversion = 0
dataVersion = 1
aclVersion = 0
ephemeralOwner = 0x0
dataLength = 2
numChildren = 0
[zk: localhost:2181(CONNECTED) 20] get /appdata
hi
cZxid = 0x300000002
ctime = Fri Jan 05 02:37:33 EST 2018
mZxid = 0x300000005
mtime = Fri Jan 05 02:47:37 EST 2018
pZxid = 0x300000002
cversion = 0
dataVersion = 1
aclVersion = 0
ephemeralOwner = 0x0
dataLength = 2
numChildren = 0

如何退出zk的客户端,使用“quit”命令:

[zk: localhost:2181(CONNECTED) 21] quit
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值