Hadoop Namenode几乎每天都会崩溃一次。
FATAL namenode.FSEditLog (JournalSet.java:mapJournalsAndReportErrors(398)) -
**Error: flush failed for required journal** (JournalAndStream(mgr=QJM to [< ip >:8485, < ip >:8485, < ip >:8485], stream=QuorumOutputStream starting at txid <>))
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:107)
at org.apache.hadoop.hdfs.server.namenode.EditLogOutputStream.flush(EditLogOutputStream.java:113)
at
有人可以建议我为解决这个问题需要考虑哪些事项?
我正在将VM用于日志节点和主节点。它会导致任何问题吗?
答案 0 :(得分:0)
根据您粘贴的错误。您的日记节点似乎无法及时与NN通信。这次活动发生了什么事?
既然你提到你的节点是vms,我猜你会超载虚拟机管理程序,或者它从NN到JN和zk仲裁的讨论很麻烦。
答案 1 :(得分:0)
就我而言,这个问题是由于群集节点之间的系统时间不同造成的。
为了使系统时间保持同步,我们可以在每个节点中执行以下命令。
sudo service ntpd stop
sudo ntpdate pool.ntp.org # Run this command multiple times
sudo service ntpd start
如果hue已关闭,请在hue服务器计算机上运行以下命令
sudo service hue start
如果namenode已关闭,请启动namenode。
在环境的所有节点上为root用户添加crontab。
或
安装VM工具,以保持系统时间同步。