• Zookeeper简单配置


    zookeeper
    集群的协同服务,分布式协调服务

    并行程序多进程之间的调度和控制
    比如:多进程之间的互斥同步运行,多进程事务控制,多进程之间的状态监控,多进程之间的资源共享,进程的故障切换

    zookeeper-3.4.10.tar

    链接:https://pan.baidu.com/s/1VF_omDmCLrXVWrkomB4IZA
    提取码:4ham


    1 解压 zookeeper压缩包
    tar -zxvf zookeeper-3.4.10.tar.gz -C ~/software/

    (讲一下我自己有创建了一个software用来放各类软件,~此处等同于/home/user(家目录下的/用户名下的))

    2 创建软连接,配置环境变量

    vi ~/.bashrc

    export ZK_HOME = /home/user/software

    export PATH =$PATH:$ZK_HOME/bin
    ln -s zookeeper-3.4.10/ zookeeper

    3 创建
    ~/software/data/zk/data
    ~/software/data/zk/dataLog

    4 在~/software/zookeeper/conf/ 新建文件 zoo.cfg
    tickTime=2000
    dataDir=~/software/data/zk/data
    dataLogDir=~/software/data/zk/dataLog
    clientPort=2181

    #####上面部分是单例模式配置

    //---------------------------

    #####下面部分是全分布集群


    在每台机器上
    1 解压 zookeeper压缩包

    2 创建软连接,配置环境变量

    3 创建
    ~/software/data/zk/data
    ~/software/data/zk/dataLog

    4 新建 ~/software/data/zk/data/myid
    每台节点id不同
    如 第一台 为 1 ,第二台为 2 ,第三台为 3

    5 在$ZK_HOME/conf/ 新建文件 zoo.cfg
    tickTime=2000
    dataDir=~/software/data/zk/data
    dataLogDir=~/software/data/zk/dataLog
    clientPort=2181
    initLimit=5
    syncLimit=2
    server.1=server1:2888:3888
    server.2=server2:2888:3888
    server.3=server3:2888:3888

    ----------------------

    zkServer.sh start

    zkServer.sh status
    leader or follower

    ####
    zkCli.sh -server 127.0.0.1:2181

    ----------------

    讲解:

    1.tickTime:Client-Server通信心跳时间
    Zookeeper 服务器之间或客户端与服务器之间维持心跳的时间间隔,也就是每个 tickTime 时间就会发送一个心跳。tickTime以毫秒为单位。
    tickTime=2000

    2.initLimit:Leader-Follower初始通信时限
    集群中的follower服务器(F)与leader服务器(L)之间初始连接时能容忍的最多心跳数(tickTime的数量)。
    initLimit=5

    3.syncLimit:Leader-Follower同步通信时限
    集群中的follower服务器与leader服务器之间请求和应答之间能容忍的最多心跳数(tickTime的数量)。
    syncLimit=2 

    4.dataDir:数据文件目录
    Zookeeper保存数据的目录,默认情况下,Zookeeper将写数据的日志文件也保存在这个目录里。
    dataDir=/home/user/software/data/zk/data 

    5.clientPort:客户端连接端口
    客户端连接 Zookeeper 服务器的端口,Zookeeper 会监听这个端口,接受客户端的访问请求。
    clientPort=2181

    6.服务器名称与地址:集群信息(服务器编号,服务器地址,LF通信端口,选举端口)
    这个配置项的书写格式比较特殊,规则如下:
    server.N=YYY:A:B

    7.maxClientCnxns:对于一个客户端的连接数限制,默认是60,这在大部分时候是足够了。但是在我们实际使用中发现,在测试环境经常超过这个数,经过调查发现有的团队将几十个应用全部部署到一台机器上,以方便测试,于是这个数字就超过了。

    8.autopurge.snapRetainCount、autopurge.purgeInterval -- 客户端在与zookeeper交互过程中会产生非常多的日志,而且zookeeper也会将内存中的数据作为snapshot保存下来,这些数据是不会被自动删除的,这样磁盘中这样的数据就会越来越多。不过可以通过这两个参数来设置,让zookeeper自动删除数据。autopurge.purgeInterval就是设置多少小时清理一次。而autopurge.snapRetainCount是设置保留多少个snapshot,之前的则删除。

    server.1=server1:2888:3888 
    server.2=server2:2888:3888 
    server.3=server3:2888:3888

    myid的值是zoo.cfg文件里定义的server.A项A的值,Zookeeper 启动时会读取这个文件,拿到里面的数据与 zoo.cfg 里面的配置信息比较从而判断到底是那个server,只是一个标识作用。

  • 相关阅读:
    ssh无密码登录设置
    Spark Standalone Mode 多机启动 -- 分布式计算系统spark学习(二)(更新一键启动slavers)
    Spark Standalone Mode 单机启动Spark -- 分布式计算系统spark学习(一)
    为golang程序使用pprof远程查看httpserver运行堆栈,cpu耗时等信息
    golang官方实现如何对httpserver做频率限制(最大连接数限制)
    【转】涨姿势了,数据库隔离性的几个级别
    loadRunner 11.0 安装及破解
    EF 如何code first
    百度搜索自动提示搜索相关内容----模拟实现
    如何写出专业级OOP程序-----文档注释
  • 原文地址:https://www.cnblogs.com/Diyo/p/11128362.html
Copyright © 2020-2023  润新知