Zookeeper
Posted yufeng218
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Zookeeper相关的知识,希望对你有一定的参考价值。
1、概要
ZooKeeper是用于分布式应用程序的协调服务。它公开了一组简单的API,分布式应用程序可以基于这些API用于同步,节点状态、配置等信息、服务注册等信息。其由JAVA编写,支持JAVA 和C两种语言的客户端。
zookeeper 中数据基本单元叫节点,节点之下可包含子节点,最后以树级方式呈现。每个节点拥有唯一的路径path。客户端基于PATH上传节点数据,zookeeper 收到后会实时通知对该路径进行监听的客户端。
Zookeeper官网地址:https://zookeeper.apache.org/releases.html#download
2、下载安装及配置
由于 Zookeeper 是Java编写的,在安装 Zookeeper 之前先要安装 JDK。
2.1 下载
JDK8下载地址:https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html
Zookeeper下载地址:https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/
- apache-zookeeper-xxx-tar.gz 代表源代码
- apache-zookeeper-xxx-bin.tar.gz 运行版本
2.2 安装
安装一个稳定版本: 3.5.8:
#下载
wget https://mirrors.bfsu.edu.cn/apache/zookeeper/zookeeper-3.5.8/apache-zookeeper-3.5.8-bin.tar.gz
#解压
tar -zxvf apache-zookeeper-3.5.8-bin.tar.gz
#建立软链接:
ln -s apache-zookeeper-3.5.8-bin zk
#拷贝默认配置
cp zk/conf/zoo_sample.cfg zk/conf/zoo.cfg
#启动Zookeeper
./zk/bin/zkServer.sh start
说明:
(1)Linux 系统启动Zookeeper运行 zkServer.sh 脚本; Windows启动Zookeeper运行 zkServer.cmd 脚本。
(2)在Linux下可以指定启动指定的配置文件去启动:
./zk/bin/zkServer.sh start zoo_my.cfg
(3)运行 ./zk/bin/zkCli.sh 可以进入到 Zookeeper 的客户端:
2.3 配置文件
# zookeeper时间配置中的基本单位 (毫秒)
tickTime=2000
# 允许follower初始化连接到leader最大时长,它表示tickTime时间倍数即:initLimit*tickTime
initLimit=10
# 允许follower与leader数据同步最大时长,它表示tickTime时间倍数
syncLimit=5
# zookeper 数据存储目录
dataDir=/tmp/zookeeper
# 对客户端提供的端口号
clientPort=2181
# 单个客户端与zookeeper最大并发连接数
maxClientCnxns=60
# 保存的数据快照数量,之外的将会被清除
autopurge.snapRetainCount=3
# 自动触发清除任务时间间隔,小时为单位。默认为0,表示不自动清除。
autopurge.purgeInterval=1
zkServer.sh
以上是关于Zookeeper的主要内容,如果未能解决你的问题,请参考以下文章