1.环境

主机名IP地址JDKZooKeepermyid
c1192.168.58.1291.7.0_11server.11
c2192.168.58.1301.7.0_11server.22
c3192.168.581311.870_11server.33

2.文件配置 (每个节点都要配置)

tar -zxvf zookeeper-3.4.5-cdh5.1.0.tar.gz

2.1

cp zoo_sample.cfg zoo.cfg

将zookeeper-3.4.5/conf目录下面的 zoo_sample.cfg修改为zoo.cfg,配置文件内容如下所示:

tickTime=2000
initLimit=10
syncLimit=5
dataDir=/usr/local/cdh/zookeeper/data/
dataLogDir=/usr/local/cdh/zookeeper/dataLog/
clientPort=2181
server.1=c1:2888:3888
server.2=c2:2888:3888
server.3=c3:2888:3888

2.2 创建两个文件夹

需要创建数据文件夹和日志文件夹

cd  /usr/local/cdh/zookeeper/

mkdir data

mkdir dataLog

2.3 添加myid文件,内容如下:

里面内容为一个数字,用来标识当前主机,$ZOOKEEPER_HOME/conf/zoo.cfg文件中配置的server.X,则myid文件中就输入这个数字X。

主机名IP地址JDKZooKeepermyid
c1192.168.58.1291.7.0_11server.11
c2192.168.58.1301.7.0_11server.22
c3192.168.581311.870_11server.33

cd  /usr/local/cdh/zookeeper/data

vim myid

1

:wq

3.启动及测试安装成功与否

3.1启动

hadoop@slave-01:~ bin/zkServer.sh start
hadoop@slave-02:~ bin/zkServer.sh start
hadoop@slave-03:~ bin/zkServer.sh start

3.3 测试

bin/zkCli.sh -server c1:2181

3.4 查看集群中各个结点的角色

ZooKeeper采用一种称为Leader election的选举算法。在整个集群运行过程中,只有一个Leader,其他的都是Follower,如果ZooKeeper集群在运行过程中Leader出了问题,系统会采用该算法重新选出一个Leader。因此,各个结点之间要能够保证互相连接,必须配置上述映射。 ZooKeeper集群启动的时候,会首先选出一个Leader,在Leader election过程中,某一个满足选举算的结点就能成为Leader。

hadoop@c1:~ sh bin/zkServer.sh status
JMX enabled by default
Using config: /root/zookeeper/bin/../conf/zoo.cfg
Mode: leader hadoop@c2:~ sh bin/zkServer.sh status
JMX enabled by default
Using config: /root/zookeeper/bin/../conf/zoo.cfg
Mode: follower hadoop@c3:~ sh bin/zkServer.sh status
JMX enabled by default
Using config: /root/zookeeper/bin/../conf/zoo.cfg
Mode: leader

3.5 停止zk

bin/zkServer.sh stop

版权声明:本文为博主原创文章,未经博主允许不得转载。

05-11 20:13