我刚刚升级到Kafka 1.0和zookeeper 3.4.10 . 首先,一切都开始了 . 独立的 生产环境 者和消费者按预期工作 . 在我运行代码大约10分钟后,Kafka失败并出现此错误:
[2017-11-07 16:48:01,304] INFO在dir中停止提供日志C:\ Kafka \ kafka_2.12-1.0.0 \ kafka-logs(kafka.log.LogManager)[2017-11-07 16: 48:01,320]致命关闭代理,因为C:\ Kafka \ kafka_2.12-1.0.0 \ kafka-logs中的所有日志目录都已失败(kafka.log.LogManager)
我重新安装并重新配置了Kafka 1.0,同样的事情发生了 . 如果我尝试重新启动,则会发生相同的错误 .
删除日志文件有助于启动Kafka,但在短期运行后它会再次失败 .
我已经运行了0.10.2版本很长一段时间,从来没有遇到过这样的事情,它在很长一段时间内非常稳定 .
我试图找到一个解决方案并遵循documentation.中的说明
这还不是一个 生产环境 环境,它是一个相当简单的设置,一个 生产环境 者,一个消费者从一个主题阅读 .
我不确定这是否与zookeeper有任何关系 .
**更新:**该问题已发布在Apache JIRA board目前的共识似乎是它是一个Windows问题 .
5 回答
也涉及这个问题,只清除kafka-logs不起作用 . 你还必须清除zookeeper .
解决步骤:
确保停止动物园管理员 .
查看server.properties文件,找到以下条目下的logs目录 .
删除日志目录及其内容 . 一旦再次启动,Kafka将重新创建该目录 .
查看zookeeper.properties文件,找到以下条目下的数据目录 .
删除数据目录及其内容 . Zookeeper将在重新启动后重新创建目录 .
启动zookeeper .
如果有的话,你试图在Windows机器上执行,尝试在
/config
文件夹的server.properties
中以参数log.dirs
(如log.dirs=C:\some_path\some_path_kafLogs
)的窗口方式更改路径 .默认情况下,此路径将采用unix方式(如
/unix/path/
) .这在Windows机器上适用于我 .
只需清理
C:\Kafka\kafka_2.12-1.0.0\kafka-logs
中的日志并重新启动kafka即可删除zookeeper目录中的日志
重新安装zookeeper可以解决这个问题 .