• zookeeper安装


    • 单机模式

        首先,从Apache官网下载一个Zookeeper稳定版本,本次教程采用的是zookeeper-3.4.9版本。

    http://apache.fayea.com/zookeeper/zookeeper-3.4.9/

         然后解压zookeeper-3.4.9.tar.gz文件到安装目录下:

    tar -zxvf zookeepre-3.4.9.tar.gz

      zookeeper要求Java运行环境,并且需要jdk版本1.6以上。为了以后的操作方便,可以对zookeeper的环境变量进行配置(该步骤可忽略)。方法如下,在/etc/profile文件中加入以下内容:

    #Set Zookeeper Environment
    
    export ZOOKEEPER_HOME=/root/zookeeper-3.4.9
    export PATH=$ZOOKEEPER_HOME/bin;$ZOOKEEPER_HOME/conf

       Zookeeper服务器包含在单个jar文件中(本环境下为 zookeeper-3.4.9.jar),安装此服务需要用户自己创建一个配置文件。默认配置文件路径为 Zookeeper-3.4.9/conf/目录下,文件名为zoo.cfg。进入conf/目录下可以看到一个zoo_sample.cfg文件,可供参考。通过以下代码在conf目录下创建zoo.cfg文件:

    gedit zoo.cfg 

     在文件中输入以下内容并保存

    tickTime=2000dataDir=/home/jxwch/hadoop/data/zookeeper

    dataLogDir=/home/jxwch/hadoop/dataLog/zookeeper

    clientPort=2181

      在这个文件中,各个语句的含义:

        tickTime : 服务器与客户端之间交互的基本时间单元(ms)

        dataDir : 保存zookeeper数据路径

        dataLogDir : 保存zookeeper日志路径,当此配置不存在时默认路径与dataDir一致

        clientPort : 客户端访问zookeeper时经过服务器端时的端口号

      使用单机模式时需要注意,在这种配置方式下,如果zookeeper服务器出现故障,zookeeper服务将会停止。

    • 集群模式

        zookeeper最主要的应用场景是集群,下面介绍如何在一个集群上部署一个zookeeper。只要集群上的大多数zookeeper服务启动了,那么总的zookeeper服务便是可用的。另外,最好使用奇数台服务器。如歌zookeeper拥有5台服务器,那么在最多2台服务器出现故障后,整个服务还可以正常使用。

        之后的操作和单机模式的安装类似,我们同样需要Java环境,下载最新版的zookeeper并配置相应的环境变量。不同之处在于每台机器上的conf/zoo.cfg配置文件的参数设置不同,用户可以参考下面的配置:

    复制代码
    tickTime=2000
    
    initLimit=10
    
    syncLimit=5
    
    dataDir=/home/jxwch/server1/data
    
    dataLogDir=/home/jxwch/server1/dataLog
    
    clientPort=2181
    
    server.1=zoo1:2888:3888
    
    server.2=zoo2:2888:3888
    
    server.3=zoo3:2888:3888

    maxClientCnxns=60
    复制代码

        在这个配置文件中,新出现的语句的含义:

          initLimit : 此配置表示允许follower连接并同步到leader的初始化时间,它以tickTime的倍数来表示。当超过设置倍数的tickTime时间,则连接失败。

          syncLimit : Leader服务器与follower服务器之间信息同步允许的最大时间间隔,如果超过次间隔,默认follower服务器与leader服务器之间断开链接。

          maxClientCnxns : 限制连接到zookeeper服务器客户端的数量

          server.id=host:port:port : 表示了不同的zookeeper服务器的自身标识,作为集群的一部分,每一台服务器应该知道其他服务器的信息。用户可以从“server.id=host:port:port” 中读取到相关信息。在服务器的data(dataDir参数所指定的目录)下创建一个文件名为myid的文件,这个文件的内容只有一行,指定的是自身的id值。比如,服务器“1”应该在myid文件中写入“1”。这个id必须在集群环境中服务器标识中是唯一的,且大小在1~255之间。这一样配置中,zoo1代表第一台服务器的IP地址。第一个端口号(port)是从follower连接到leader机器的端口,第二个端口是用来进行leader选举时所用的端口。所以,在集群配置过程中有三个非常重要的端口:clientPort:2181、port:2888、port:3888。

      .启动

    进入 bin 目录

    ./zkServer.sh start  后台进行。

    ./zkServer.sh start-foreground  可以看到大量详细信息的输出,以便允许查看服务器发生了什么

  • 相关阅读:
    闭包
    原型继承
    js时间戳转成日期格式
    常用正则表达式
    vue中如何实现pdf文件预览?
    Vue动画效果
    手把手教你封装 Vue 组件,并使用 npm 发布
    LCD驱动(FrameBuffer)实例开发讲解
    每个程序员都该阅读的书
    LCD platform_device(s5pv210)
  • 原文地址:https://www.cnblogs.com/bug1024/p/9138805.html
Copyright © 2020-2023  润新知