• zookeeper笔记


    zookeeper

    zk是什么?

      zk是一个高效的分布式协调服务
      zk在工作中不要存储大量的数据,可以放一些配置文件在其中
      zk是基于paxos,zab算法是实现的。其集群中所有数据是一样的 ,zk最少三个节点,最好是奇数,不影响paxos的选举
      zk少于半数不能继续工作,zk算法中有一个分布式锁,当消息没有接受完成时不会接受下一个任务

    zk 配置文件

      /conf/zoo.cfg

    心跳连接  

    clientport=3000 对外端口号

    #maxclientcnxns=60   默认情况连接不限制

    server.2 代表第二个节点    2881:3881 同步数据端口号:选举端口号

    实战

      解压到linux

      分布三台zookeeper1,zookeeper2,zookeeper3   三台在一台服务器上

    第一步:

      1、进入zookeeper1的conf

        cd /zookeeper1/conf

      2、复制并更名

        cp zoo_sample.cfg zoo.cfg

      3、修改配置文件

        vi zoo.cfg

        dataDir=后面是你自己的data目录

        dataDir=/zookeeper1的路径/data    

        clientPort端口号多机不一样

        在最后面加上以下内容

        server.1=127.0.0.1:2880:3880

        server.2=127.0.0.1:2881:3881

        server.3=127.0.0.1:2883:3883

      4、进入zookeeper

        cd../

      5、新建一个空文件夹

         mkdir data

      6、进入这个文件夹

        cd data

      7、新建一个文件并进入

        vi myid

      8、输入相关内容,例如1

    第二步:

      根据以上操作操作zookeeper2及3

    第三步:

      所有zookeeper启动在bin下的

      ./zkServer.sh start

      之后检查配置谁是主,谁是从

      ./zkServer.sh status

      ./zkCli.sh 启动客户端

    zkCli内置命令  其命令行有这类似于linux的命令

      查找: ls /

      创建并复制: create  / aaa nihao         # create 创建节点后面必须要赋值

      获取: get aaa

      设置值:set /aaa bnn

      删除节点:rmr aaa

      指定删除某个节点: delete /aaa/bbb

    tips:

    ctime 节点创建时间(第一次启动)
    mtime 修改时间
    cversion 版本
    dataversion 数据修改第几次
    aclversion ###
    ephemeralowner ###
    datalength 字节长度
    numchildren 子节点数

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

    注释:

    server.1=192.168.60.150:2888:3888

    server.2=192.168.60.151:2888:3888

    server.3=192.168.60.152:2888:3888

    # server.A=B:C:D:其中 A 是一个数字,表示这个是第几号服务器;

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

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

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

    # 而这个端口就是用来执行选举时服务器相互通信的端口。如果是伪集群的配置方式,

    # 由于 B 都是一样,所以不同的 Zookeeper 实例通信端口号不能一样,所以要给它们分配不同的端口号。

    版权声明:本文原创发表于 博客园,作者为 RainBol 本文欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则视为侵权。

  • 相关阅读:
    Java实现HadoopHA集群的hdfs控制
    Hadoop-2.8.5的HA集群搭建
    Python实现bing必应壁纸下载
    使用Python3将Markdown(.md)文本转换成 html、pdf
    使用GitHub作Free图床
    JavaMail实践--实现邮件发送
    Python3实现图片转字符画
    Java编写的Java编辑器_JavaIDE
    Java实现简易版计算器
    Java实现Excel表格操作--API:jxl
  • 原文地址:https://www.cnblogs.com/RainBol/p/9486036.html
Copyright © 2020-2023  润新知