Hadoop的tasktracker启动失败,重编译native库

2019-03-28 13:41|来源: 网络

Hadoop的datanode启动失败,只能启动datanode进程,而tasktracker则未能启动,查看HADOOP HOME下的hs_err_pid*文件,错误如下:

  1. # A fatal error has been detected by the Java Runtime Environment:   
  2. #   
  3. #  SIGFPE (0x8) at pc=0x0000003995f07827, pid=32635, tid=1076017504  
  4. #   
  5. # JRE version: 6.0_32-b03   
  6. # Java VM: Java HotSpot(TM) 64-Bit Server VM (20.7-b02 mixed mode linux-amd64 compressed oops)   
  7. # Problematic frame:   
  8. # C  [ld-linux-x86-64.so.2+0x7827]   
  9. #   
  10. # If you would like to submit a bug report, please visit:   
  11. #   http://java.sun.com/webapps/bugreport/crash.jsp   
  12. # The crash happened outside the Java Virtual Machine in native code.   
  13. # See problematic frame for where to report the bug.  

根据这位仁兄的思路:http://www.linuxidc.com/Linux/2012-03/56334.htm

下载ant,重新编译hadoop的native库,把HADOOP HOME下:
build/native/Linux-amd64-64/lib
的所有文件,拷贝到HADOOP HOME的:
lib/native/Linux-amd64-64/

跟着修改core-site.xml,增加以下变量:
  1. <property>    
  2.   <name>hadoop.native.lib</name>    
  3.   <value>true</value>    
  4. </property>  

tasktracker就能正常启动。如果还是启动失败,可以看看gcc的版本,若gcc版本低于4.1则可能是gcc的问题,升级gcc的方法,见《RedHat AS 4 成功升级最新Gcc》http://www.linuxidc.com/Linux/2012-06/62590.htm

相关问答

更多