3.搭建Zookeeper

搭建Zookeeper

介绍Zookeeper作用:

Apache ZooKeeper是一种高可用性服务,用于维护少量协调数据,通知客户端该数据的更改以及监视客户端的故障。自动HDFS故障转移的实现依赖于ZooKeeper来实现以下功能: a.故障检测:集群中的每个NameNode计算机都在ZooKeeper中维护一个持久会话。如果计算机崩溃,ZooKeeper会话将过期,通知另一个NameNode应该触发故障转移。 b.active活跃节点的选举:ZooKeeper提供了一种简单的机制,可以将节点专门选为活动节点。如果当前活动的NameNode崩溃,则另一个节点可能在ZooKeeper中采用特殊的独占锁,指示它应该成为下一个活动的。

注意:

搭建HA的 时候,在该模式下,即使活动节点发生故障,系统也不会自动触发从活动状态到备用NameNode的故障转移, ​ 本文是关于如何配置和部署故障转义。

参考(CSDN1)、(CSDN2)

1.集群规划

在master、slave1和slave2三个节点上部署Zookeeper。

2.解压安装

  1. 在/opt目录下新建zookeeper,上传文件zookeeper-3.4.5.tar.gz到该目录

    tar -zxvf zookeeper-3.4.5.tar.gz -C /opt/zookeeper/
  2. 进入opt/zookeeper/zookeeper-3.4.5/conf目录下,将zoo_sample.cfg复制重命名为zoo.cfg

    cp zoo_sample.cfg zoo.cfg
    #重命名
    #mv zoo_sample.cfg zoo.cfg

3.配置zoo.cfg文件

  1. vim opt/zookeeper/zookeeper-3.4.5/conf/zoo.cfg 添加如下配置

    ①修改:dataDir=/opt/zookeeper/zookeeper-3.4.5/tmp    这个下面是myid文件,必须这样
    ②在最后添加:
    #2888端口是leader和flower之间通信的端口,3888端口是flower之间选举的端口
    server.1=master:2888:3888
    server.2=slave1:2888:3888
    server.3=slave2:2888:3888
  2. 在/opt/zookeeper/zookeeper-3.4.5/tmp 下创建myid文件,并写入对应ID

    touch /opt/zookeeper/zookeeper-3.4.5/tmp/myid
    #master 的ID为1
    #利用echo
    echo 1 > /opt/zookeeper/zookeeper-3.4.5/tmp/myid
    #可利用 cat 查看是否成功

4.将配置好的文件进行文件分发

  1. 将master上的/opt/zookeeper/分发到slave1、slave2的对应目录/opt/zookeeper/下

    scp -r /opt/zookeeper/zookeeper-3.4.5 slave1:/opt/zookeeper/
    scp -r /opt/zookeeper/zookeeper-3.4.5 slave2:/opt/zookeeper/
  2. 修改/opt/zookeeper/tmp文件夹下的myid

    vim myid
    #slave1 ID 为 2
    #slave2 ID 为 3

5.进行启动测试

  1. 依次在master、slave1、slave2中

    #跳转到启动
    cd /opt/zookeeper/zookeeper-3.4.5/bin
    #启动
    ./zkServer.sh start
    #查看状态
    ./zkServer.sh status

    如图则启动成功

 

小石小石摩西摩西的学习笔记,欢迎提问,欢迎指正!!!
原文地址:https://www.cnblogs.com/shijingwen/p/13677494.html