Zookeeper的常用命令本篇不包括权限acl相关以及集群相关,那些要另开篇章。
使用的版本是Zookeeper3.6.1,不同版本会有一定的差异性。

新增命令

语法:create [-s] [-e] [-c] [-t ttl] path [data] [acl]
参数:使用[]包含的是可选参数。
[-s] : 创建有序节点。
[-e] : 创建临时节点。
[-c] : 创建一个容器节点。
[t ttl] : 创建一个TTL节点, -t 时间(单位毫秒)。
path: 路径 ,因为没有中括号,所以是必须参数。
[data]:节点的数据,可选,如果不使用时,节点数据就为null。
[acl] :权限相关,后面文章讲。
例子:
创建持久化节点:

create /node1  "123456789"

创建持久化有序节点:

create -s /node2  "123456789"

创建临时节点

create -e /node3 "123456879"

创建临时有序节点

create -e -s /node3 "123456879"

创建容器节点

create -c /node3 "123456879"

创建TTL节点

create -t 2000 /node3 "123456879"

创建有序节点时,Zookeeper会在我们知道的节点名称后面补一个有序的,唯一的递增数字后缀。

zookeeper 制作rpm zookeeper create_zookeeper 制作rpm

查看命令

get [-s] [-w] path
查看节点数据,我用的是3.6.1的版本,只会打印节点数据,之前的某个版本及之前是查看节点数据加节点元信息的。如果现在要返回节点数据加节点元信息可以使用-s参数。
[-s] :查看节点数据加元信息。
[-w] : 查看节点并为节点添加一个监听,当节点被修改时,该客户端会收到一个回调。之前版本是在path 后面加一个watch实现:get path watch 。

zookeeper 制作rpm zookeeper create_子节点_02


stat [-w] path //查看节点元信息。

[-w] :查看节点并为节点添加一个监听,当节点被修改时,该客户端会收到一个回调。之前版本是在path 后面加一个watch实现:stat path watch 。

zookeeper 制作rpm zookeeper create_zookeeper_03


ls [-s] [-w] [-R] path //查看某一节点下的子节点。

[-s] : 查看某一节点下的子节点加当前节点的元信息,相当于之前版本的ls2命令。

[-w] :查看节点并为节点添加一个监听,当节点被修改时,该客户端会收到一个回调。之前版本是在path 后面加一个watch实现:ls path watch 。

[-R]: 返回当前节点路径,当前节点的子节点,当前节点的子节点的子节点(递归)。

zookeeper 制作rpm zookeeper create_zookeeper 制作rpm_04


zookeeper 制作rpm zookeeper create_zookeeper 制作rpm_05


ls2 path //返回子节点加当前节点的信息。 之前某个版本有,但是在3.6.1该命令被删除了。以参数形式集成到ls中。history ://查看该客户端登录以来使用的最进执行的11个命令。

zookeeper 制作rpm zookeeper create_子节点_06


redo cmdno //再执行一次指定的历史命令。cmdno 是执行history命令时显示命令左边的index。version :查看Zookeeper版本。

zookeeper 制作rpm zookeeper create_zookeeper_07

getAllChildrenNumber path :获取指定节点的所有子节点个数,包括子节点的子节点递归。getAllChildrenNumber / 代表获取Zookeeper所有节点的个数(/节点除外)。

getEphemerals path :获取该客户端会话创建的、指定节点下的所有临时子节点列表,包括持久子节点下的临时子节点递归。

zookeeper 制作rpm zookeeper create_分布式_08

修改命令

set [-s] [-v version] path data 修改节点数据,默认没有返回信息。
[-s] :返回修改后节点的元信息。
[-v version] :指定数据的版本,版本不符合时修改失败,类似关系型数据库的乐观锁。
path :修改节点路径。
data :修改的数据。

zookeeper 制作rpm zookeeper create_数据_09

删除命令

delete [-v version] path //删除节点,删除的节点必须没有任何子节点,否则会删除失败。
[-v version] :指定数据的版本,版本不符合时删除失败,类似关系型数据库的乐观锁。

deleteall path // 递归节点。会递归删除该节点及其所有子节点。之前版本是rmr path。

其他命令

close 关闭客户端连接,把连接设置为关闭状态,实质关闭Socket连接,关闭之后发送命令就会报错。

zookeeper 制作rpm zookeeper create_子节点_10

connect host:port 连接其他Zookeeper服务器。

printwatches on|off 是否开启watch机制,如果设置为off,则该客户端监听的节点事件都不会生效、默认on。

removewatches path 删除在某节点上设置的监听。

sync path //把当前Zookeeper服务器的指定节点同步到主从集群中的其他Zookeeper服务器上。