阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Linux suse x86_64 环境上部署Hadoop启动失败原因分析

214次阅读
没有评论

共计 3197 个字符,预计需要花费 8 分钟才能阅读完成。

一、问题症状:

在安装 Hadoop 的时候报类似如下的错误:

# A fatal error has beendetected by the Java Runtime Environment:

#

# SIGFPE (0x8) atpc=0x40008026, pid=31393, tid=2283477936

#

# JRE version:6.0_29-b08

# Java VM: JavaHotSpot(TM) Client VM (20.4-b01 mixed mode linux-x86)

# Problematic frame:

# C [ld-linux.so.2+0x8026] double+0xb6

#

# If you would like tosubmit a bug report, please visit:

# http://java.sun.com/webapps/bugreport/crash.jsp

# The crash happenedoutside the Java Virtual Machine in native code.

# See problematic framefor where to report the bug.

 

二、问题原因:

Hadoop 依赖的本地库与操作系统不兼容,需要在本地重新编译依赖的 so 包。

 

三、解决过程:

1. 在 $HADOOP_HOME 目录下执行以下语句来编译:

ant -Dcompile.native=true compile-native

2. 由于 ant 使用了 maven 来做编译,而 maven 需要连网下载依赖的 jar 包,由于我们的环境是通过代理上网的,所以在执行上面的命令时会有报错,应要先设置 ant 的代理上网环境变量:

export ANT_OPTS=”-Dhttp.proxyHost=10.3.1.6-Dhttp.proxyPort=8080″

3. 上述问题解决后,在编译过程中又提示没有 zlib,就是本机没有安装 zlib,如果不提示这个错误请忽略以下这个过程。下面是安装 zlib 的过程,从官方网站下载 zlib 库,下载地址如下。

http://zlib.net/zlib-1.2.8.tar.gz

 

mkdir zlib

cp zlib-1.2.8.tar.gz zlib

gzip –d zlib-1.2.8.tar.gz

tar xvf zlib-1.2.8.tar

cd zlib-1.2.8

./configure

make

sudo make install

上面的过程就完成了 zlib 的安装,

当使用 wget 命令下载时,若要使用代理,则可以参考如下命令:

wget -e http-proxy=10.3.1.6:8080 –proxy=on -c http://zlib.net/zlib-1.2.8.tar.gz

4. 然后再执行步骤 1 的命令,就完成了 hadoop 本地库的编译,编译产生的新本地库在以下目录:

$HADOOP_HOME/build/native/**ux-amd64-64/lib

5. 将上述目录下的文件全部 copy 到 namenode 的以下目录:

cd $HADOOP_HOME/build/native/**ux-amd64-64/lib

cp * $HADOOP_HOME/lib/native/**ux-amd64-64

同时还需要 copy 上述的包到各个 datanode 的相应目录下:

 

cd $HADOOP_HOME/lib/native/**ux-amd64-64

scp * aihadoop@10.3.3.142:~/hadoop/hadoop-1.0.0/lib/native/Linux-amd64-64/

scp * aihadoop@10.3.3.143:~/hadoop/hadoop-1.0.0/lib/native/Linux-amd64-64/

6. 然后在 namenode 上执行以下命令启动 hadoop:

./start-all.sh

7. 输出日志大概如下,表示启动成功:

aihadoop@SUSE-141:~/hadoop/hadoop-1.0.0/bin>./start-all.sh

Warning: $HADOOP_HOME is deprecated.

 

starting namenode, logging to /home/aihadoop/hadoop/hadoop-1.0.0/libexec/../logs/hadoop-aihadoop-namenode-suse-141.out

10.3.3.143: starting datanode, logging to/home/aihadoop/hadoop/hadoop-1.0.0/libexec/../logs/hadoop-aihadoop-datanode-suse10t143.out

10.3.3.142: starting datanode, logging to /home/aihadoop/hadoop/hadoop-1.0.0/libexec/../logs/hadoop-aihadoop-datanode-suse-142.out

10.3.3.141: starting secondarynamenode, logging to/home/aihadoop/hadoop/hadoop-1.0.0/libexec/../logs/hadoop-aihadoop-secondarynamenode-suse-141.out

starting jobtracker, logging to/home/aihadoop/hadoop/hadoop-1.0.0/libexec/../logs/hadoop-aihadoop-jobtracker-suse-141.out

10.3.3.143: starting tasktracker, logging to/home/aihadoop/hadoop/hadoop-1.0.0/libexec/../logs/hadoop-aihadoop-tasktracker-suse10t143.out

10.3.3.142: starting tasktracker, logging to/home/aihadoop/hadoop/hadoop-1.0.0/libexec/../logs/hadoop-aihadoop-tasktracker-suse-142.out

8. 最后记得要把 $HADOOP_HOME/build 目录删除掉,否则启动后访问页面会出现 404 错误。

相关阅读

Ubuntu 13.04 上搭建 Hadoop 环境 http://www.linuxidc.com/Linux/2013-06/86106.htm

Ubuntu 12.10 +Hadoop 1.2.1 版本集群配置 http://www.linuxidc.com/Linux/2013-09/90600.htm

Ubuntu 上搭建 Hadoop 环境(单机模式 + 伪分布模式)http://www.linuxidc.com/Linux/2013-01/77681.htm

Ubuntu 下 Hadoop 环境的配置 http://www.linuxidc.com/Linux/2012-11/74539.htm

单机版搭建 Hadoop 环境图文教程详解 http://www.linuxidc.com/Linux/2012-02/53927.htm

搭建 Hadoop 环境(在 Winodws 环境下用虚拟机虚拟两个 Ubuntu 系统进行搭建)http://www.linuxidc.com/Linux/2011-12/48894.htm

更多 Hadoop 相关信息见Hadoop 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=13

更多 SUSE 相关信息见SUSE 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=3

 

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-20发表,共计3197字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中