微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

HDFS:namenode.FSEditLog (JournalSet.java:mapJournalsAndReportErrors(390)) - 错误:所需日志的刷新失败

如何解决HDFS:namenode.FSEditLog (JournalSet.java:mapJournalsAndReportErrors(390)) - 错误:所需日志的刷新失败

在我们的一个平台上,HDFS namenode 每 1 或 3 天关闭一次并显示以下错误消息

FATAL namenode.FSEditLog (JournalSet.java:mapJournalsAndReportErrors(390)) - Error: flush Failed for required journal (JournalAndStream(mgr=QJM to [<ip1>:<port>,<ip2>:<port>,etc],stream=QuorumOutputStream starting at txid 29873171))
java.io.IOException: Timed out waiting 20000ms for a quorum of nodes to respond.
    at org.apache.hadoop.hdfs.qjournal.client.AsyncLoggerSet.waitForWriteQuorum(AsyncLoggerSet.java:137)
    at org.apache.hadoop.hdfs.qjournal.client.QuorumOutputStream.flushAndSync(QuorumOutputStream.java:109)
    at org.apache.hadoop.hdfs.server.namenode.EditlogoutputStream.flush(EditlogoutputStream.java:113)
    at org.apache.hadoop.hdfs.server.namenode.EditlogoutputStream.flush(EditlogoutputStream.java:107)
    at org.apache.hadoop.hdfs.server.namenode.JournalSet$JournalSetoutputStream$8.apply(JournalSet.java:525)
    at org.apache.hadoop.hdfs.server.namenode.JournalSet.mapJournalsAndReportErrors(JournalSet.java:385)
    at org.apache.hadoop.hdfs.server.namenode.JournalSet.access$100(JournalSet.java:55)
    at org.apache.hadoop.hdfs.server.namenode.JournalSet$JournalSetoutputStream.flush(JournalSet.java:521)
    at org.apache.hadoop.hdfs.server.namenode.FSEditLog.logSync(FSEditLog.java:710)
    at org.apache.hadoop.hdfs.server.namenode.FSEditLogAsync.run(FSEditLogAsync.java:188)
    at java.lang.Thread.run(Thread.java:748)

在这个 FATAL 日志之前,我们可以看到以下类型的日志,我们可以在这些日志上检测响应时间的下降

WARN  client.QuorumJournalManager (QuorumCall.java:waitFor(185)) - Waited 18014 ms (timeout=20000 ms) for a response for sendEdits. Succeeded so far: [<ip1>:<port>,<ip2>:<port>]

您是否遇到过这个问题,您有什么建议可以解决吗?

我们已经:

  • 检查我们的虚拟机时间是否同步
  • 检测到当问题发生时,网络上正在处理大量数据,但尚未检测到根本原因
  • 检查了我们的网络设备。除了我们将要修复的端口从 UP 状态快速变为 DOWN 状态的问题外,网络似乎是正确的

提前致谢

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。