Zookeeper:CLI(一)
ZooKeeper命令行界面(CLI)用于与ZooKeeper集成交互,用于开发目的。它对于调试和使用不同的选项非常有用。
要执行管理员命令行界面操作,首先打开管理员服务器(“bin/zkServer.sh start”),然后打开管理员客户端(“bin/zkCli.sh”)。客户端启动后,您可以执行以下操作:
创建znodes
获取数据
监控znode的改变
设置数据
创建znode的子集
查看znode的子集
检查状态
删除znode
现在让我们用一个例子一个接一个地试试上面的命令。
创建znodes
用指定的路径创建一个znode。flag参数指定创建的znode是短暂的、持久的还是连续的。默认情况下,所有znodes都是持久的。
当会话到期或客户端断开连接时,短暂的znodes(标志:e)将被自动删除。
顺序znode保证znode路径是唯一的。
ZooKeeper集成将在znode路径中添加序列号和10位数字填充。例如,znode路径/myapp将转换为/my app 00000000001,下一个序列号将为/my app 000000002。如果没有指定标志,则znode被认为是持久的。
语法
create /path /data
例子
create /FirstZnode “Myfirstzookeeper-app”
输出
[zk: localhost:2181(CONNECTED) 0] create /FirstZnode “Myfirstzookeeper-app” Created /FirstZnode
要创建顺序znode,请添加如下所示的-s 标志。
语法
create -s /path /data
例子
create -s /FirstZnode second-data
输出
[zk: localhost:2181(CONNECTED) 2] create -s /FirstZnode “second-data” Created /FirstZnode0000000023
要创建一个短暂的Znode,添加如下所示的-e标志。
语法
create -e /path /data
例子
create -e /SecondZnode “Ephemeral-data”
输出
[zk: localhost:2181(CONNECTED) 2] create -e /SecondZnode “Ephemeral-data” Created /SecondZnode
请记住,当客户端连接丢失时,短暂的znode将被删除。您可以尝试退出动物园管理员命令行界面,然后重新打开命令行界面。
获取数据
它返回znode的关联数据和指定znode的元数据。您将获得数据上次修改时间、修改地点以及数据相关信息等信息。此命令行界面还用于分配监视,以显示有关数据的通知。
语法
get /path
实例
get /FirstZnode
输出
[zk: localhost:2181(CONNECTED) 1] get /FirstZnode “Myfirstzookeeper-app” cZxid = 0x7f ctime = Tue Sep 29 16:15:47 IST 2015 mZxid = 0x7f mtime = Tue Sep 29 16:15:47 IST 2015 pZxid = 0x7f cversion = 0 dataVersion = 0 aclVersion = 0 ephemeralOwner = 0x0 dataLength = 22 numChildren = 0
要访问顺序znode,您必须输入znode的完整路径。
实例
get /FirstZnode0000000023
输出
[zk: localhost:2181(CONNECTED) 1] get /FirstZnode0000000023 “Second-data” cZxid = 0x80 ctime = Tue Sep 29 16:25:47 IST 2015 mZxid = 0x80 mtime = Tue Sep 29 16:25:47 IST 2015 pZxid = 0x80 cversion = 0 dataVersion = 0 aclVersion = 0 ephemeralOwner = 0x0 dataLength = 13 numChildren = 0