基本操作命令
ZooKeeper命令行工具类似于Linux的shell环境,不过功能肯定不及shell啦,但是使用它我们可以简单的对ZooKeeper进行访问,数据创建,数据修改等操作.
命令行工具的一些简单操作如下:
zkCli.sh客户端连接命令ls 与 ls2 命令
get 与 stat 命令
create 命令
set 命令
delete 命令
客户端连接
使用zkCli.sh -server 127.0.0.1:2181连接到 ZooKeeper 服务,连接成功后,系统会输出 ZooKeeper 的相关环境以及配置信息。查看znode结构
ls命令:显示根目录下文件:
ls /使用 ls 命令来查看当前 ZooKeeper 中所包含的内容
[zk: localhost:2181(CONNECTED) 4] ls /
[zookeeper]第一次部署的ZoopKeeper集群,默认在根节点“/”下面有一个叫做/zookeeper的保留节点
ls2命令:显示根目录下文件:
ls2 /查看当前节点数据并能看到更新次数等数据
status命令+ls命令的结果=ls2命令结果
创建节点,并设置初始内容
语法:
-e创建临时节点,当客户端断开连接,session回话结果,心跳时间检测,临时节点消失(注意非实时,而是会在比如10s,20s检测)-s创建顺序节点。
操作:
create /zk "test"创建一个新的 znode节点“ zk ”以及与它关联的字符串
创建顺序节点:
获取节点内容
get /zk 确认 znode 是否包含我们所创建的字符串
修改节点内容
语法:
version - 乐观锁
操作:
set /zk "zkbak" 对 zk 所关联的字符串进行设置
cZxid - 创建了这个节后,zookeeper为这个节点分配的id
ctime - create time,节点创建的时间
mZxid - 修改后,zookeeper为这个节点分配的id
mtime - 节点修改的时间,当没有修改过,则创建时间和修改时间是一样的
pZxid - 子节点的id
cversion - 子节点的版本号
dataVersion - 当前数据的版本号
aclVersion - 权限版本号
ephemeralOwner - 根据值可区分是否是临时节点
dataLength - 数据的长度
numChildren - 下面有几个子节点
dataVersiond 值也由原来的0变成了1,这是因为刚才的更新操作导致该节点的数据版本也发生了变更。
删除节点
语法:
操作:
delete /zk 将刚才创建的 znode 删除
注意无法删除一个包含子节点的节点
关闭客户端连接
quit
帮助命令
help
Last updated
Was this helpful?