Nat*_*H06 2 apache-kafka apache-zookeeper
我正在尝试使用以下命令通过 CLI 启动 Zookeeper:
bin/zookeeper-server-start.sh ../config/zookeeper.properties
它嗡嗡作响了一秒钟,似乎一切都是正确的,直到它说:
INFO binding to port 0.0.0.0/0.0.0.0:2181 (org.apache.zookeeper.server.NIOServerCnxnFactory)
Run Code Online (Sandbox Code Playgroud)
然后下面的代码无限循环直到我退出:
[2018-08-10 15:07:48,223] INFO Accepted socket connection from /172.31.39.32:46374 (org.apache.zookeeper.server.NIOServerCnxnFactory)
[2018-08-10 15:07:48,228] WARN Exception causing close of session 0x0 due to java.io.IOException: ZooKeeperServer not running (org.apache.zookeeper.server.NIOServerCnxn)
[2018-08-10 15:07:48,228] INFO Closed socket connection for client /172.31.39.32:46374 (no session established for client) (org.apache.zookeeper.server.NIOServerCnxn)
Run Code Online (Sandbox Code Playgroud)
这是一台服务器,我相信是一台单节点测试服务器,因此没有法定人数或其他部分正在运行。我的动物园管理员配置是基本的,它只包含以下内容:
dataDir=/tmp/zookeeper
clientPort=2181
maxClientCnxns=0
Run Code Online (Sandbox Code Playgroud)
奇怪的是,我的动物园管理员一直运行良好,而且我没有对配置进行任何更改。将其拉下来尝试修复其他问题以在动物园管理员上快速重新启动,但它不会让步。我检查过,端口 2181 上没有其他任何东西在运行。
我看到这个问题已经被问了好几次了,但没有答案,有什么想法吗?
小智 5
发生这种情况的原因可能是 Zookeeper 数据中存在一些损坏。您不应该设置dataDir为/tmp/*. 如果你的电脑清除了/tmp的一些数据,zookeeper重启后将很难恢复状态。如果您检查 Zookeeper 日志,您应该会看到某种异常。
既然您提到这个 Zookeeper 实例仅用于测试目的。您应该设置
dataDir为除此以外的任何值/tmp,然后尝试重新启动。