您的位置:首页 > 运维架构 > Shell

zookeeper的常用shell命令

2020-08-03 17:32 633 查看

常用shell命令如下:

zookeeper
——
getting started
——https://zookeeper.apache.org/doc/r3.4.14/zookeeperStarted.html#sc_FileManagement

(1)查询

get /hadoop
查看结点的数据和属性
stat /hadoop
查看结点的属性

(2)创建

create [-s] [-e] path data # 其中 -s 为有序结点,-e 临时结点(默认是持久结点)

创建结点并写入数据:

create /hadoop "123456"  # 此时,如果quit退出后再./ZkCient.sh 登入
# 再用输入 get /hadoop 获取,结点依然存在(永久结点)

create -s /a "a"         # 创建一个持久化有序结点,创建的时候可以观察到返回的数据带上了一个id
create -s /b "b"         # 返回的值,id递增了

create -s -e /aa "aa"    # 依然还会返回自增的id,quit后再进来,继续创建,id依然是往后推的

create /aa/xx            # 继续创建结点,可以看到pZxid变化了

(3)更新

更新结点的命令是

set
,可以直接进行修改,如下:

set path [version]

set /hadoop "345"        # 修改结点值

set /hadoop "hadoop-x" 1 # 也可以基于版本号进行更改,类似于乐观锁,当传入版本号(dataVersion)
# 和当前结点的数据版本号不一致时,zookeeper会拒绝本次修改

(4)删除

删除结点的语法如下:

delete path [version]
set
方法相似,也可以传入版本号

delete /hadoop           # 删除结点
delete /hadoop 1         # 乐观锁机制,与set 方法一致

要想删除某个结点及其所有后代结点,可以使用递归删除,命令为

rmr path

(5)查看结点列表

ls /hadoop               # 可以查看结点的列表
ls2 /hadoop              # 可以查看结点的列表以及目标结点的信息

ls /                     # 根节点

(6)监听器get path [watch] | stat path [watch]

使用

get path [watch]
注册的监听器能够在结点内容发生改变的时候,向客户端发出通知。需要注意的是
zookeeper
的触发器是一次性的(
One-time trigger
),即触发一次后就会立即失效

get /hadoop watch        # get 的时候添加监听器,当值改变的时候,监听器返回消息
set /hadoop 45678        # 测试

(7)监听器ls\ls2 path [watch]

使用

ls path [watch] 或 ls2 path [watch]
注册的监听器能够监听该结点下所有子节点增加删除操作

ls /hadoop watch         # 添加监听器
set /hadoop/node "node"
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: