zoukankan      html  css  js  c++  java
  • Zookeeper集群搭建

    注意:Zookeeper集群的机器个数要求是奇数,且不少于3

    三台机器

     192.168.119.150

     192.168.119.151

     192.168.119.152

    设置主机名【三台机器】

    vim /etc/hostname
    wal150
    vim /etc/hosts
    192.168.119.150 wal150
    192.168.119.151 wal151
    192.168.119.152 wal152
    cd /usr/local/software
    scp zookeeper-3.4.6.tar.gz 192.168.119.151:/usr/local/software/
    scp zookeeper-3.4.6.tar.gz 192.168.119.152:/usr/local/software/

    解压【三台机器】

    cd /usr/local/software
    tar -zxvf zookeeper-3.4.6.tar.gz -C /usr/local/
    cd /usr/local
    mv zookeeper-3.4.6/ zookeeper

    添加全局环境变量【三台机器】

    vim /etc/profile
    添加
    export ZOOKEEPER_HOME=/usr/local/zookeeper
    修改
    export PATH=$JAVA_HOME/bin:$ZOOKEEPER_HOME/bin:$PATH
    重新加载配置文件
    source /etc/profile

    修改配置文件【三台机器】

    cd /usr/local/zookeeper/conf
    mv zoo_sample.cfg zoo.cfg
    vim zoo.cfg
    修改
    dataDir=/usr/local/zookeeper/data
    文件末尾添加
    server.0=wal150:2888:3888
    server.1=wal151:2888:3888
    server.2=wal152:2888:3888

    服务器标识配置:【三台机器】

    vim /usr/local/zookeeper/data/myid

    myid文件里的值修改为012 与我们的server.0 server.1 server.2 对应

    如图

     

    启动zookeeper

    路径:/usr/local/zookeeper/bin

    因为配置了全局环境变量,所以可以省去路径

    执行:zkServer.sh start (注意这里3台机器都要进行启动)

    状态:zkServer.sh status(在三个节点上检验zkmode,一个leader和俩个follower)

    如图

    至此,搭建ok

    操作zookeeper (shell)

    zkCli.sh 进入zookeeper客户端

    根据提示命令进行操作:

    查找:ls /   ls /zookeeper

    创建并赋值:create /bhz hadoop

    获取:get /bhz

    设值:set /bhz baihezhuo

    可以看到zookeeper集群的数据一致性

    创建节点有俩种类型:短暂(ephemeral) 持久(persistent

    zoo.cfg详解:

    tickTime:基本事件单元,以毫秒为单位。这个时间是作为 Zookeeper 服务器之间或客户端与服务器之间维持心跳的时间间隔,

    也就是每隔 tickTime时间就会发送一个心跳。

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

    syncLimit:这个配置项标识 Leader Follower 之间发送消息,请求和应答时间长度,最长不能超过多少个 tickTime 的时间长度,总的时间长度就是 5*2000=10

    dataDir:存储内存中数据库快照的位置,顾名思义就是 Zookeeper 保存数据的目录,默认情况下,Zookeeper 将写数据的日志文件也保存在这个目录里。

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

    server.A = B:C:D :

    A表示这个是第几号服务器,

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

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

    D 表示的是万一集群中的 Leader 服务器挂了,需要一个端口来重新进行选举,选出一个新的 Leader

  • 相关阅读:
    深入了解 JavaScript 中的 for 循环
    JavaScript 字符串常用操作
    10个习惯助你成为一名优秀的程序员
    Ubuntu日常问题搜集和解决办法
    提升你的开发效率,10 个 NPM 使用技巧
    Redux教程3:添加倒计时
    Redux教程2:链接React
    Redux教程1:环境搭建,初写Redux
    React + Redux 入坑指南
    12个非常实用的JavaScript小技巧
  • 原文地址:https://www.cnblogs.com/weianlai/p/11341088.html
Copyright © 2011-2022 走看看