【问题标题】:NameNode shuts down itself after starting the hadoopNameNode 在启动 hadoop 后自行关闭
【发布时间】:2015-01-12 21:16:52
【问题描述】:

我已经在 linux 上安装了 hadoop 1.2.1 并具有单节点集群配置。它运行良好,jps 命令显示所有 5 个作业的信息

  • 工作跟踪器
  • 名称节点
  • 任务跟踪器
  • SecondaryNameNode
  • jps
  • 数据节点。`

现在,当我使用命令 bin/start-all.sh 启动 hadoop 时,hadoop 会启动所有 5 个作业,但在几秒钟内 namenode 会自行关闭。

有什么办法可以解决这个问题吗?

我检查了 namenode 日志文件,它显示以下错误:

 ERROR org.apache.hadoop.hdfs.server.namenode.NameNode: java.io.IOException: Edit log corruption detected: corruption length = 98362 > toleration length = 0; the corruption is intolerable.

【问题讨论】:

    标签: hadoop hadoop2


    【解决方案1】:

    这个问题被问了很多次,也得到了回答,用异常消息搜索会给你结果。
    在 Stackoverflow 中提问之前,请通过右上角的搜索选项检查之前提出的相同类型的问题。
    来到问题陈述,
    这很可能是由于您的名称节点存储编辑日志和检查点数据的hadoop.tmp.dir
    每次重启机器后,tmp 文件夹将被许多服务清除,这会导致再次尝试通过 namenode 访问时出现问题。
    所以重启后只有长度为0。
    core-site.xml 中将属性hadoop.tmp.dir 目录更改为其他目录。
    参考是:here
    希望对您有所帮助!

    【讨论】:

    • 我已经尝试过您建议的解决方案。剩下的唯一要尝试的是格式化namenode。我有很多数据,我正在寻找仍然可以保存我的数据的解决方案。
    • 重启机器后,您无法再从temp文件夹中获取数据。如果您的检查点director不是temp,那么您可以从该文件夹中的fsImage取回数据。
    猜你喜欢
    • 2016-02-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-06-17
    • 2015-03-26
    相关资源
    最近更新 更多