Java Storm Supervisor守护程序死亡:设备上没有剩余空间异常

Java Storm Supervisor守护程序死亡:设备上没有剩余空间异常,java,exception,apache-zookeeper,apache-storm,Java,Exception,Apache Zookeeper,Apache Storm,我在单个节点上运行storm群集,即nimbus、supervisor都在同一节点上以分布式模式运行。拓扑运行了7天,没有任何问题,但突然主管守护进程死亡。不存在supervisor.log文件,在检查工作日志时,我发现以下异常: java.io.IOException: No space left on device at java.io.FileOutputStream.writeBytes(Native Method) ~[na:1.7.0_51] at java.io.F

我在单个节点上运行storm群集,即nimbus、supervisor都在同一节点上以分布式模式运行。拓扑运行了7天,没有任何问题,但突然主管守护进程死亡。不存在supervisor.log文件,在检查工作日志时,我发现以下异常:

java.io.IOException: No space left on device
    at java.io.FileOutputStream.writeBytes(Native Method) ~[na:1.7.0_51]
    at java.io.FileOutputStream.write(FileOutputStream.java:325) ~[na:1.7.0_51]
    at org.apache.commons.io.FileUtils.writeByteArrayToFile(FileUtils.java:2095) ~[commons-io-2.4.jar:2.4]
    at org.apache.commons.io.FileUtils.writeByteArrayToFile(FileUtils.java:2078) ~[commons-io-2.4.jar:2.4]
    at backtype.storm.utils.LocalState.persist(LocalState.java:102) ~[storm-core-0.9.3.jar:0.9.3]
    at backtype.storm.utils.LocalState.put(LocalState.java:82) ~[storm-core-0.9.3.jar:0.9.3]
    at backtype.storm.daemon.worker$do_heartbeat.invoke(worker.clj:69) ~[storm-core-0.9.3.jar:0.9.3]  
我已经搜索过这个异常,但我无法理解为什么会发生。我的系统上有足够的可用空间。我怀疑主管是否会因为某个工人而死亡?在我的设置中,我使用storm.local.dir:as/mnt/storm

还有,当我们已经有了一个zookeeper时,LocalState.java的用途是什么? 我在以下链接找到了有关storm用户的一些讨论:


但在那次讨论中,他们一直在本地模式下运行风暴,Nathan Marz对此给出了解释。但在我的例子中,它是分布式模式。如果需要,请询问更多信息。谢谢

您是否在拓扑中写入本地磁盘?日志文件是否旋转以释放空间?你的磁盘分区了吗?错误发生时,您的空间不足,但如果您现在没有空间,则在错误发生后,某些内容已被清理。是的,我对该错误有相同的第一印象。然后又出现了一个问题,我们如何自动清理日志文件。在storm中有这样的设置吗?嗯,您可以使用类似logrotate的东西来处理日志。风暴中没有任何东西。