Zookeeper的介绍和单机版安装
Zookeeper 入门
概述
Zookeeper是一个开源的分布式的,为分布式应用提供协调服务的Apache项目
Zookeeper 工作机制:
Zookeeper特点
数据结构
应用场景
提供的服务包括:统一命名服务、统一配置管理、统一集群管理、服务器节点动态上下线、软负载均衡等。
统一命名服务
统一配置管理
统一集群管理
服务器动态的上下线
软负载均衡
下载地址
- 官网地址
https://zookeeper.apache.org/
Zookeeper 安装
本地安装模式
-
安装前准备
- 安装JDK
- 拷贝Zookeeper 安装包到 /opt目录下
- 解压到指定目录
tar -zxvf zookeeper-3.4.10.tar.gz -C /opt/module/
-
配置修改
-
将/opt/module/zookeeper-3.4.10/conf这个路径下的zoo_sample.cfg修改为zoo.cfg;
-
打开zoo.cfg文件,修改dataDir路径:
vim zoo.cfg
修改:dataDir=/opt/module/zookeeper-3.4.10/zkData
-
在/opt/module/zookeeper-3.4.10/这个目录上创建zkData文件夹
-
-
操作Zookeeper
- 启动Zookeeper
运行bin目录下的zkServer.sh start
- 查看Zookeeper状态
zkServer.sh status - 启动客户端:bin/zkCli.sh
- 退出客户端:quit
- 停止Zookeeper
./zkServer.sh stop
- 启动Zookeeper
配置参数解读
Zookeeper中的配置文件zoo.cfg中参数含义解读如下:
-
tickTime =2000:通信心跳数,Zookeeper服务器与客户端心跳时间,单位毫秒
Zookeeper使用的基本时间,服务器之间或客户端与服务器之间维持心跳的时间间隔,也就是每个tickTime时间就会发送一个心跳,时间单位为毫秒。
它用于心跳机制,并且设置最小的session超时时间为两倍心跳时间。(session的最小超时时间是2*tickTime) -
initLimit =10:LF初始通信时限
集群中的Follower跟随者服务器与Leader领导者服务器之间初始连接时能容忍的最多心跳数(tickTime的数量),用它来限定集群中的Zookeeper服务器连接到Leader的时限 -
syncLimit =5:LF同步通信时限
集群中Leader与Follower之间的最大响应时间单位,假如响应超过syncLimit * tickTime,Leader认为Follwer死掉,从服务器列表中删除Follwer。 -
dataDir:数据文件目录+数据持久化路径
主要用于保存Zookeeper中的数据。 -
clientPort =2181:客户端连接端口
监听客户端连接的端口。