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

CentOS上编译hadoop 2.7

2016-07-07 15:42 531 查看
官网下载的 hadoop执行运行报警告:

WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
put: `./in': No such file or directory

主要是lib下的native-hadoop 是32位的,所以这里我们自己在64位的系统上编译hadoop

环境准备:
1 下载hadoop src源码包
2 所需软件:java, svn, autoconf, automake, libtool, ncurses-devel, openssl-devel, gcc, lzo-devel, zlib-devel, znt, maven, protobuf, cmake
yum -y install autoconf automake libtool ncurses-devel openssl-devel gcc lzo-devel, zlib-devel cmake
3 安装jdk
下载jdk bin包并解压

添加jdk环境变量
在/etc/profile文件下添加

## JAVA
export JAVA_HOME=/usr/local/java/jdk
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
## PATH
export PATH=$JAVA_HOME/bin

让重载环境变量 . /etc/profile

4 maven安装
apache官网下载 maven并解压,然后把其 bin路径添加到环境变量
mvn -version

5 protobuf安装
到网上搜索 protobuf-2.5.0.tar.gz,下载解压,
./configure; make; make install
protoc --version

6 ANT安装
apache官网下载 ANT bin包解压,把其bin路径添加到环境变量中

7 编译hadoop

mvn package -Pdist,native,docs -DskipTests -Dtar
这里需要一个多小时或更久,并需要联网下载依赖包

最后文件在 hadoop-2.7.2-src/hadoop-dist/target 中
可以直接拿 hadoop-2.7.2目录去部署,还有一个hadoop-2.7.2.tar.gz包
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  CentOS hadoop 上编译