Kafka 启动问题 --日志文件被占用

50 阅读1分钟

当前环境:windows11,kafka版本:3.5.1

之前将kafka设置为windows服务后,没有在意,后发现服务无法启动,重新使用windows脚本启动后报如下错误:

ERROR Failed to clean up log for __consumer_offsets-37 in dir
D:\kafka-runtime\kafka-logs due to IOException (kafka.server.LogDirFailureChannel) java.nio.file.FileSystemException: 
D:\kafka-runtime\kafka-logs\__consumer_offsets-37\00000000000000000000.log.cleaned -> 
D:\kafka-runtime\kafka-logs\__consumer_offsets-37\00000000000000000000.log.swap:
另一个程序正在使用此文件,进程无法访问。  

怀疑之前的进程没有完全杀死,直接将kafka-logs对应文件夹删除后可以正常启动,看到类似的博客开始怀疑是windows的问题windows kafka __consumer-offsets 日志清理失败, 另一个程序正在使用此文件,进程无法访问 - OrcHome

但是发现之前想直接删除logs文件夹下面的日志文件时发现无法删除被占用:kafka启动时有两个进程在使用,之前kafka关闭的时候只有一个进程在使用该文件,而且这个java.exe还是自启动,后看jps,应该一个是kafka,一个是jps的临时进程,难道是jps临时进程在一直占用kafka的日志文件,感觉有些诡异 image.png

image.png 有无大佬了解这个问题,小白求教