zookeeper安装与配置

介绍

ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现。
参考:http://blog.csdn.net/u013068377/article/details/52620647
http://blog.csdn.net/xuxiuning/article/details/51218941
zookeeper官方文档:https://zookeeper.apache.org/doc/trunk/
最好还是读官方文档,很详细。

安装

这里以Linux为例。
zookeeper官网:https://zookeeper.apache.org/
从官网下载最新稳定版本,这里测试版本为3.4.9.

下载后,解压缩

tar -xvf zookeeper-3.4.9.tar.gz

注意:zookeeper运行需要依赖java环境,所以需要配置好java环境。

单机配置

Z O O K E E P E R H O M E ZOOKEEPER_HOME ZOOKEEPERHOME/conf目录下,新建zoo.cfg文件。
内容如下:

tickTime=2000
dataDir=/var/zookeeper
clientPort=2181

具体的配置参数的含义后面介绍。

配置完毕后,在 Z O O K E E P E R H O M E ZOOKEEPER_HOME ZOOKEEPERHOME执行下面的命令启动zookeeper

./bin/zkServer.sh start &

伪集群配置

参考“集群配置”,伪集群实际上是在一台机器部署多个zookeeper实例来构建集群,因为是同一台机器,所以各个zookeeper实例的端口与dataDir不同。
配置参考:

tickTime=2000 
dataDir=/var/zookeeper/ 
clientPort=2181 
initLimit=5 
syncLimit=2 
server.1=localhost:2887:3887 
server.2=localhost:2888:3888 
server.3=localhost:2889:3889

集群配置

为了获得可靠的zookeeper服务,实际使用应该部署zookeeper集群。只要多于半数的zookeeper服务OK,那么整个zookeeper服务也是OK的。
而且,部署时最好部署奇数台zookeeper服务。

在每个zookeeper实例的dataDir参数指定的目录中,创建一个名为myid的文件,文件的内容指定自身的id值。
假设部署3台zookeeper构成的集群,分别命名为server1,server2,server3,那么server1的myid的内容就是1,server2的myid的内容就是2,等等…
每个zookeeper的conf目录中,新建zoo.cfg,内容如下:

tickTime=2000 
dataDir=/var/zookeeper/ 
clientPort=2181 
initLimit=5 
syncLimit=2 
server.1=server1:2888:3888 
server.2=server2:2888:3888 
server.3=server3:2888:3888

server.id=host:port:port,指示了集群中所有zookeeper。第一个port是follower与leader通信的端口,第2个port是进行leader选举的端口。

zookeeper配置参数

tickTime:心跳时间,为了确保连接存在的,以毫秒为单位,最小超时时间为2个心跳时间
initLimit:多少个心跳时间内,允许其他server连接并初始化数据,如果ZooKeeper管理的数据较大,则应相应增大这个值
clientPort:服务的监听端口
dataDir:用于存放内存数据库快照的文件夹,同时用于集群的myid文件也存在这个文件夹里(注意:一个配置文件只能包含一个dataDir字样,即使它被注释掉了。)
dataLogDir:用于单独设置transaction log的目录,transaction log分离可以避免和普通log还有快照的竞争
syncLimit:多少个tickTime内,允许follower同步,如果follower落后太多,则会被丢弃。

server.A=B:C:D:
A是一个数字,表示这个是第几号服务器,B是这个服务器的ip地址
C第一个端口用来集群成员的信息交换,表示的是这个服务器与集群中的Leader服务器交换信息的端口
D是在leader挂掉时专门用来进行选举leader所用

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值