• zookeeper安装教程(Windows)


    请添加图片描述

    Zookeeper

    ZooKeeper 是 Apache 软件基金会的一个软件项目,它为大型分布式计算提供开源的分布式配置服务、同步服务和命名注册。

    Zookeeper 由 雅虎研究院 开发,后来捐赠给了 Apache软件基金会 。由于雅虎内部很多大型系统都依赖着一个类似的组件来协调多个服务,但这个组件存在单点故障问题,因此研究人员就开始研发一个通用的协调框架zookeeper。

    由于之前已经有很多项目均以动物命名如pig, cat,因此就起名叫动物园管理员(zookeeper)。
    请添加图片描述
    特点:

    • 通过冗余服务实现高可用性。
    • 将那些复杂且容易出错的分布式一致性服务封装起来,构成一个高效可靠的原语集,并以一系列简单易用的接口提供给用户使用。
    • 一个典型的分布式数据一致性的解决方案,分布式应用程序可以基于它实现诸如数据发布/订阅、负载均衡、命名服务、分布式协调/通知、集群管理、Master 选举、分布式锁和分布式队列等功能。

    Java环境配置(JDK)

    注意:需要在电脑上配置JDK,如果有,这步忽略!
    如果没有配置可查看如下教程Java JDK安装及环境变量配置(windows)

    1. 下载Zookeeper安装包

    官网下载链接:Zookeeper安装包
    在这里插入图片描述


    选择自己想要的版本进行下载,这里我选择了apache-zookeeper-3.6.0-bin.tar.gz:
    在这里插入图片描述


    2. 安装、配置 Zookeeper

    2.1 解压安装包到你指定的目录

    这里我的目录为D:/zookeeper

    在这里插入图片描述

    2.2 复制 zoo_sample.cfg

    将 conf 目录下的 zoo_sample.cfg 文件j进行复制,重命名为 zoo.cfg。
    在这里插入图片描述
    注意:复制后删掉 zoo_sample.cfg !!!


    2.3 修改 zoo.cfg 配置文件

    修改 zoo.cfg 配置文件中 zookeeper 的数据文件存储位置及添加其日志文件位置。

    2.3.1 新建data和log文件夹

    我们在zookeeper目录下新建两个文件夹,分别用于存放data(数据存储)和log(数据日志):
    在这里插入图片描述

    2.3.2 修改zoo.cfg,配置路径

    修改conf下zoo.cfg配置中数据存储和数据日志路径,添加数据日志路径配置。

    dataDir=D:\zookeeper\apache-zookeeper-3.6.0-bin\data
    dataLogDir=D:\zookeeper\apache-zookeeper-3.6.0-bin\log
    
    • 1
    • 2

    在这里插入图片描述
    zoo.cfg配置文件中参数的作用如下:

    参数作用
    tickTime客户端与服务器或者服务器与服务器之间维持心跳,也就是每个tickTime时间就会发送一次心跳。通过心跳不仅能够用来监听机器的工作状态,还可以通过心跳来控制Flower跟Leader的通信时间
    initLimit集群中的follower服务器(F)与leader服务器(L)之间初始连接时能容忍的最多心跳数
    syncLimit集群中flower服务器(F)跟leader(L)服务器之间的请求和答应最多能容忍的心跳数
    dataDir用来存放myid信息跟一些版本,日志,跟服务器唯一的ID信息等。
    dataLogDir存放事务日志的文件夹
    clientPort客户端连接的接口,客户端连接zookeeper服务器的端口,zookeeper会监听这个端口,接收客户端的请求访问!这个端口默认是2181。
    maxClientCnxns允许连接的客户端数目,0为不限制,通过IP来区分不同的客户端

    在 zkEnv.cmd的34、35行配置一下java home和jdk位置,确保zookeeper能够成功运行!

    set JAVA=D:\java\jdk\jdk1.8.0_202\bin
    set JAVA HOME=D:\java\jdk
    
    • 1
    • 2

    在这里插入图片描述


    3. 验证 Zookeeper

    D:\zookeeper\apache-zookeeper-3.6.0-bin\bin目录下存在zkCli.cmd和zkServer.cmd两个文件。
    在这里插入图片描述

    文件验证
    zkServer.cmd启动zookeeper服务
    zkCli.cmd是否安装成功

    注意:先要启动服务端(zkServer),然后再启动客户端(zkCil),否则会报错!

    3.1 运行服务端(zkServer.cmd):

    在这里插入图片描述

    3.2 运行客户端(zkCil.cmd):

    注意:保持服务端开启,不然你客户端访问谁呢?
    在这里插入图片描述
    Zookeeper配置成功!!!

    请添加图片描述


    4. 启动常见问题解决

    4.1 ZooKeeper启动错误:ZooKeeper audit is disabled

    在这里插入图片描述
    zookeeper新版本启动的过程中,zookeeper新增的审核日志是默认关闭,所以控制台输出ZooKeeper audit is disabled,标准的修改方式应该是在 zkServer.cmd 第24行新增:

    "-Dzookeeper.audit.enable=true"
    
    • 1

    在这里插入图片描述
    注意:如果还是不行就将版本降低至3.6.0以下。

    4.2 出现报错:INFO [main-SendThread(localhost:2181):ClientCnxn$SendThread@1156] - SASL config status: Will not attempt to authenticate using SASL (unknown error)

    在这里插入图片描述
    原因:服务端(zkServer)未启动!

    4.3 运行闪退

    运行 zkCli.cmd 闪退,需要先运行了zkServer.cmd!

    第5步中zoo_sample.cfg文件可能没有删除,会默认读取该文件而忽略zoo.cfg!


    END
    请添加图片描述

  • 相关阅读:
    opencv 打开中文路径图报错
    量子点表面修饰PEG/抗体/金属/细胞膜/无机材料标记与制备
    SpringBoot整合Redis_自定义RedisTemplate
    OpenCV常用功能——灰度处理和图像二值化处理
    Web开发-新建Spring Boot项目
    SQL练习---511.游戏玩法分析 I
    15 高阶导数的概念
    使用 Excel 中的函数准确计算周岁年龄
    排序算法-插入排序详解
    【英语:基础高阶_经典外刊阅读】L1.阅读理解—读题定位法
  • 原文地址:https://blog.csdn.net/cjw12581/article/details/126036573