zoukankan      html  css  js  c++  java
  • CentOS6.5 安装Zookeeper集群

    1、下载解压

    2、配置环境变量:vi ~/.bashrc   或者   vi /etc/profile

    [hadoopuser@Linux01 ~]$ vi ~/.bashrc
    # zookeeper cdh5
    export ZOOKEEPER_HOME=/home/hadoopuser/zookeeper-3.4.5-cdh5.6.0
    export PATH=$PATH:$ZOOKEEPER_HOME/bin
    
    [hadoopuser@Linux01 ~]$ source ~/.bashrc      #生效

    3、修改日志输出

    [hadoopuser@Linux01 ~]$ vi $ZOOKEEPER_HOME/libexec/zkEnv.sh
    #3.4.8非CDH版本的位置是:bin/zkEnv.sh 56行: 找到如下位置修改语句:ZOO_LOG_DIR
    ="$ZOOKEEPER_HOME/logs"

    4、修改配置文件

    [hadoopuser@Linux01 ~]$ vi $ZOOKEEPER_HOME/conf/zoo.cfg
    
    # zookeeper
    tickTime=2000
    initLimit=10
    syncLimit=5
    dataDir=/home/hadoopuser/zookeeper-3.4.5-cdh5.6.0/data
    clientPort=2181
    
    
    # cluster
    server.1=Zookeeper-01:2888:3888
    server.2=Zookeeper-02:2888:3888
    server.3=Zookeeper-03:2888:3888

    5、设置myid

    (1)Zookeeper-01:

    mkdir $ZOOKEEPER_HOME/data
    echo 1 > $ZOOKEEPER_HOME/data/myid

    (2)Zookeeper -02:

    mkdir $ZOOKEEPER_HOME/data
    echo 2 > $ZOOKEEPER_HOME/data/myid

    (3)Zookeeper -03:

    mkdir $ZOOKEEPER_HOME/data
    echo 3 > $ZOOKEEPER_HOME/data/myid

    6、各结点启动:

    [hadoopuser@Linux01 ~]$ zkServer.sh start

    7、验证

    [hadoopuser@Linux01 ~]$ jps
    
    3051 Jps
    2829 QuorumPeerMain

    8、状态

    [hadoopuser@Linux01 ~]$ zkServer.sh status
    
    JMX enabled by default
    Using config: /home/zero/zookeeper/zookeeper-3.4.5-cdh5.0.1/bin/../conf/zoo.cfg
    Mode: follower

    9、附录zoo.cfg各配置项说明

    属性

    意义

    tickTime

    时间单元,心跳和最低会话超时时间为tickTime的两倍

    dataDir

    数据存放位置,存放内存快照和事务更新日志

    clientPort

    客户端访问端口

    initLimit

    配 置 Zookeeper 接受客户端(这里所说的客户端不是用户连接 Zookeeper服务器的客户端,而是 Zookeeper 服务器集群中连接到 Leader 的 Follower 服务器)初始化连接时最长能忍受多少个心跳时间间隔数。当已经超过 10 个心跳的时间(也就是 tickTime)长度后 Zookeeper 服务器还没有收到客户端的返回信息,那么表明这个客户端连接失败。总的时间长度就是 5*2000=10 秒。

    syncLimit

    这个配置项标识 Leader 与 Follower 之间发送消息,请求和应答时间长度,最长不能超过多少个

    server.id=host:port:port

    server.A=BCD

    集群结点列表:

    A :是一个数字,表示这个是第几号服务器;

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

    C :表示的是这个服务器与集群中的 Leader 服务器交换信息的端口;

    D :表示的是万一集群中的 Leader 服务器挂了,需要一个端口来重新进行选举,选出一个新的 Leader,而这个端口就是用来执行选举时服务器相互通信的端口。如果是伪集群的配置方式,由于 B 都是一样,所以不同的 Zookeeper 实例通信端口号不能一样,所以要给它们分配不同的端口号。

    10、常用命令

    10.1  启动ZK服务:    bin/zkServer.sh start
    10.2  查看ZK服务状态:  bin/zkServer.sh status
    10.3  停止ZK服务:    bin/zkServer.sh stop
    10.4  重启ZK服务:    bin/zkServer.sh restart
    10.5  连接服务器:    zkCli.sh -server 127.0.0.1:2181
    10.6  查看根目录:    ls /
    10.7  创建 testnode节点,关联字符串"zz":    create /zk/testnode "zz"
    10.8  查看节点内容:    get /zk/testnode
    10.9  设置节点内容:    set /zk/testnode abc
    10.0  删除节点:      delete /zk/testnode 
  • 相关阅读:
    java中的各种Queue
    关闭线程的一些问题
    Exchanger
    文件锁FileLock
    StringBuffer和String需要注意的
    maven出现:Failed to execute goal on project ...: Could not resolve dependencies for project ...
    pringboot pom文件引入本地jar包和对其打jar包
    SpringBoot热部署的两种方式
    idea 自动导入包和自动将没用的包去除
    springCould:使用Feign 实现声明式服务调用
  • 原文地址:https://www.cnblogs.com/hunttown/p/5807383.html
Copyright © 2011-2022 走看看