您的位置:首页 > 运维架构

hadoop源码编译环境安装配置

2016-07-19 10:56 357 查看

hadoop运行报错:

在运行hadoop的时候,出现警告:

WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform… using builtin-java classes where applicable
原因:
hadoop官方编译的tar包是32位的,我们的系统是64位的,故运行时报错。

解决方案:

到官方下载hadoop源码自行编译再进行安装。
以2.6为例:
下载源码包hadoop-2.6.0-src.tar.gz
解压,然后查看hadoop-2.6.0-src下面的BUILDING.txt编译文档。

编译环境安装:

JDK和GCC安装:

直接使用yum即可。

maven安装配置。

下载 wget http://www.eng.lsu.edu/mirrors/apache/maven/maven-3/3.2.1/binaries/apache-maven-3.2.1-bin.tar.gz
解压 tar -zxvf apache-maven-3.2.1-bin.tar.gz

配置环境变量,编辑/etc/profile或者~/.bashrc文件

export MAVEN_HOME=/usr/local/soft/apache-maven-3.2.1

export PATH=$PATH:$MAVEN_HOME/bin

最后要source /etc/profile

通过mvn --version来检查是否安装正常

findbugs安装配置:

下载:可到官网自行下砸到本地,然后解压到/usr/local/soft目录(目录可自行创建决定)
配置方法和maven相同。
配置到、etc/profile
export FINDBUGS_HOME=/usr/local/soft/xxxxxxx
export PATH=$PATH:$MAVEN_HOME/bin

配置成功查看:findbugs -version

安装protobuf:

  Hadoop使用protocol
buffer进行通信,需要下载和安装 protobuf-2.5.0.tar.gz。由于 现在 protobuf-2.5.0.tar.gz已经无法在官网 https://code.google.com/p/protobuf/downloads/list中 下载了,故本人已上传该文件。

下载protobuf-2.5.0.tar.gz
此安装和上面不同,需要用make指令安装,
首先进入到它的目录,
运行脚本:./configure
然后通过make指令安装:make install    但是这样有一个问题,系统默认没有安装make所以会显示make没有装。


我们需要手动安装它,还需要安装一些系统依赖。
可以使用以下命令一键安装所有依赖:
yum -y install autoconf automake libtool cmake ncurses-devel openssl-devel lzo-devel zlib-devel gcc gcc-c++


根据BUILDING.txt文档,还需要cmake等一些依赖,但是我们安装make的时候已经一键安装完成,故不用在继续安装了。

编译hadoop-2.6.0:

进入到源码目录hadoop-2.6.0-src
运行命令:
mvn package -Pdist,native,docs -DskipTests -Dtar


如果只需要编译本地代码:
mvn package -Pdist,native -DskipTests -Dtar
这样编译会更快些。
这个过程约30分钟,时间要看网速决定,然后坐待编译完成。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息