Hadoop-3.1.3源码编译环境搭建

操作系统:

本人的操作系统为CentOS7.4,软件安装包路径为 /data , 软件安装路径为 /apps ,环境搭建过程中路径请做相应改动

 

准备工作:

一、下载软件安装包(附官下载地址):

1、jdk-8u231-linux-x64.tar.gz (hadoop 3.1.3 需要的java版本为 jdk 1.8)

https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

2、apache-maven-3.6.2-bin.tar.gz(Maven 项目管理工具 版本3.5以上即可,用以编译hadoop源码)

https://maven.apache.org/download.cgi

3、protobuf-2.5.0.tar.gz(需要把网页拉倒最下面找到2.5.0的版本)

https://github.com/protocolbuffers/protobuf/releases/tag/v2.5.0

4、cmake-3.13.5.tar.gz(yum安装可能无高版本,提前下载了编译hadoop 3.1.3至少需要cmake3.1以上,推荐cmake3.7以上,本人使用的是1.13)

https://cmake.org/files/v3.13/

5、apache-ant-1.10.7-bin.tar.gz(可不安装,版本选择1.10.5或者1.10.7即可。PS:1.10.6可能与JDK1.8有一丢丢的冲突)

https://www.apache.org/dist/ant/binaries/

6、findbugs-3.0.1.tar.gz(可不安装)

https://sourceforge.net/projects/findbugs/

或者:http://findbugs.sourceforge.net/downloads.html

7、hadoop-3.1.3-src.tar.gz(最最关键的,需要编译的hadoop源码)

https://hadoop.apache.org/releases.html

 

二、解压软件包

软件安装包下载完成后解压(jdk、maven、ant、findbugs、cmake可直接解压至/apps;protobuf解压至当前路径需要编译,后文有介绍; hadoop源码解压至自己的工作路径)

tar -zxvf jdk-8u231-linux-x64.tar.gz -C /apps/java/
tar -zxvf apache-maven-3.6.2-bin.tar.gz -C /apps/maven/
tar -zxvf protobuf-2.5.0.tar.gz
tar -zxvf cmake-3.13.5.tar.gz -C /apps/cmake/
tar -zxvf apache-ant-1.10.7-bin.tar.gz -C /apps/ant/
tar -zxvf findbugs-3.0.1.tar.gz -C /apps/findbugs/
tar -zxvf hadoop-3.1.3-src.tar.gz -C /home/wuyunfeng/workspace/hadoop-3.1.3-src

 

源码编译环境搭建

一、安装配置JDK 1.8

解压jdk安装包至/apps路径后,配置环境变量 (JAVA_HOME路径自己修改)

sudo vim /etc/profile

#java
export JAVA_HOME=/apps/java
export PATH=$JAVA_HOME/bin:$PATH

source /etc/profile

java -version测试是否安装成功

可参考https://mp.csdn.net/postedit/84400558

 

二、安装配置Maven 3.6

JAVA环境配置完成后,可进行Maven的安装配置

解压maven安装包至/apps路径后,配置环境变量(MAVEN_HOME路径自己修改)

sudo vim /etc/profile

#maven
export MAVEN_HOME=/apps/maven
export PATH=$MAVEN_HOME/bin:$PATH

source /etc/profile

mvn -v 测试是否安装成功

 

三、yum 安装源码编译相关依赖包

注:个别软件包的安装顺序不可乱

1、yum install gcc gcc-c++

2、yum install make cmake (这里cmake版本推荐为3.6版本以上,版本低源码无法编译!可手动安装,详见附录)

3、yum install autoconf automake libtool curl

4、yum install lzo-devel zlib-devel openssl openssl-devel ncurses-devel

5、yum install snappy snappy-devel bzip2 bzip2-devel lzo lzo-devel lzop libXtst

 

四、安装ProtocolBuffer 2.5.0

在完成上述JDK以及源码编译相关的全部依赖包之后安装编译ProtocolBuffer 2.5.0

1、首先进入ProtocolBuffer解压后的文件夹目录下:

cd /data/protobuf-2.5.0

2、编译protobuf-2.5.0( --prefix=XXX"将软件编译至XXX路径")

./configure --prefix=/apps/protobuf

3、安装protobuf-2.5.0

make && make install

4、配置环境变量(PROTOC_HOME路径自己修改)

sudo vim /etc/profile

#protobuf
export PROTOC_HOME=/apps/protobuf
export PATH=$PROTOC_HOME/bin:$PATH

source /etc/profile

protoc --version测试是否安装成功

 

五、安装配置ant-1.10.7

解压ant安装包至/apps路径后,配置环境变量(ANT_HOME路径自己修改)

sudo vim /etc/profile

#ant
export ANT_HOME=/apps/ant
export PATH=$ANT_HOME/bin:$PATH

source /etc/profile

ant -version测试是否安装成功

 

六、安装配置findbugs-3.0.1

解压findbugs安装包至/apps路径后,配置环境变量(FINDBUGS_HOME路径自己修改)

sudo vim /etc/profile

#findbugs
export FINDBUGS_HOME=/apps/findbugs
export PATH=$FINDBUGS_HOME/bin:$PATH

source /etc/profile

findbugs -version测试是否安装成功

/etc/profile 配置文件如下

Hadoop-3.1.3源码编译环境搭建_第1张图片

各个软件部署完成!

Hadoop-3.1.3源码编译环境搭建_第2张图片

 

七、编译Hadoop 3.1.3

将进入Hadoop源码路径,执行maven命令

mvn clean package -DskipTests -Pdist,native -Dtar

第一次编译源码需要maven下载很多的jar包,所以编译的时间可能会很久,本人历时1小时57分钟编译成功!

Hadoop-3.1.3源码编译环境搭建_第3张图片

至此~Hadoop源码编译完成,

编译后的文件位于源码路径下 hadoop-3.1.3-src/hadoop-dist/target

Hadoop-3.1.3源码编译环境搭建_第4张图片

截图中红色的 hadoop-3.1.3.tar.gz 即为编译好的源码压缩包!

 

 

附录:

搭建源码编译环境时遇到的问题:

1、yum 安装cmake无3.1以上版本

解决方法:

yum删除已安装的cmake:yum erase cmake

官网下载cmake安装包(选择3.6以上版本,本人为3.13),手动安装。下载链接:https://cmake.org/download/

解压安装包:tar -zxvf cmake-3.13.5.tar.gz -C /apps/cmake

跳转至cmake目录:cd /apps/cmake

编译: ./configure

安装: sudo make && make install

检验安装是否成功:cmake -version

 

2、手动安装cmake使用sudo仍然报错:权限不足

解决方法:

切换至root账户 或者 修改share 以及 doc 等文件夹所属用户用户组

 

3、使用​ mvn clean package -Pdist,native -DskipTests -Dtar编译时仍有问题

尝试使用以下命令编译源码

mvn clean package -DskipTests -Pdist,native -Dtar -Dsnappy.lib=/opt/ -Dbundle.snappy  

注:修改-Dsnappy.lib路径

 

 

 

 

 

 

 

 

 

 

你可能感兴趣的:(安装部署)