hadoop常见错误以及处理方法详解

 更新时间:2013年06月19日 18:07:24   作者:  
本篇文章是对hadoop常见错误以及处理方法进行了详细的分析介绍,需要的朋友参考下

1、hadoop-root-datanode-master.log 中有如下错误:
ERROR org.apache.hadoop.hdfs.server.datanode.DataNode: java.io.IOException: Incompatible namespaceIDs in
导致datanode启动不了。
原因:每次namenode format会重新创建一个namenodeId,而dfs.data.dir参数配置的目录中包含的是上次format创建的id,和dfs.name.dir参数配置的目录中的id不一致。namenode format清空了namenode下的数据,但是没有清空datanode下的数据,导致启动时失败,所要做的就是每次fotmat前,清空dfs.data.dir参数配置的目录.
格式化hdfs的命令

复制代码 代码如下:

hadoop namenode -format 

2、如果datanode连接不上namenode,导致datanode无法启动。
ERROR org.apache.hadoop.hdfs.server.datanode.DataNode: java.io.IOException: Call to ... failed on local exception: java.net.NoRouteToHostException: No route to host
关闭防火墙
复制代码 代码如下:

service iptables stop

机器重启后,防火墙还会开启。

3、从本地往hdfs文件系统上传文件,出现如下错误:
INFO hdfs.DFSClient: Exception in createBlockOutputStream java.io.IOException: Bad connect ack with firstBadLink
INFO hdfs.DFSClient: Abandoning block blk_-1300529705803292651_37023
WARN hdfs.DFSClient: DataStreamer Exception: java.io.IOException: Unable to create new block.
解决方法:
关闭防火墙:

复制代码 代码如下:

service iptables stop

禁用selinux:
编辑 /etc/selinux/config文件,设置“SELINUX=disabled”

4、安全模式导致的错误
org.apache.hadoop.dfs.SafeModeException: Cannot delete ..., Name node is in safe mode
在分布式文件系统启动的时候,开始的时候会有安全模式,当分布式文件系统处于安全模式的情况下,文件系统中的内容不允许修改也不允许删除,直到安全模式结束。安全模式主要是为了系统启动的时候检查各个DataNode上数据块的有效性,同时根据策略必要的复制或者删除部分数据块。运行期通过命令也可以进入安全模式。在实践过程中,系统启动的时候去修改和删除文件也会有安全模式不允许修改的出错提示,只需要等待一会儿即可。

复制代码 代码如下:

hadoop dfsadmin -safemode leave

关闭安全模式

相关文章

  • php重定向的三种方法分享

    php重定向的三种方法分享

    个人更倾向于header的方法,这样页面的跳转速度更快点,用户从视觉上不易察觉整页的跳转,而只是局部的变化
    2012-02-02
  • ueditor 1.2.6 使用方法说明

    ueditor 1.2.6 使用方法说明

    以下文本是以php版本为例的,对ueditor 1.2.6的使用方法进行了详细的说明介绍,需要的朋友可以过来参考下
    2013-07-07
  • php smarty模板引擎的6个小技巧

    php smarty模板引擎的6个小技巧

    php smarty模板引擎中几个经常被忽略的但比较有用的标签整理,包括capture标签,config_load标签,php标签,strip标签,fetch标签,以及如何在smarty模板中直接使用define定义的常量
    2014-04-04
  • PHP 二维数组根据某个字段排序的具体实现

    PHP 二维数组根据某个字段排序的具体实现

    从两个不同的表中获取各自的4条数据,然后整合(array_merge)成一个数组,再根据数据的创建时间降序排序取前4条
    2014-06-06
  • vs中通过剪切板循环来循环粘贴不同内容

    vs中通过剪切板循环来循环粘贴不同内容

    只要按Ctrl+Shift+V键,就可以在过去剪切或复制到剪切板上的20条内容间进行循环粘贴,太帅了哈哈!
    2011-04-04
  • 浅谈PHP 闭包特性在实际应用中的问题

    浅谈PHP 闭包特性在实际应用中的问题

    PHP5.3 新版本跟随了很多新特性, 其中比较惹眼的特性之一就是支持了闭包。那么以后,我们也可以和那帮写 Ruby、Javascript 等等“高科技语言”的家伙们一样,写出非常酷的代码吗?
    2009-10-10
  • php函数传值的引用传递注意事项分析

    php函数传值的引用传递注意事项分析

    这篇文章主要介绍了php函数传值的引用传递注意事项,涉及php配置文件的设置及数组函数的使用技巧,需要的朋友可以参考下
    2016-06-06
  • php使用数组填充下拉列表框的方法

    php使用数组填充下拉列表框的方法

    这篇文章主要介绍了php使用数组填充下拉列表框的方法,涉及php操作数组的技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-03-03
  • PHP去除空数组且数组键名重置的讲解

    PHP去除空数组且数组键名重置的讲解

    今天小编就为大家分享一篇关于PHP去除空数组且数组键名重置的讲解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-02-02
  • php控制文件下载速度的方法

    php控制文件下载速度的方法

    这篇文章主要介绍了php控制文件下载速度的方法,实例分析了php操作文件的技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-03-03

最新评论