我正在尝试在我的Ubuntu机器上使用单服务器集合设置Zookeeper。 我使用成功消息启动了服务器,并期望它已经启动。
akshay@akshay:~$ /var/zookeeper/zookeeper-3.4.9/bin/zkServer.sh start
ZooKeeper JMX enabled by default
Using config: /var/zookeeper/zookeeper-3.4.9/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
akshay@akshay:~$
但似乎服务器从未启动,虽然日志开始说。 我也尝试在没有启动选项的情况下启动服务器,如类似问题所示,这也是不成功的。
我用以下方式验证了这一点。
服务器状态
akshay @ akshay:〜$ /var/zookeeper/zookeeper-3.4.9/bin/zkServer.sh状态 默认情况下启用ZooKeeper JMX 使用config:/var/zookeeper/zookeeper-3.4.9/bin/../conf/zoo.cfg 联系服务时出错。它可能没有运行。
尝试使用kazoo客户端连接到服务器并最终出现超时错误。
来自kazoo.client导入KazooClient zk_client = KazooClient(hosts = '127:0:0:1:2181') zk_client.start()
输出:
----------------------------------------------- ---------------------------- KazooTimeoutError Traceback(最近的电话 最后)in() ----> 1 zk_client.start()
/usr/local/lib/python2.7/dist-packages/kazoo/client.pyc in start(self, 超时) 544#我们超时,确保我们断开连接 545 self.stop() - > 546引发self.handler.timeout_exception(“连接超时”) 547 548如果self.chroot而不是self.exists(“/”):
KazooTimeoutError:连接超时
下面是我的zoo.cfg
akshay@akshay:~$ cat /var/zookeeper/zookeeper-3.4.9/conf/zoo.cfg
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/var/zookeeper/data
clientPort=2181
如果我在此过程中遗漏了任何内容,是否有人可以提供帮助。 我按照apache zookeeper doc
的设置步骤进行操作答案 0 :(得分:1)
这里的问题是zookeeper和java 9的版本兼容性,基于今天的日期(2016-11-13)。我回到了java 8,事情进展顺利。
但仍然存在问题的原因是服务器启动时会将错误消息称为Starting zookeeper ... STARTED
我通过查看类似
之类的zookeeper.out文件来解决这个问题Config file not found: /usr/lib64/jvm/java-1.9.0-openjdk-1.9.0/jre/conf/management/management.properties
采取进一步措施作为this question中建议的答案。