持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第8天,点击查看活动详情
安装zookeeper
- zookeeper底层依赖jdk,先进行jdk的安装,上传并解压jdk
//解压jdk
tar -xzvf jdk-版本.tar.gz
- 配置jdk环境变量
- java -version检测jdk安装是否成功
- 上传并解压zookeeper包
// 解压zookeeper
tar -xzvf zookeeper-版本.tar.gz
- 准备配置文件
1. 进入conf目录
2. 复制配置文件
3. zookeeper根目录下新建data目录
4. vi 修改配置文件中的dataDir,用于存储zookeeper中数据的内存快照、及事物日志文件
- 启动zookeeper
1. cd进入zookeeper的bin目录
2. 运行./zkServer.sh start命令启动zookeeper
3. 运行zkServer.sh stop 命令停止zookeeper
4. 运行zkServer.sh status 命令查看zookeeper状态
zookeeper节点说明
znode的主要属性有:
cZxid = 0x1
ctime = May Dec 11 12:00:00 CST 2022
mZxid = 0x1
mtime = May Dec 11 12:00:00 CST 2022
pZxid = 0x4
cversion = 0
dataVersion = 1
aclVersion = 0
ephemeralOwner = 0x0
dataLength = 1
numChildren = 0
说明:
- cZxid:数据节点创建时的事务 ID
- ctime:数据节点创建时的时间
- mZxid:数据节点最后一次更新时的事务 ID
- mtime:数据节点最后一次更新时的时间
- pZxid:数据节点的子节点最后一次被修改时的事务 ID
- cversion:子节点的更改次数
- dataVersion:节点数据的更改次数
- aclVersion:节点的 ACL(权限相关属性) 的更改次数
- ephemeralOwner:如果节点是临时节点,则表示创建该节点的会话的
- SessionID;如果节点是持久节点,则该属性值为 0
- dataLength:数据内容的长度
- numChildren:数据节点当前的子节点个数
zookeeper节点类型
zookeeper中有两大类型节点,分别为临时节点和持久化(永久)节点。节点的类型在创建时被确定,且不能改变。
-
临时节点:生命周期依赖于创建它们的会话。一旦会话结束,临 时节点自动删除,或手动删除。每个临时对所有的客户端可见。ZooKeeper的临时节点不能拥有子节点。
-
持久化节点:该节点的生命周期不依赖于会话,只有显示执行删除操作时才会被删除。
其中临时节点和持久化节点分别还有普通节点和有序节点之分,有序节点在创建时,zookeeper会同时分配一个自增的序号,下次创建会在这个序号的基础上递增。