我是靠谱客的博主 畅快小蚂蚁,最近开发中收集的这篇文章主要介绍Hadoop 集群常见错误,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

原文链接:http://www.open-open.com/lib/view/open1330946781999.html

这里将自己在初识hadoop过程中遇到的一些错误做一个简单总结:

(一)启动hadoop集群时易出现的错误:

1. 错误现象:java.net.NoRouteToHostException: No route to host.

原因:master服务器上的防火墙没有关闭。

解决方法: 在master上关闭防火墙: chkconfig iptables off.

2.错误现象:org.apache.hadoop.ipc.RPC: Server at JMN/10.22.1.203:9000 not available yet. /* JMN/10.22.1.203 是 hadoop集群当中master的主机名/ip */

原因/etc/hosts中的文件被自动篡改。

解决方法: /etc/hosts 文件按配置文件要求改回来。

3.错误现象Too many fetch-failures.

原因:结点间的连通不够全面。

解决方法:

1) 检查 /etc/hosts要求本机ip对应服务器名,并且包含所有的服务器ip和服务器名。

2) 检查 .ssh/authorized_keys要求包含所有服务器(包括其自身)的public key。

(二)在hadoop集群的master中用命令运行例子易出现的故障:

1.错误现象:java.lang.OutOfMemoryError: Java heap space.

原因:JVM内存不够。

解决方法:修改mapred-site.xml中mapred.child.java.opts属性的值,其默认值是-Xmx200m 可根据需要适当增大 该值。

2.错误现象:could only be replicated to 0 nodes, instead of 1

解决方法:在NameNode上执行命令:hadoop namenode –format重新格式化HDFS,在格式化之前,需要将你 NameNode上所配置的dfs.name.dir这一namenode用来存放NameNode 持久存储名字空间及事务日志的本地文件系统路径删除,同时将各DataNode上的dfs.data.dir的路径DataNode存放块数据的本地文件系统路径的目录也删除。

3. 错误现象namenode in safe mode.

原因:hadoop进入安全模式。

解决方法:在shell中执行命令hadoop dfsadmin -safemode leave 使hadoop离开安全模式。

(三)在windows下Eclipse中运行例子易出现的错误:

1. 错误现象:org.apache.hadoop.security.AccessControlException: Permission denied: user=administrator, access=EXECUTE, inode="job_201111031322_0003":heipark:supergroup:rwx-.

原因:本地用户administrator(本机windows用户)想要远程操作hadoop系统,没有权限引起的。

解决办法:

i、如果是测试环境,可以取消hadoop hdfs的用户权限检查。打开conf/hdfs-site.xml,找到dfs.permissions属性修改为false(默认为true)OK了。

ii、修改hadoop location参数,在advanced parameter选项卡中,找到hadoop.job.ugi项,将此项改为启动hadoop的用户名即可。

2.错误现象:IOException: Cannot run program "chmod": CreateProcess error=2.

原因: 没有安装cygwin或 没有配置环境变量。
解决办法:安装并配置环境变量 bin到 path下 重启 eclipse 问题即可。

3. 错误现象: WARN mapred.LocalJobRunner: job_local_0001
java.lang.OutOfMemoryError: Java heap space
at org.apache.hadoop.mapred.MapTask$MapOutputBuffer.<init>(MapTask.java:781)
at org.apache.hadoop.mapred.MapTask.runOldMapper(MapTask.java:350)
………..

原因:客户端程序运行时java虚拟机内存分配不够

解决办法:修改run configuration,选择Arguments选项卡,在VM arguments栏中加入-Xmx1024m,保存即可解决问题。


最后

以上就是畅快小蚂蚁为你收集整理的Hadoop 集群常见错误的全部内容,希望文章能够帮你解决Hadoop 集群常见错误所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(54)

评论列表共有 0 条评论

立即
投稿
返回
顶部