zookeeper
Damoncai 12/15/2020 zk
# Zookeeper集群安装
# 依赖JDK环境
安装JDK
# 安装Zookeeper
解压文件
将配置文件zoo_sample.cfg复制一份改名为zoo.cfg
修改zoocfg配置信息
# 修改数据存储目录 dataDir=/home/zkData #添加集群节点信息 server.1=master:2888:3888 server.2=node1:2888:3888 server.3=node2:2888:3888
1
2
3
4
5
6
7向其他集群发送zookpeer文件
scp zookeeper-3.4.6/ node1:/home/ scp zookeeper-3.4.6/ node2:/home/
1
2
3各台服务器上创建数据存储目录
mkdir -p /home/zkData
1各台服务器zkData文件夹中添加myid文件并写入不同的序号
echo 1 > myid echo 2 > myid echo 3 > myid
1
2
3
4
5
# 基本信息
- cZxid:全局事务ID
- mZxid:修改事务ID
- pZxid:节点下最后创建节点的ID
# Zookeeper 分布式协调服务
# 基本概述
- 描述
- leader肯定会挂
- 服务不可用
- 不可靠集群
- 事实,zk集群及其高可用
- 如果有一种方式快速的恢复出一个leader
- zookeeper有两种运行状态
- 可用状态
- 不可用状态
- 不可用状态恢复到可用状态越快越好
- 不要把zookeeper当数据库用
# 存储结构 - 目录树结构
- zookeeper是个目录树结构
- node可以存储数据 1MB
- 节点可以分为四类
- 持久节点
- 持久序号节点
- 临时节点 - session
- 临时序号节点 - session
- 用途
- 统一配置管理 < 1M数据
- 分组管理 < -path 结构
- 统一命名 < -sequential
- 特性和保障
- 顺序性 - 客户端更新将按发送顺序应用
- 原子性 - 更新成功或失败,没有部分结果
- 统一视图 - 无论服务器连接到哪个服务器,客户端看到相同的服务视图
- 可靠性 - 一旦应用更新,它将从那时起持续到客户端覆盖更新
- 及时性 - 系统的客户视图保证在特定时间范围内饰是新的