文档原始资料来自尚硅谷和尚学堂,本人整理相关知识点
第 1 章 Zookeeper 入门
1.1 概述
Zookeeper 是一个开源的分布式的,为分布式框架提供协调服务的 Apache 项目
zookeeper工作机制 1.2 特点
1.3 数据结构
ZooKeeper 数据模型的结构与 Unix 文件系统很类似,整体上可以看作是一棵树,每个节点称做一个 ZNode。每一个 ZNode 默认能够存储 1MB 的数据,每个 ZNode 都可以通过其路径唯一标识。
1.4 应用场景
提供的服务包括:统一命名服务、统一配置管理、统一集群管理、服务器节点动态上下线、软负载均衡等。
统一命名服务
统一配置管理
统一集群管理
服务器动态上下线
软负载均衡
1.5 下载地址
1)官网首页:
https://zookeeper.apache.org/
2)下载截图
3)下载 Linux 环境安装的 tar 包
第 2 章 Zookeeper 本地安装
2.1 本地模式安装
1
)安装前准备
(
1
)安装
JDK
(2)拷贝
apache-zookeeper-3.5.7-bin.tar.gz
安装包到
Linux
系统下
(3)解压到指定目录
[atguigu@hadoop102 software]$ tar -zxvf apache-zookeeper-3.5.7-bin.tar.gz -C /opt/module/
(4)修改名称
[atguigu@hadoop102 module]$ mv apache-zookeeper-3.5.7-bin/ zookeeper-3.5.7
2
)配置修改
(
1
)将
/opt/module/zookeeper-3.5.7/conf
这个路径下的
zoo_sample.cfg
修改为
zoo.cfg
;
[atguigu@hadoop102 conf]$ mv zoo_sample.cfg zoo.cfg
(2)打开
zoo.cfg
文件,修改
dataDir
路径:
[atguigu@hadoop102 zookeeper-3.5.7]$ vim zoo.cfg
修改如下内容:
dataDir=/opt/module/zookeeper-3.5.7/zkData
(3)在
/opt/module/zookeeper-3.5.7/
这个目录上创建
zkData
文件夹
3
)操作
Zookeeper
(
1
)启动
Zookeeper
[atguigu@hadoop102 zookeeper-3.5.7]$ bin/zkServer.sh start
(2)查看进程是否启动
[atguigu@hadoop102 zookeeper-3.5.7]$ jps
4020 Jps
4001 QuorumPeerMain
(3)查看状态
[atguigu@hadoop102 zookeeper-3.5.7]$ bin/zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /opt/module/zookeeper-3.5.7/bin/../conf/zoo.cfg
Mode: standalone
(4)启动客户端
[atguigu@hadoop102 zookeeper-3.5.7]$ bin/zkCli.sh
(5)退出客户端
[zk: localhost:2181(CONNECTED) 0] quit
(6)停止
Zookeeper
[atguigu@hadoop102 zookeeper-3.5.7]$ bin/zkServer.sh stop
2.2 配置参数解读
Zookeeper
中的配置文件
zoo.cfg
中参数含义解读如下:
1
)
tickTime = 2000
:通信心跳时间,
Zookeeper
服务器与客户端心跳时间,单位毫秒
2)initLimit = 10:LF初始通信时限
Leader和Follower初始连接时能容忍的最多心跳数(tickTime的数量)
3
)
syncLimit = 5
:
LF
同步通信时限
Leader
和
Follower
之间通信时间如果超过
syncLimit * tickTime
,
Leader
认为
Follwer
死掉,从服务器列表中删除Follwer
。
4)dataDir:保存Zookeeper中的数据
注意:默认的tmp
目录,容易被
Linux
系统定期删除,所以一般不用默认的
tmp
目录。
5
)
clientPort = 2181
:客户端连接端口,通常不做修改。