`
dmcp
  • 浏览: 24384 次
  • 性别: Icon_minigender_1
  • 来自: 广州
文章分类
社区版块
存档分类
最新评论

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

 
阅读更多

一、问题症状:

在安装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错误。


分享到:
评论

相关推荐

    mongodb-linux-x86_64-2.6.10.tgz

    当前镜像是从官网下载,如需自行去官网免费下载可在早上6点到7,8点下载,网速会很快,命令:curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-2.6.10.tgz

    R_TLQ8.1.3.0_Linux2.6.16_X86_64.tar.Z

    R_TLQ8.1.3.0_Linux2.6.16_X86_64.tar.Z

    SUSE_Linux_x86_64_11.1

    SUSE_Linux_x86_64_11.1安装文档,64位机安装手册。有图片解释

    R_TLQCli8.1.3.0_Linux2.6.16_X86_64.tar.Z

    R_TLQCli8.1.3.0_Linux2.6.16_X86_64.tar.Z

    mongodb-linux-x86_64-rhel70-3.6.4.tgz

    这个名为"mongodb-linux-x86_64-rhel70-3.6.4.tgz"的压缩包是专门为运行在Linux Red Hat Enterprise Linux 7.0 (RHEL 7.0)操作系统上的64位架构设计的MongoDB版本,具体为3.6.4版。MongoDB的3.6版本是一个重要的里程...

    mongodb-linux-x86_64-3.6.3

    mongodb-linux-x86_64-3.6.3, mongodb-linux-x86_64-3.6.3, mongodb-linux-x86_64-3.6.3, mongodb-linux-x86_64-3.6.3

    hadoop2.2.0 native lib 本地IO库 Linux SuSE 11 X86_64

    Description: SUSE Linux Enterprise Server 11 (x86_64) Release: 11 Codename: n/a weblogic@F23-B4-E2-B1:~> cat /etc/SuSE-release SUSE Linux Enterprise Server 11 (x86_64) VERSION = 11 PATCHLEVEL = 1

    mongodb-linux-x86_64-suse11-3.0.4 (1)

    在这个压缩包中,"mongodb-linux-x86_64-suse11-3.0.4" 文件包含了运行MongoDB 3.0.4所需的所有二进制文件和库,用户可以直接在SUSE 11系统上安装和运行。安装过程通常包括解压文件、配置`mongod.conf`设置文件,...

    SuSE12SP2-x86_64.txt

    SuSE Linux Enterprise Server 12 SP2-x86_64下载地址,安全可靠。

    mysql-5.7.27-1.el7.x86_64.rpm-bundle 文件

    `mysql-5.7.27-1.el7.x86_64.rpm-bundle`文件是专为Linux系统(特别是Red Hat Enterprise Linux 7)设计的一组RPM包,用于安装和管理MySQL 5.7.27版本。RPM(Red Hat Package Manager)是一种软件包管理器,使得在...

    SLES-11-SP4-DVD-x86_64-GM-DVD1.iso

    根据提供的文件信息,我们可以推断出这是一款名为"SLES-11-SP4-DVD-x86_64-GM-DVD1.iso"的操作系统镜像文件,它属于SUSE Linux Enterprise Server(简称SLES)系列。下面将详细介绍与该文件相关的几个关键知识点: ...

    SuSE Linux Enterprise Server 10 SP4-x86_64下载

    SuSE Linux Enterprise Server 10 SP4-x86_64 百度云下载地址, 可以快速下载,流畅安装

    suse12sp1 X86_64 rpms part11

    suse12sp1 X86_64 rpms part11

    mysql-5.7.18-1.el7.x86_64.rpm-bundle.tar

    这里要注意安装顺序,但是...有人说可以取消依赖:#rpm -ivh mysql-community-server-5.7.18-1.el7.x86_64.rpm --nodeps,但是个人不建议这么做,安装好后可能也会有问题,rpm都有了,依赖检测失败你就装上依赖就是了。

    SLE-12-SP5-Server-DVD-x86_64-GM-DVD1.iso

    综上所述,“SLE-12-SP5-Server-DVD-x86_64-GM-DVD1.iso”是一个SUSE Linux Enterprise Server 12 Service Pack 5的官方正式发布的64位版本DVD安装镜像文件的第一部分,适用于企业级服务器的安装。该镜像包含了完整...

    SUSE-12-SP2-Server-DVD-x86_64-GM-DVD1.iso

    "SUSE-12-SP2-Server-DVD-x86_64-GM-DVD1.iso"是一个功能强大且稳定的企业级服务器操作系统安装镜像,适用于希望在服务器环境中部署SUSE Linux的企业和个人用户。通过详细的安装指南和强大的管理工具,用户可以轻松...

    suse12sp1X86_64rpms part3

    suse12sp1X86_64rpms part3

    SUSE Linux Enterprise Server 12 SP2-x86_64 DVD1 DVD2

    SUSE Linux Enterprise Server 12 SP2-x86_64 链接:https://pan.baidu.com/s/1fbFRWK6vxN3NIj3f5x05-A,提取码见附件

    SuSE12SP2-x86_64下载地址.txt

    SuSE Linux Enterprise Server 12 SP2-x86_64下载地址,安全可靠。

Global site tag (gtag.js) - Google Analytics