Mac下Zookeeper安装及配置

Zookeeper 的安装

    下载地址:http://www.apache.org/dyn/closer.cgi/zookeeper
    
    

首先从官网下载ZooKeeper压缩包,然后解压下载得到的ZooKeeper压缩包,发现有“bin,conf,lib”等目录。“bin目录”中存放有运行脚本;“conf目录”中存放有配置文件;“lib目录”中存放有运行所需要第三方库。
解压文件: 

     tar zxvf zookeeper-3.4.8.tar.gz
    
    

Zookeeper 的配置

一、单机模式

1.1、编辑配置文件

在“conf”目录下,新建一个名为“zoo.cfg”的文件,其中内容如下:


    
    
  1. tickTime= 2000
  2. dataDir= /usr/myenv /zookeeper -3.4 .8 /data (填写自己的data目录)
  3. dataLogDir= /usr/myenv /zookeeper -3.4 .8 /logs
  4. clientPort= 2181

参数说明:


    
    
  1. #tickTime: zookeeper中使用的基本时间单位, 毫秒值.
  2. #dataDir: 数据目录. 可以是任意目录.
  3. #dataLogDir: log目录, 同样可以是任意目录. 如果没有设置该参数, 将使用和 #dataDir相同的设置.
  4. #clientPort: 监听 client连接的端口号.

1.2、运行ZooKeeper Server

执行./bin/zkServer.sh start命令,运行ZooKeeper Server进程,得到如图所示结果,表示后台运行ZooKeeper Server进程成功。


图片 1.png


注:命令telnet 127.0.0.1 2181 连接成功验证Zookeeper 是否启动成功
停止:./bin/zkServer.sh stop
也可以执行bin/zkServer.sh start-foreground命令,非后台运行ZooKeeper Server进程


图片 2.png

二、集群模式

集群模式有两种形式:
1)使用多台机器,在每台机器上运行一个ZooKeeper Server进程;
2)使用一台机器,在该台机器上运行多个ZooKeeper Server进程。
在生产环境中,一般使用第一种形式,在练习环境中,一般使用第二种形式。

2.1、参数配置

集群模式下,需要配置一些参数,以下是常见的一些参数。 

  1. data目录
    用于存放进程运行数据。 
  2. data目录下的myid文件
    用于存储一个数值,用来作为该ZooKeeper Server进程的标识。 
  3. 监听Client端请求的端口号
  4. 监听同ZooKeeper集群内其他Server进程通信请求的端口号
  5. 监听ZooKeeper集群内“leader”选举请求的端口号
    该端口号用来监听ZooKeeper集群内“leader”选举的请求。注意这个是ZooKeeper集群内“leader”的选举,跟分布式应用程序无关。
    参数配置注意事项:
    1)同一个ZooKeeper集群内,不同ZooKeeper Server进程的标识需要不一样,即myid文件内的值需要不一样
    2)采用上述第2种形式构建ZooKeeper集群,需要注意“目录,端口号”等资源的不可共享性,如果共享会导致ZooKeeper Server进程不能正常运行,比如“data目录,几个监听端口号”都不能被共享

























myid

Data目录

Client

Server

Leader

配置文件

1

/z1/data

2181

2222

2223

z1.cfg

2

/z2/data

2182

3333

3334

z2.cfg

3

/z3/data

2183

4444

4445

z3.cfg


配置如下:


    
    
  1. # zx.cfg
  2. tickTime= 2000
  3. initLimit= 10
  4. syncLimit= 2
  5. dataDir=/usr/myenv/zookeeper - 3.4 .8/zx/data
  6. clientPort= 218x
  7. # server.x中的“x”表示ZooKeeper Server进程的标识
  8. server .1= 127.0 .0 .1: 2222: 2225
  9. server .2= 127.0 .0 .1: 3333: 3335
  10. server .3= 127.0 .0 .1: 4444: 4445

注:

  • initLimit: zookeeper集群中的包含多台server, 其中一台为leader, 集群中其余的server为follower. initLimit参数配置初始化连接时, follower和leader之间的最长心跳时间. 此时该参数设置为5, 说明时间限制为5倍tickTime, 即5*2000=10000ms=10s.
  • syncLimit: 该参数配置leader和follower之间发送消息, 请求和应答的最大时间长度. 此时该参数设置为2, 说明时间限制为2倍tickTime, 即4000ms.

2.2、运行ZooKeeper Server

分别执行


    
    
  1. bin/zkServer .sh start deploy/z1/z1.cfg,
  2. bin/zkServer .sh start deploy/z2/z2 .cfg
  3. bin/zkServer .sh start deploy/z3/z3.cfg

运行上述配置的3个ZooKeeper Server进程。

2.3、运行ZooKeeper命令行客户端

执行命令

bin/zkCli.sh -server 127.0.0.1:2181,127.0.0.1:2182,127.0.0.1:2183
    
    

建立ZooKeeper Client端到ZooKeeper集群的连接会话。



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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值