zoukankan      html  css  js  c++  java
  • 从零搭建hadoop集群之zookeeper集群安装

    1. 从官方渠道获取对应的zookeeper的安装包

    http://archive.apache.org/dist/zookeeper/

    zookeeper-3.4.10.tar.g

    2. 上传zookeeper安装包到 hadoop01节点的/home/hadoop/software目录下并解压

    tar -zxvf zookeeper-3.4.10.tar.gz -C ../module/

    3. 修改配置文件

    cd /home/hadoop/module/zookeeper-3.4.10/conf

    更改配置文件名称

    mv zoo_sample.cfg  zoo.cfg
    vim zoo.cfg
    # The number of milliseconds of each tick
    tickTime=2000
    # The number of ticks that the initial 
    # synchronization phase can take
    initLimit=10
    # The number of ticks that can pass between 
    # sending a request and getting an acknowledgement
    syncLimit=5
    # the directory where the snapshot is stored.
    # do not use /tmp for storage, /tmp here is just 
    # example sakes.
    dataDir=/home/hadoop/module/zkdata
    dataLogDir=/home/hadoop/module/logs/zklog
    # the port at which the clients will connect
    clientPort=2181
    # the maximum number of client connections.
    # increase this if you need to handle more clients
    #maxClientCnxns=60
    #
    # Be sure to read the maintenance section of the 
    # administrator guide before turning on autopurge.
    #
    # http://zookeeper.apache.org/doc/current/zookeeperAdmin.html#sc_maintenance
    #
    # The number of snapshots to retain in dataDir
    #autopurge.snapRetainCount=3
    # Purge task interval in hours
    # Set to "0" to disable auto purge feature
    #autopurge.purgeInterval=1
    server.1=hadoop01:2888:3888
    server.2=hadoop02:2888:3888
    server.3=hadoop03:2888:3888
    • tickTime:基本事件单元,这个时间是作为Zookeeper服务器之间或客户端与服务器之间维持心跳的时间间隔,每隔tickTime时间就会发送一个心跳;最小 的session过期时间为2倍tickTime
    • dataDir:存储内存中数据库快照的位置,除非另有说明,否则指向数据库更新的事务日志。注意:应该谨慎的选择日志存放的位置,使用专用的日志存储设备能够大大提高系统的性能,如果将日志存储在比较繁忙的存储设备上,那么将会很大程度上影像系统性能
    • client:监听客户端连接的端口
    • initLimit:允许follower连接并同步到Leader的初始化连接时间,以tickTime为单位。当初始化连接时间超过该值,则表示连接失败
    • syncLimit:表示Leader与Follower之间发送消息时,请求和应答时间长度。如果follower在设置时间内不能与leader通信,那么此follower将会被丢弃
    • server.A=B:C:D

          A:其中 A 是一个数字,表示这个是服务器的编号;

          B:是这个服务器的 ip 地址;

          C:Leader选举的端口;

          D:Zookeeper服务器之间的通信端口

    其中 A 对应下面我们即将介绍的myid 文件。B是集群的各个IP地址,C:D 是端口配置

    4. 分发安装包到所有的zookeeper节点

    scp -r zookeeper-3.4.10/ hadoop@hadoop02:$PWD
    scp -r zookeeper-3.4.10/ hadoop@hadoop03:$PWD

    5. 所有节点配置环境变量

    vim ~/.bashrc

    添加以下内容

    export ZOOKEEPER_HOME=/home/hadoop/module/zookeeper-3.4.10
    export PATH=$PATH:$ZOOKEEPER_HOME/bin

    刷新环境变量文件使新增的生效

    source ~/.bashrc

    6.   给每一个zookeeper server 要分配一个不重复的1-255之间的serverid,在dataDir目录中必须加入一个文件叫做myid,myid文件中放入一个serverid

    mkdir /home/hadoop/module/zkdata
    echo 1 > myid    #不要多出空格,不要多出空行,每个节点都要进行这个操作,值要与配置中的id对应

     7. 直接启动zookeeper   不需要初始化

            zkServer.sh start 启动

            zkServer.sh stop   停止

            zkServer.sh status  查看角色的状态

  • 相关阅读:
    《程序员的数学课》模块二 代数与统计
    《程序员的数学课》模块一 无处不在的数学思维03
    Java 接口重试的几种实现
    用过stopwatch(秒表)观察代码运行的时长吗?
    sql 面试必刷系列-case-when
    缓存穿透、缓存击穿和缓存雪崩,了解一下?
    数据库批量插入100W 条数据,你学废了吗?
    缓冲输入流
    Linux系统中内存问题排查思路与解决方法
    Linux系统中负载较高问题排查思路与解决方法
  • 原文地址:https://www.cnblogs.com/qikaipei/p/14145296.html
Copyright © 2011-2022 走看看