Zookeeper集群配置

1. 前言

介绍ZooKeeper-3.4.6版本的分布式安装。

安装环境:64位的 Linux;

          JDK:1.7

2. 约定

ZooKeeper安装在/data/hadoop/zookeeper目录

ZooKeeper的数据目录设置为/data/hadoop/zookeeper/data。

 

使用了3台机器部署ZooKeeper集群,IP和主机名对应关系如下:

IP

主机名

10.12.154.77

DEVNET-154-77

10.12.154.78

DEVNET-154-70

10.12.154.79

DEVNET-154-79

3. 安装步骤3.1. 配置/etc/hosts

3台机器的IP和主机名映射关系,在3台机器上都配置一下,亦即在3台机器的/etc/hosts文件中,均增加以下内容(可以先配置好一台,然后通过scp等命令复制到其它机器上):

10.12.154.77    DEVNET-154-77

10.12.154.78    DEVNET-154-70

10.12.154.79    DEVNET-154-79

3.2. 设置myid

dataDir指定的数据目录(/data/hadoop/zookeeper/data)下,创建文件myid,文件内容为一个正整数值,用来唯一标识当前机器,因此不同机器的数值不能相同,建议从1开始递增标识,以方便记忆和管理。本文约定如下:

IP

标识数值

10.12.154.77

1

10.12.154.78

2

10.12.154.79

3

 

可以使用echo命令直接写进去,如:

echo 1 > myid或echo 1 > /data/hadoop/zookeeper/data/myid

3.3. 修改conf/zoo.cfg

按下述内容,修改ZooKeeper配置文件(3台机器都需要,可以先配置好一台,然后通过scp等命令复制到其它机器上):

dataDir=/data/hadoop/zookeeper/data

server.1=DEVNET-154-77:2888:3888

server.2=DEVNET-154-78:2888:3888

server.3=DEVNET-154-79:2888:3888

 

server.X用来配置ZooKeeper集群中的各节点,并建议X的值和myid保持一致。

端口2181用于监听客户端的连接,端口2888用于Leader监听Follower的连接,而3888则用于Leader选举。

4. 启动ZooKeeper集群

bin目录下的脚本zkServer.sh用来启动ZooKeeper集群,但需要带一个start参数,如:

cd /data/hadoop/zookeeper/bin&&./zkServer.sh start

 

由于启动时,每个节点都会试图去连接其它节点,因此先启动的刚开始会连接不上其它的,导致日志中会包含错误信息,在未全启动之前,这个属正常现象。

5. 安装验证

脚本zkServer.sh不但可以用来启动ZooKeeper,还可以用来查看状态。使用方式为带一个status参数,如:

./zkServer.sh status

 

如遇到以下错误,请稍安勿躁,过会再试,可能是因为还未完全起来:

[hadoop@DEVNET-154-77 ~/zookeeper/bin]$ ./zkServer.sh status

JMX enabled by default

Using config: /data/hadoop/zookeeper/bin/../conf/zoo.cfg

Error contacting service. It is probably not running.

 

集群成功启动后,将有且只会有一个成为leader,其它是follower:

[hadoop@DEVNET-154-79 ~/zookeeper/bin]$ ./zkServer.sh status

JMX enabled by default

Using config: /data/hadoop/zookeeper/bin/../conf/zoo.cfg

Mode: leader

 

[hadoop@DEVNET-154-70 ~/zookeeper/bin]$ ./zkServer.sh status

JMX enabled by default

Using config: /data/hadoop/zookeeper/bin/../conf/zoo.cfg

Mode: follower

 

[hadoop@DEVNET-154-77 ~/zookeeper/bin]$ ./zkServer.sh status

JMX enabled by default

Using config: /data/hadoop/zookeeper/bin/../conf/zoo.cfg

Mode: follower

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值