资源规划

组件 LTSR003 LTSR005 LTSR006 LTSR007 LTSR008
OS centos7.6 centos7.6 centos7.6 centos7.6 centos7.6
JDK jvm jvm jvm jvm jvm
Zookeeper N.A QuorumPeerMain QuorumPeerMain QuorumPeerMain N.A

安装介质

版本:zookeeper-3.4.10.tar.gz
下载:http://archive.apache.org/dist/zookeeper/zookeeper-3.4.10

环境准备

安装JDK

参考:《CentOS7.6-安装JDK-1.8.221

安装ZooKeeper

解压缩

  1. # 先在节点LTSR005上安装,之后分发到LTSR006、LTSR007
  2. cd ~/software/
  3. wget http://archive.apache.org/dist/zookeeper/zookeeper-3.4.10/zookeeper-3.4.10.tar.gz
  4. tar -xvf zookeeper-3.4.10.tar.gz -C ~/modules/
  5. rm zookeeper-3.4.10.tar.gz

配置

  1. 创建data目录、log目录及myid文件。

    1. mkdir -p ~/modules/zookeeper-3.4.10/data
    2. mkdir -p ~/modules/zookeeper-3.4.10/log
    3. cd ~/modules/zookeeper-3.4.10/data
    4. touch myid

    myid分别写入{1,2,3},具体那台机器写入什么值根据zoo.cfg中的配置设置,如server.1=xxxx,则myid写入1即可。

  2. 修改zoo.cfg。

    1. cd ~/modules/zookeeper-3.4.10/conf
    2. cp zoo_sample.cfg zoo.cfg
    3. vi zoo.cfg

    3.配置zoo.cfg

    1. # 心跳时间
    2. tickTime=2000
    3. # follow连接leader的初始化连接时间,表示tickTime的倍数
    4. initLimit=10
    5. # syncLimit配置表示leader与follower之间发送消息,请求和应答时间长度。如果followe在设置的时间内不能与leader进行通信,那么此follower将被丢弃,tickTime的倍数
    6. syncLimit=5
    7. # 客户端连接端口
    8. clientPort=2181
    9. # 客户端连接数限制
    10. maxClientCnxns=500
    11. # 节点数据存储目录,需要提前创建,注意myid添加,用于标识服务器节点
    12. dataDir=/home/bigdata/modules/zookeeper-3.4.10/data
    13. dataLogDir=/home/bigdata/modules/zookeeper-3.4.10/log
    14. server.1=10.8.0.109:2888:3888
    15. server.2=10.8.0.137:2888:3888
    16. server.3=10.8.0.117:2888:3888

    4.配置zkEnv.sh。

    vi ~/modules/zookeeper-3.4.10/bin/zkEnv.sh
    

    配置如下:

    export JAVA_HOME=/home/bigdata/modules/jdk1.8.0_221
    

    分发

    cd ~/modules/
    scp -r zookeeper-3.4.10 bigdata@LTSR006:~/modules/
    scp -r zookeeper-3.4.10 bigdata@LTSR007:~/modules/
    

    分发后注意编辑myid:

    vi ~/modules/zookeeper-3.4.10/data/myid
    

    LTSR005节点:

    1
    

    LTSR006节点:

    2
    

    LTSR007节点:

    3
    

    验证

    cd ~/modules/zookeeper-3.4.10/bin
    ls -l /bin/sh
    sudo ln -sf bash /bin/sh
    # {start|start-foreground|stop|restart|status|upgrade|print-cmd}
    sh zkServer.sh start
    sh zkServer.sh status
    sh zkServer.sh stop
    # 查看启动进程main方法相关的进程
    jps -m
    ps -ef |grep zookeeper
    # 客户端工具
    ./zkCli.sh -server localhost:2181