zkCli的使用 常用的节点增删改查命令用法
1. 建立会话 命令格式:zkCli.sh -timeout 0 -r -server ip:port
./zkCli.sh -server
-timeout
:指定当前会话的超时时间。zookeeper依靠与客户端之间的心跳判断一个会话是否有效,timeout指服务器如果在timeout指定的时间内没有收到客户端的心跳包,就认为这个客户端失效,单位毫秒。 -r
:read-only。zookeeper的只读模式指zookeeper的服务器如果和集群中半数或半数以上的服务器失去连接以后,该服务器就不在处理客户端的请求了,但有时候希望这种故障发生时,机器可以向外提供读服务,这种情况下就可以使用只读模式。 -server
: 连接的服务器地址和端口。
2. 获取节点的子节点列表 命令格式:ls path
ls /
默认只有zookeeper这个节点存在。
3. 获取节点的状态 命令格式:stat path
stat /zookeeper
4. 创建节点 命令格式:create [-s] [-e] path data acl
-s:
表示创建顺序节点 -e:
表示创建临时节点
acl:表示创建的节点路径
data:表示创建的节点的数据内容
创建一个 node节点,节点为为1
create /node
5. 更改节点数据 命令格式:set path data [version]
更改数据时,携带dataVersion 可以更新特定版本,避免多人修改出现问题。
6. 获取节点的数据,其结果是当前节点的值和stat该路径的值放在一起 命令格式:get path
get /node
7.删除节点 命令格式:delete path [version]
delete /node
递归删除带有子节点的节点 命令格式:rmr path
rmr /node
8. 历史记录查看与重新执行 history redo [num]
[zk: 127.0.0.1:(CONNECTED) ] history - delquota -b /node2 - setquota -n /node2 - listquota /node2 - ls /node2 - get /node2 - create /node2/dfd - listquota /node2 - delquota -n /node2 - delquota -b /node2 - h - history [zk: slave1:(CONNECTED) ] redo [dfd]
9. 打开新的连接和关闭
connect close
特别说明:zookeeper默认的客户端连接端口是 2182 本例中,端口作了调整 2183