Zookeeper在Windows下的安装与运行(解决Zookeeper在Windows下莫名其妙的安装Bug)

基本流程

如何安装Zookeeper的教程有很多,这里列举一下我在安装期间主要参考的几个。
官网文档:
ZooKeeper Getting Started Guide
博客:
Zookeeper入门看这篇就够了
zookeeper在windows下的伪集群模式
经验之谈就是对于这种安装教程一定要在安装前多在浏览器中打开几个。由于版本等问题,几乎没有哪个框架的哪个教程能顺利一遍走下来的。

运行.\bin\zkServer.sh start报错问题解决

问题描述

在zookeeper官网文档中,介绍运行命令如下:
在这里插入图片描述
这个命令是linux的,合理推测windows下命令应该为

.\bin\zkServer.cmd start

运行命令,报错
在这里插入图片描述

解决方案

Zookeeper在windows下运行不需要加start参数。
即正确运行命令为:

.\bin\zkServer.cmd

如何设置使用的配置文件(不使用默认的zoo.cfg)?

问题描述

运行框架代码最重要的就是规定配置文件了,尤其是像zookeeper这种分布式框架。在一台机器上通过三个cmd窗口运行3个zookeeper实例,每一个实例使用独立的配置文件,这应该是刚开始学习Zookeeper的萌新们一个非常常见的需求,但是官网文档却对此语焉不详。许多博客所使用的方法也让人啼笑皆非。

问题解决

目前我见到的最合适的方法是博客《zookeeper在windows下的伪集群模式》中介绍的修改zkServer.cmd的方法。

摘抄如下:

在 \zookeeper-3.4.6\bin\ 新建三个server
拷贝zkServer.cmd三份,分别命名zkServer-1.cmd,zkServer-2.cmd,zkServer-3.cmd;
打开这三个.cmd,在set ZOOMAIN=org.apache.zookeeper.server.quorum.QuorumPeerMain后面
添加一行,对应相应的配置文件:
set ZOOCFG=…\conf\zoo1.cfg(zkServer-1.cmd添加)
set ZOOCFG=…\conf\zoo2.cfg(zkServer-2.cmd添加)
set ZOOCFG=…\conf\zoo3.cfg(zkServer-3.cmd添加)
在这里插入图片描述

运行时出现Prepend .\ to indicate that you’re sure! 问题解决

问题描述

使用我们自己定义的cfg文件时,可能会出现这样的报错。
在这里插入图片描述
即,由于我们输入的cfg文件的路径格式(…\conf\con_3.cfg)不对,导致系统认为我们输入的启动参数不对,进而报错。

问题解决

提示信息说的很明确,zookeeper在wiodows使用相对路径时都需要在最开始加上.\,以防出现混淆。

运行时出现Invalid Config问题的一种可能解决方案(绝对路径问题)

问题描述

我在zoo.cfg中使用了绝对路径作为我存储zookeeper数据的文件夹路径。
在这里插入图片描述
该路径是直接从资源管理器中复制过来的。接着启动,出现了Invalid Config错误。

问题解决

观察报错信息,发现zookeeper把我的路径解析成了E:zookeeperdatazookeeper_3
这说明。。zookeeper会把单一\当成转义字符。。
因此配置文件应该这么写
在这里插入图片描述

结尾

Zookeeper的安装应该说包含了3个部分:
单机模式启动:参考官网文档即可,注意windows下可能产生的Bug
伪集群模式启动:推荐参考zookeeper在windows下的伪集群模式,官网文档语焉不详。
使用Java调用API进行操作:推荐参考Zookeeper入门看这篇就够了,可以实现一个最简单的demo。

使用Java调用API的高级用法可以去参考官网文档上的其他内容。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值