扩展阅读
  • Docker支持的安装方式
  • linux安装nagios,安装nrpe时候,先安装了openssl再从安装nrpe出错。
  • Centos6下安装Shell下文件上传下载rz,sz命令
  • 我已经用源代码方式安装了apache,如何让它支持php和mysql(php没有安装,mysql安装的是rpm包),要不要重新安装apache?如何删除已有的ap
  • CentOS下PHP安装完成后继续安装GD扩展库
  • 请教IBM服务器安装AIX的安装资料(教程或者资料,最好有安装步骤)
  • win7, win8安装docker需要了解的概念
  • 为什么安装redhat 7.1的时候没有让我配置lilo的安装而是系统默认的给我安装了--那位哥们安装过redhat7.1还望赐教
  • windows下tinyxml.dll下载安装使用(c++解析XML库)
  • 关于X库安装问题:我怎么查看我已经安装了哪些X库,并且哪些知道安装的版本号?
  • tcmalloc内存泄露优化c++开源库下载,安装及使用介绍
  • 我安装的是Red Flag版本的linux,汉字输入法还没有安装,请问怎么安装?
  • win7,win8安装Docker具体过程
  • 如何修改安装包,让CentOS安装成功后,自动运行脚本安装自己的程序?
  • php安装完成后如何添加mysql扩展
  • android自动安装apk代码实例(不使用apk安装器安装)
  • 红帽RHEL下安装docker依赖性检查
  • ubuntu 安装失败后,xp也无法进入;连xp安装盘也无法安装
  • ubuntu系统中软件安装、卸载以及查询是否已经安装某个软件包的方法
  • 在win分区上安装linux和独立分区安装linux有什么区别?可以同时安装吗?(两个linux系统)
  • MemCached介绍及最新稳定版memcached-1.4.20.tar.gz下载和安装
  • 在已经安装了windows2000server的机器上安装红旗linux时,如何配置引导记录安装位置?急
  •  
    当前位置:  NOSQL>hadoop/hbase

    安装hadoop时出现内存不够及其它一些常见的hadoop错误解决办法

     
    分享到:
        发布时间:2014-9-3  


        本文导语:  安装hadoop时出现内存不够及其它一些常见的hadoop错误解决办法 按照文档http://hadoop.apache.org/common/docs/stable/single_node_setup.html 安装完hadoop之后执行bin/hadoopjarhadoop-examples-*.jargrepinputoutput...

        安装hadoop时出现内存不够及其它一些常见的hadoop错误解决办法

        按照文档http://hadoop.apache.org/common/docs/stable/single_node_setup.html 安装完hadoop之后执行

    bin/hadoop jar hadoop-examples-*.jar grep input output 'dfs[a-z.]+'

         出现了系统内存不够的错误:

    java.lang.OutOfMemoryError: Java heap space

        hadoop出现内存不够时完整的异常信息如下:

    11/12/11 17:38:22 INFO util.NativeCodeLoader: Loaded the native-hadoop library
    11/12/11 17:38:22 INFO mapred.FileInputFormat: Total input paths to process : 7
    11/12/11 17:38:22 INFO mapred.JobClient: Running job: job_local_0001
    11/12/11 17:38:22 INFO util.ProcessTree: setsid exited with exit code 0
    11/12/11 17:38:22 INFO mapred.Task:  Using ResourceCalculatorPlugin : org.apache.hadoop.util.LinuxResourceCalculatorPlugin@e49dcd
    11/12/11 17:38:22 INFO mapred.MapTask: numReduceTasks: 1
    11/12/11 17:38:22 INFO mapred.MapTask: io.sort.mb = 100
    11/12/11 17:38:22 WARN mapred.LocalJobRunner: job_local_0001
    java.lang.OutOfMemoryError: Java heap space
        at org.apache.hadoop.mapred.MapTask$MapOutputBuffer.<init>(MapTask.java:949)
        at org.apache.hadoop.mapred.MapTask.runOldMapper(MapTask.java:428)
        at org.apache.hadoop.mapred.MapTask.run(MapTask.java:372)
        at org.apache.hadoop.mapred.LocalJobRunner$Job.run(LocalJobRunner.java:212)
    11/12/11 17:38:23 INFO mapred.JobClient:  map 0% reduce 0%
    11/12/11 17:38:23 INFO mapred.JobClient: Job complete: job_local_0001
    11/12/11 17:38:23 INFO mapred.JobClient: Counters: 0
    11/12/11 17:38:23 INFO mapred.JobClient: Job Failed: NA
    java.io.IOException: Job failed!
        at org.apache.hadoop.mapred.JobClient.runJob(JobClient.java:1257)
        at org.apache.hadoop.examples.Grep.run(Grep.java:69)
        at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:65)
        at org.apache.hadoop.examples.Grep.main(Grep.java:93)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.apache.hadoop.util.ProgramDriver$ProgramDescription.invoke(ProgramDriver.java:68)
        at org.apache.hadoop.util.ProgramDriver.driver(ProgramDriver.java:139)
        at org.apache.hadoop.examples.ExampleDriver.main(ExampleDriver.java:64)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.apache.hadoop.util.RunJar.main(RunJar.java:156)


    具体解决方法为编辑conf/mapred-site.xml文件并增加配置如下:

    <property>
        <name>mapred.child.java.opts</name>
        <value>-Xmx1024m</value>
      </property>

    通过此配置可以增加hadoop的jvm可分配的的内存大小。

    对于通过RPM or DEB方式来安装的,所有的配置文件在 /etc/hadoop目录下, /etc/hadoop/hadoop-env.sh 里设置了java可用的最大堆内存大小:

    export HADOOP_CLIENT_OPTS="-Xmx128m $HADOOP_CLIENT_OPTS"

    可以改变此设置为:

    export HADOOP_CLIENT_OPTS="-Xmx2048m $HADOOP_CLIENT_OPTS"

    来增加可用内存大小。



    其它一些常见的hadoop错误解决办法如下:

    1. hadoop错误: Shuffle Error: Exceeded MAX_FAILED_UNIQUE_FETCHES; bailing-out

    Answer:

    程序里面需要打开多个文件,进行分析,系统一般默认数量是1024,(用ulimit -a可以看到)对于正常使用是够了,但是对于程序来讲,就太少了。

    修改办法:

    修改2个文件。

           /etc/security/limits.conf

    vi /etc/security/limits.conf

    加上:

    * soft nofile 102400
    * hard nofile 409600


    $cd /etc/pam.d/

    $sudo vi login

    添加        

    session required     /lib/security/pam_limits.so


    针对第一个问题我纠正下答案:

    这是reduce预处理阶段shuffle时获取已完成的map的输出失败次数超过上限造成的,上限默认为5。引起此问题的方式可能会有很多种,比如网络连接不正常,连接超时,带宽较差以及端口阻塞等。。。通常框架内网络情况较好是不会出现此错误的。

    2.hadoop错误: Too many fetch-failures

    Answer:

    出现这个问题主要是结点间的连通不够全面。

    1) 检查 、/etc/hosts

    要求本机ip 对应 服务器名

    要求要包含所有的服务器ip + 服务器名

    2) 检查 .ssh/authorized_keys

    要求包含所有服务器(包括其自身)的public key

    3.hadoop错误: 处理速度特别的慢 出现map很快 但是reduce很慢 而且反复出现 reduce=0%

    Answer:

    结合第二点,然后

    修改 conf/hadoop-env.sh 中的export HADOOP_HEAPSIZE=4000

    4.hadoop错误: 能够启动datanode,但无法访问,也无法结束的错误

       在重新格式化一个新的分布式文件时,需要将你NameNode上所配置的dfs.name.dir这一namenode用来存放NameNode 持久存储名字空间及事务日志的本地文件系统路径删除,同时将各DataNode上的dfs.data.dir的路径 DataNode 存放块数据的本地文件系统路径的目录也删除。如本此配置就是在NameNode上删除/home/hadoop/NameData,在DataNode上删除/home/hadoop/DataNode1和/home/hadoop/DataNode2。这是因为Hadoop在格式化一个新的分布式文件系统时,每个存储的名字空间都对应了建立时间的那个版本(可以查看/home/hadoop /NameData/current目录下的VERSION文件,上面记录了版本信息),在重新格式化新的分布式系统文件时,最好先删除NameData 目录。必须删除各DataNode的dfs.data.dir。这样才可以使namedode和datanode记录的信息版本对应。


    相关文章推荐:
  • linux rpm 安装mysql 空间不够怎么解决
  • 安装redhat10.0出错,在安装软件前提示硬盘空间不够
  • 寻求在Linux 8.0上安装Oracle 9i的安装文档,分不够,可以再加,在线等待。。。
  • linux 安装weblogic时提示权限不够
  • 安装CENTOS 6.4时,提示磁盘空间不够
  • oracle9i 在 redhat7.3 上安装临时目录空间不够.
  • 请教:Redhad9 的安装问题:总提示“磁盘空间不够”,安装不上?
  • 安装应用软件时为什么总说opt目录磁盘空间不够?
  • 谁给我传一个红帽子安装盘,分数不够再加
  • 我在虚拟机上安装了ubuntu server 系统,内存不够用,怎样改变系统的内存呢?
  • 在LINUX下安装TOMCAT后,root运行提示权限不够。
  • Fedora root后安装软件包时提示权限不够
  • JB5安装问题,分不够可以在加!
  • unix下安装一般软件的流程是什么(分不够了,以后加)?
  • linux 安装是提:将安装映像传输到硬盘时出错,很可能是磁盘空间不够。
  • 如何利用VMWARE安装98上网? --高分!!不够再给!
  • 各位高手请指点:cvs的安装问题!!!在线等待,分不够可再加!!
  • centreon安装完成之后配置向导出错,在线等,分不够再加
  • 请问jsp做完程序后,怎样打包,怎样做安装程序?(分不够在加!)
  • 安装libtool,提示权限不够


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2017,169IT.COM,E-mail:www_169it_com#163.com(请将#改为@)

    浙ICP备11055608号