一、重点
重点:filePath + fileName
二、回顾zookeeper(zk)安装
- jdk zookeeper 压缩包上传
- 解压出来 复制到哪
tar -zxvf 压缩包 -C path
注意:path路径:/user/local [jdk/hadoop]
/opt [zk] - 配置文件
重点:filePath + fileName
Eg: vi ~/.bashrc - 生效文件
重点:filePath + fileName
Eg: source ~/.bashrc - Zk配置
dataDirPath:/tmp
logPath - 启动zk服务
zkServer.sh start - 查看zk服务是否开启
jps
三、zookeeper客户端连接zk集群服务
- Client连接zk服务
zkCli.sh -server 主机IP:port端口号
Eg:zkCli.sh -server localhost:2181
[zk:localhost:2181(CONNECTED) 0]

- 关闭zk会话
close
[zk:localhost:2181(CLOSED) 1]

- 连接(开启)zk会话
connect
[zk:localhost:2181(CONNECTED) 2]

四、zookeeperClient 命令
- 查看指定路径下的节点(znode)
ls / 查看根节点下的节点
【zookeeper】
查看zookeeper节点下的节点
ls /zookeeper
[config,quota]

- 查看指定节点信息(状态status)
stat 节点(filePath/fileName)
Eg: stat /zookeeper

参数含义:
ctime(createtime):创建该节点的日期
mtime(modifytime):修改该节点的日期
cZxid:创建该节点的事务ID
mZxid:修改该节点的事务ID
pZxid:添加和移除子节点更改的事物ID
cversion(Children):当前节点子节点版本号
dataversion:当前节点数据版本号
dataLength:当前节点数据的长度
Eg:nodeName:School
nodeDate:sxzlxy (String.length)
numChidren:当前节点子节点的个数
ephemeralOwner:如果是临时节点,该属性是临时节点事务ID。如果不是临时节点,这个值是0
- 创建节点node
需求:
根节点nodeName: School
根节点data:sxzyxy
考虑:节点属性:持久[-s]/临时[-e]
如果这两个参数都不写、默认创建的是持久节点
语法:create [-e][-s] path data
Eg: create /School sxzyxy
Path: /
nodeName:School
nodeDate: sxzyxy
Eg: create /class6 大数据A1906

3.1 创建持久顺序节点
第一种:[-e][-s] 这两个参数都不加的时候,创建的是持久节点
第二种:create –s /dataZnode 大数据
dataZnode0000000008
注意:如果通过 –s创建持久顺序节点
顺序:0000000000 这个序列号每次从最后一位开始累加

验证:持久节点
第一种验证:关闭会话以后,再次连接服务(开启会话)如果该节点还存在说明该节点为持久节点
close

Connect

ls /

3.2 创建临时节点
只需要加参数 –e
语法:create –e path/nodeName nodedata
Eg:创建临时节点tmpZnode
Path:/
nodeName:tmpZnode
nodeData:可以不写默认是null
create –e /tmpZnode

3.3 创建临时顺序节点
语法:create –e –s path/nodeName nodeData
Eg:创建临时顺序节点t1Znode、t2Znode 、t3ZNode
Path:/test
nodeName: t1Znode、t2Znode 、t3ZNode
nodeData: t1Data、t2Data 、t3Data
create -e -s /test/t1Znode t1Data
create -e -s /test/t2Znode t2Data
create -e -s /test/t3Znode t3Data

ls /test

- 查看指定节点的data值
语法:get path/nodeName
Eg: nodeName:class6
Path:/
get /class6

特殊情况:创建节点的时候,不给data值
Eg:create /tmpZnode
get /tmpZnode 结果:null

Eg:通过 stat /class6
dataLength:23

Eg: 查看stat /tmpZnode
dateLength:0

-
修改指定节点的data值
语法:set path/nodeName value
Eg: nodeName:class6
Path:/
Value:把指定节点的原始值更改成现在指定的值 优秀的大数据A1906
set /class6 优秀的大数据A1906

-
删除节点
语法:delete path
Eg: delete /SC

注意:如果被删除的节点存在子节点,则删除不掉会提示:node not empy:/School

如果想删除带有子节点的父节点只需要把其子节点一一删除即可
School
》Student delete /School/Student
》Teacher delete /School/Teacher
delete /School
- 退出zkCli 命令
quit

五 课堂任务
-
创建Znode节点 class1Znode,并且指定data数据:大数据1班
create /class1Znode 大数据1班


-
查看class1Znode节点的data值
get /class1Znode
res: 大数据1班

-
修改class1Znode 节点的 data值
set /class1Znode bigdata

-
在class1Znode节点下创建其子节点StudentZnode ,指定data值:AllTheStudents
create /class1Znode/StudentZnode AllTheStudents

-
在StudentZnode节点下创建3个持久顺序节点[-s],3个临时节点[-e]
create –s /class1Znode/StudentZnode/s_jason
create –s /class1Znode/StudentZnode/s_smith
create –s /class1Znode/StudentZNode/s_toby


create –e /class1Znode/StudentZnode/t_w
create –e /class1Znode/StudentZnode/t_b
create –e /class1Znode/StudentZnode/t_l

-
删除StudentZnode节点下的其中一个持久节点和临时节点
delete /class1Znode/StudentZnode/s_toby0000000002
delete /class1Znode/StudentZnode/t_w

-
退出zkCli 命令
quit
本文详细介绍了Zookeeper客户端的使用,包括如何连接Zookeeper集群,常用的客户端命令如ls、stat、create、get、set、delete等,以及创建持久节点、临时节点、顺序节点的操作。同时,给出了课堂任务,涉及节点数据的读写、修改和删除操作。
447

被折叠的 条评论
为什么被折叠?



