美文网首页java技术栈进阶程序员
zookeeper学习之三:ubuntu下单机伪集群搭建

zookeeper学习之三:ubuntu下单机伪集群搭建

作者: 进击的小鹿 | 来源:发表于2017-09-23 15:45 被阅读36次

    自己就一台机器(ubuntu),懒得弄虚拟机了,因此搭了一个单机伪分布式的集群,即同一台机器三个zookeeper服务。

    0.准备工作

    • 要安装JDK(略):java运行的环境

    • 为了搭建伪分布式(三个服务),因此,建立相应的目录(3个)

      /home/zookeeper/server0
      /home/zookeeper/server1
      /home/zookeeper/server2

    1.zookeeper下载

    ubuntu下使用 wget url 下载资源。找一个稳定的版本即可。
    wget http://apache.osuosl.org/zookeeper/zookeeper-3.4.9/zookeeper-3.4.9.tar.gz
    下载到download目录下。

    2.tar 解压

    利用tar命令解压。
    tar -xf zookeeper-3.4.9.tar.gz
    解压到该目录下,多出文件夹zookeeper-3.4.9。

    3.相关配置修改

    zookeeper-3.4.9/conf目录下 创建配置文件
    cp zookeeper-sample.cfg zoo.cfg

    在zookeeper-3.4.9目录下新建目录data,logs

    内容修改成(开启主要参数即可,配置端口,配置集群):

    # The number of milliseconds of each tick (发送心跳的间隔时间)
    tickTime=2000
    # The number of ticks that the initial ( 配置允许 followers 连接并同步到 leader 的最大时间,初始为tickTime 属性值的 10 倍)
    # synchronization phase can take
    initLimit=10
    # The number of ticks that can pass between 
    # sending a request and getting an acknowledgement(请求和应答时间长度,最长不能超过多少个 tickTime 的时间长度)
    syncLimit=5
    # 保存数据,保存日志的路径
    dataDir=/home/zookeeper/server0/zookeeper-3.4.9/data
    dataLofDir=/home/zookeeper/server0/zookeeper-3.4.9/logs
    # the port at which the clients will connect(客户端连接 Zookeeper 服务器的端口)
    clientPort=2180
    # the maximum number of client connections.(最大客户连接数)
    #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(自动清理snapshot和事务日志的功能)
    #autopurge.snapRetainCount=3
    # Purge task interval in hours
    # Set to "0" to disable auto purge feature
    #autopurge.purgeInterval=1
    #集群信息(服务器编号,服务器地址,LF通信端口,选举端口)
    server.0=127.0.0.1:8880:7770
    server.1=127.0.0.1:8881:7771
    server.2=127.0.0.1:8882:7773
    

    将修改完后的目录拷贝到相应的目录下
    /home/zookeeper/server0
    /home/zookeeper/server1
    /home/zookeeper/server2
    并修改相应的zoo.cfg文件(端口,目录等)

    4.启动

    在zookeeper-3.4.9/bin目录下,有zkServer.sh
    ./zkServer.sh start 即可启动该服务。
    依次启动三个服务。启动会打印日志如下

    JMX enabled by default  
    Using config: /home/zookeeper/server0/zookeeper-3.4.9/bin/../conf/zoo.cfg  
    Starting zookeeper ... STARTED  
    

    jps查看启动的服务
    ./zkServer.sh status 查看相应服务状态
    zookeeper.out 查看日志
    zkServer.sh stop关闭服务

    5.遇到的坑

    1 找不到java -----在zkServer.sh下添加javahome,path 信息
    添加的示例如下

    export JAVA_HOME=/usr/lib/jdk  
    export PATH=$JAVA_HOME/bin:$PATH  
    

    2 QuorumPeer错误---配置myid信息
    在data目录下建立 myid文件,并输入相应的编号

    相关文章

      网友评论

        本文标题:zookeeper学习之三:ubuntu下单机伪集群搭建

        本文链接:https://www.haomeiwen.com/subject/bziwsxtx.html