Zookeeper 是 一个分布式。开放源码的分布式应用程序协调服务,是Google Chubby的一个开源实现,大多数的分布式应用都需要Zookeeper的支持,这篇文章先简单的和大家分享如何搭建一个zookeeper集群。(笔者注:Chubby是一个lock service,通过这个lock service可以解决分布式中的一致性问题。为这个lock service的实现是一个分布式的文件系统)。

 

准备环境: 至少3 台 linux server(笔者的是redhat版本的cloud server)

 

第一步: 安装 JDK/JRE

第二步:下载zookeeper : http://zookeeper.apache.org/releases.html

第三步:上传安装包到服务器(可以通过WinSCP等)

第四步:使用 "tar -xzvf  zookeeper-3.4.6.tar.gz "来 解压安装包 :

解压后的目录结构:


 

第五步:修改zookeeper配置文件(集群和数据目录的配置)

使用“cp zoo_sample.cfg  zoo.cfg”来创建一个zookeeper配置文件,在zoo.cfg中配置syncLimit,dataDir,clientPort,autopurge.purgeInterval,以及集群的server list:



 

第六步:通过“scp -r ”把配置好的zookeeper目录copy到其他两台server上:



 

第七步:在配置集群的server中,分别找到zoo.cfg配置的dataDir目录,在目录下面添加一个“myid”的文件,把zoo.cfg配置的server list中的id值写入并保存:



 

 

第八步:分别启动三台zookeeper,并检查集群状态:

使用“sudo ./bin/zkServer.sh start” 启动zookeeper, 使用“sudo ./bin/zkServer.sh status”检查集群状态

 

  server1:

 

server2:


 

server3:

 

mode显示了所在server在集群中所扮演的角色,每个server的角色不是固定的,leader是通过zookeeper的Fast Leader 选举算法产生,三台zookeeper集群就这么搭建好了,大家可以根据自己实际的项目需要再做一些详细的配置。