一.使用Zookeeper的好处
简单的分布式协调过程
同步 — 服务器进程之间的相互排斥和协作。有助于Apache HBase进行配置管理
有序的消息
序列化 — 根据特定规则对数据进行编码。 确保应用程序运行一致。
可靠性
原子性 — 数据转移 要么全部成功 要么全部失败
二.zoo.cfg
tickTime = 2000 — tickTime的意义:客户端与服务器或者服务器与服务器之间维持心跳,也就是每个tickTime时间就会发送一次心跳。通过心跳不仅能够用来监听机器的工作状态,还可以通过心跳来控制Flower跟Leader的通信时间,默认情况下FL的会话时常是心跳间隔的两倍。
initLimit = 10 — 集群中的follower服务器(F)与leader服务器(L)之间初始连接时能容忍的最多心跳数(tickTime的数量)。
syncLimit = 5 — 集群中flower服务器(F)跟leader(L)服务器之间的请求和答应最多能容忍的心跳数。
dataDir = /Volumes/Application/zookeeper-3.5.4-beta/data — 该属性对应的目录是用来存放myid信息跟一些版本,日志,跟服务器唯一的ID信息等。
dataLogDir=/Volumes/Application/zookeeper-3.5.4-beta/logs — 日志
clientPort = 2181 — 客服端连接的端口
maxClientCnxns=60 — 客户端最大连接地址
server.N — YYY : A : B
N — 服务器编号
YYY— 服务器地址
A — Flower 跟 Leader的通信端口,简称服务端内部通信的端口(默认2888)
B — 选举端口(默认是3888)
搭建步骤
下载zookeeper 地址为 http://mirror.bit.edu.cn/apache/zookeeper/current/
复制根目录下的conf下的zoo_sample.cfg 重新命名为zoo.cfg
运行即可