hadoop常见错误问题及解决方法(2)

来源:互联网 发布:mysql导出数据库命令 编辑:程序博客网 时间:2024/06/08 17:00

以下为本人在学习hadoop过程中遇到问题,在此做下总结方便以后查阅,同时也希望对大家有所帮助;

11、报错:/lib/ld-linux.so.2:bad ELF interpreter: 没有那个文件或目录 

原因:缺少glibc.i686组件。

解决方法:yum installglibc.i686

 

 

12、hadoop-site.xml:1:1: 文件提前结束

原因:

hadoop目录下面conf文件夹中多了一个hadoop-site.xml配置文件,在0.20.2版本之前,conf里面有一个hadoop-site.xml文件,在0.20.2之后的版本conf下没有这个hadoop-site.xml文件,取而代之的是下面这3个文件,core-site.xml,hdfs-site.xml,mapred-site.xml。

解决方法:

删除conf目录下面的hadoop-site.xml。

 

13、用Eclipse连接集群查看文件信息提示9001端口拒绝连接的错误

Cannot connect to theMap/Reduce location: hadoop1.0.3

Call tolocalhost/127.0.0.1:9001 failed on connection exception:java.net.ConnectException: 拒绝连接

解决方法:

配置都是正常的,就是连接不了。后来重新配置hadoop location,把MR Master和DFS Master中的host由localhost改为ip地址(192.168.33.164),然后问题就解决了。

 

 

14、无法加载native-hadoop library

报错:WARN util.NativeCodeLoader: Unable to load native-hadoop library foryour platform... using builtin-java classes where applicable

解决方法:

经过研究发现,

usr/hadoop-2.2.0/lib/native/libhadoop.so.1.0.0:/lib/tls/libc.so.6: version `GLIBC_2.6' not found (required by/usr/hadoop-2.2.0/lib/native/libhadoop.so.1.0.0)是linux自带的libc.so.6的版本与hadoop的本地库不兼容,可

尝试更新GLIBC_2.6 以上,从下面地址可以搜到

http://rpm.pbone.net/index.php3


另,也可参考这篇文章的解决方法:http://music.573114.com/Blog/Html/FA00/704779.html

 

 

15、Java访问Hbase的时候,Linux主机名如果用默认的localhost.localdomain,容易引起远程访问的时候,得到的地址是localhost/127.0.0.1,把hostname改了,并配置/etc/hosts文件,就好了。

 

 

16、hadoop在高并发web开发上有用武之地吗?

答:没有,hadoop是处理大数据的,不用于处理高并发。

 

 

17、搭建集群的时候,为什么格式化后,namenode启动不了了,,如何解决?

解决方法:

将每个节点的tmp删除,之后格式化主节点就可以了;只要配置文件没错,就不会有问题。如果是伪分布遇到这个问题,那么,将NameNode和dataNode的ID改成一致就可以了。

 

 

18、hadoop安装时,为什么只能格式化一次HDFS?格式化过程都做了什么?

答:格式化的时候,会先把系统下的文件都删除,然后建立新的dfs name directory,其实就是创建FsImage文件和EditLog文件,这些文件在创建的时候会写入一些初始值。

 

19、hadoop-root-datanode-master.log中有如下错误:

ERRORorg.apache.hadoop.hdfs.server.datanode.DataNode: java.io.IOException:Incompatible namespaceIDs in

结果:datanode启动不了

原因:每次namenode格式化会重新创建一个namenodeId,而dfs.data.dir参数配置的目录中包含上次format创建的id,这与dfs.name.dir参数配置的目录中的id不一致。Namenode format清空了namenode下的数据,但是没有清空datanode下的数据,导致启动失败,所要做的就是每次format前,清空dfs.data.dir参数配置的目录。

 

20、datanode连接不上namenode,导致datanode无法启动。

报错: ERRORorg.apache.hadoop.hdfs.server.datanode.DataNode: java.io.IOException: Call to... failed on local exception: java.net.NoRouteToHostException: No route tohost.

 

解决方法:

关闭防火墙,shell命令:service iptables stop,机器重启后,防火墙还会开启。

可永久关闭,用命令:chkconfig iptables off。


0 0
原创粉丝点击