本人的操作系统为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安装包至/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
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 测试是否安装成功
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
在完成上述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安装包至/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安装包至/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源码路径,执行maven命令
mvn clean package -DskipTests -Pdist,native -Dtar
第一次编译源码需要maven下载很多的jar包,所以编译的时间可能会很久,本人历时1小时57分钟编译成功!
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
切换至root账户 或者 修改share 以及 doc 等文件夹所属用户用户组
mvn clean package -DskipTests -Pdist,native -Dtar -Dsnappy.lib=/opt/ -Dbundle.snappy