zookeeper命令行操作
zookeeper的本质是一个文件系统,使用key-value键值对表示,进入文件系统后的所有操作,路径必须从/开始。
查看节点:ls path
刚安装好zookeeper服务,根目录下只有zookeeper节点。
[zk: hadoop102:2181(CONNECTED) 0] ls / [zookeeper]
创建节点:create [-e] [-s] nodename “nodevalue”
[zk: hadoop102:2181(CONNECTED) 4] create /shuihu "shilaian" Created /shuihu [zk: hadoop102:2181(CONNECTED) 5] ls / [shuihu, zookeeper]
获取节点的值:get [-s] nodename
[zk: hadoop102:2181(CONNECTED) 6] get /shuihu shilaian [zk: hadoop102:2181(CONNECTED) 7] get -s /shuihu shilaian cZxid = 0x40000001e ctime = Sun May 08 18:30:12 CST 2022 mZxid = 0x40000001e mtime = Sun May 08 18:30:12 CST 2022 pZxid = 0x40000001e cversion = 0 dataVersion = 0 aclVersion = 0 ephemeralOwner = 0x0 dataLength = 8 numChildren = 0
不加-s参数只单纯获取节点的值,加-s参数可以获取节点的各种信息,这些信息含义如下:
1、czxid:创建节点的事务
每次修改ZooKeeper状态都会产生一个ZooKeeper事务ID,事务ID是ZooKeeper中所有修改的总的次序。每次修改都是唯一的zxid,如果zxid1小于zxid2,那么zxid1在zxid2之前发生
2、ctime:znode被创建的毫秒数,从1970年开始
3、mzxid:znode最后更新的事务zxid
4、mtime:znode最后修改的毫秒数从,1970年开始
5、pZxid:znode最后更新的子节点zxid
6、cversion:znode子节点变化号,znode子节点修改次数
7、dataversion:znode数据变化号
8、aclVersion:znode访问控制列表的变化号
9、ephemeralOwner:如果是临时节点,这个是znode拥有者的session id,如果不是临时节点则是0
10、dataLength:znode的数据长度
11、numChildren:znode子节点数量
修改节点的值:set nodename "nodevalue"
[zk: hadoop102:2181(CONNECTED) 8] set /shuihu "haohan" [zk: hadoop102:2181(CONNECTED) 9] get /shuihu haohan
删除节点:delete nodename
[zk: hadoop102:2181(CONNECTED) 10] delete /shuihu [zk: hadoop102:2181(CONNECTED) 11] ls / [zookeeper]