hadoop-2.8.1编译

一、平台环境

CentOS6.5

二、软件版本

hadoop-2.8.1下载地址
jdk-8u45-linux-x64下载地址
apache-maven-3.3.9软件下载
findbugs-1.3.9软件下载
protobuf-2.5.0软件下载

三、安装步骤

  1. 上传、解压hadoop-2.8.1源代码
  2. 查看编译hadoop-2.8.1需要的要求
  3. jdk安装
  4. maven安装
  5. findbugs-1.3.9安装
  6. protobuf-2.5.0安装
  7. 其他依赖安装
  8. 编译

四、安装过程

1. 上传、解压hadoop-2.8.1源代码

将hadoop-2.8.1-src.tar.gz通WinSCP或者rz命令上传到/opt/sourcecode目录

#创建存放源代码的目录
[root@hadoop-002 software]# mkdir -p /opt/sourcecode
#进入存放源代码目录
[root@hadoop-002 software]# cd /opt/sourcecode/
上传文件
[root@hadoop-002 sourcecode]# rz

结果如下:

[root@hadoop-002 sourcecode]# ll
总用量 33716
-rw-r--r--. 1 root root 34523353 5月 14 21:37 hadoop-2.8.1-src.tar.gz

解压hadoop-2.8.1-src.tar.gz

[root@hadoop-002 sourcecode]# tar -xzvf hadoop-2.8.1-src.tar.gz

解压完成之后进入hadoop-2.8.1-src目录

[root@hadoop-002 sourcecode]# cd hadoop-2.8.1-src

源代码上传解压完成。

2. 查看编译hadoop-2.8.1的要求

查看源代码目录中的文件,结果如下

 [root@hadoop-002 hadoop-2.8.1-src]# ll
总用量 220
-rw-rw-r--.  1 root root 15623 5月  24 2017 BUILDING.txt
drwxr-xr-x.  4 root root  4096 5月  16 07:27 dev-support
drwxr-xr-x.  3 root root  4096 5月  16 07:27 hadoop-assemblies
drwxr-xr-x.  3 root root  4096 5月  16 07:27 hadoop-build-tools
drwxrwxr-x.  2 root root  4096 5月  16 07:27 hadoop-client
drwxr-xr-x. 10 root root  4096 5月  16 07:27 hadoop-common-project
drwxr-xr-x.  2 root root  4096 5月  16 07:27 hadoop-dist
drwxr-xr-x.  8 root root  4096 5月  16 07:27 hadoop-hdfs-project
drwxr-xr-x.  9 root root  4096 5月  16 07:27 hadoop-mapreduce-project
drwxr-xr-x.  3 root root  4096 5月  16 07:27 hadoop-maven-plugins
drwxr-xr-x.  2 root root  4096 5月  16 07:27 hadoop-minicluster
drwxr-xr-x.  3 root root  4096 5月  16 07:27 hadoop-project
drwxr-xr-x.  2 root root  4096 5月  16 07:27 hadoop-project-dist
drwxr-xr-x. 18 root root  4096 5月  16 07:27 hadoop-tools
drwxr-xr-x.  3 root root  4096 5月  16 07:27 hadoop-yarn-project
-rw-rw-r--.  1 root root 99253 5月  24 2017 LICENSE.txt
-rw-rw-r--.  1 root root 15915 5月  24 2017 NOTICE.txt
drwxrwxr-x.  2 root root  4096 6月   2 2017 patchprocess
-rw-rw-r--.  1 root root 20477 5月  29 2017 pom.xml
-rw-r--r--.  1 root root  1366 5月  20 2017 README.txt
-rwxrwxr-x.  1 root root  1841 5月  24 2017 start-build-env.sh

查看BUILDING.txt,确认编译的要求

[root@hadoop-002 hadoop-2.8.1-src]# cat BUILDING.txt

编译要求内容如下:

Build instructions for Hadoop

----------------------------------------------------------------------------------
Requirements:

* Unix System
* JDK 1.7+
* Maven 3.0 or later
* Findbugs 1.3.9 (if running findbugs)
* ProtocolBuffer 2.5.0
* CMake 2.6 or newer (if compiling native code), must be 3.0 or newer on Mac
* Zlib devel (if compiling native code)
* openssl devel (if compiling native hadoop-pipes and to get the best HDFS encryption performance)
* Linux FUSE (Filesystem in Userspace) version 2.6 or above (if compiling fuse_dfs)
* Internet connection for first build (to fetch all Maven and Hadoop dependencies)

接着按照要求按照各个软件

3. jdk安装

参考CentOS6.5安装JDK8

4. maven安装

参考CentOS6.5安装Maven

5. findbugs-1.3.9安装

将findbugs-1.3.9.zip通WinSCP或者rz命令上传到/opt/software目录

[root@hadoop-002 hadoop-2.8.1-src]# cd /opt/software/
[root@hadoop-002 software]# rz

解压文件

[root@hadoop-002 software]# unzip findbugs-1.3.9.zip 

配置环境变量

[root@hadoop-002 software]# vi /etc/profile

增加findbugs配置

export JAVA_HOME=/usr/local/java/jdk1.8.0_45
export MAVEN_HOME=/opt/software/apache-maven-3.3.9
export MAVEN_OPTS="-Xms256m -Xmx512m"
export FINDBUGS_HOME=/opt/software/findbugs-1.3.9 
export PATH=$FINDBUGS_HOME/bin:$MAVEN_HOME/bin:$JAVA_HOME/bin:$PATH

保存退出,手动使配置文件生效

[root@hadoop-002 software]# source /etc/profile

验证结果如下

[root@hadoop-002 software]# findbugs -version
1.3.9

findbugs 安装完成。

6. protobuf-2.5.0安装

将protobuf-2.5.0.tar.gz通WinSCP或者rz命令上传到/opt/software目录

[root@hadoop-002 hadoop-2.8.1-src]# cd /opt/software/
[root@hadoop-002 software]# rz

解压文件,进入protobuf-2.5.0目录

[root@hadoop-002 software]# tar -xzvf protobuf-2.5.0.tar.gz 
[root@hadoop-002 software]# cd protobuf-2.5.0

protobuf-2.5.0的安装需要使用到三个新命令./configuration 、make 和make install,下面分别对这几个命令做简单说明:

  • ./configuration 一般用来生成 Makefile,为下一步的编译做准备,你可以通过在 configure 后加上参数来对安装进行控制,经常使用的方式是:
./configure --prefix=/usr

这表示该软件安装在 /usr 下面,执行文件就会安装在 /usr/bin (而不是默认的 /usr/local/bin),资源文件就会安装在 /usr/share(而不是默认的/usr/local/share)

  • make make 的作用是开始进行源代码编译。

  • make install 该命令是用来进行软件安装(当然有些软件需要先运行 make check 或 make test来进行一些测试),这一步一般需要你有 root 权限(因为要向系统写入文件)。

CMake是一个跨平台的编译自动配置工具,CMake可以编译源代码、制作程式库、产生适配器(wrapper)、还可以用任意的顺序建构执行档。安装CMake

[root@hadoop-002 local]# yum install -y gcc gcc-c++ make cmake

开始安装protobuf-2.5.0,依次执行下面两条命令

[root@hadoop-002 protobuf-2.5.0]# ./configure --prefix=/usr/local/protobuf
[root@hadoop-002 protobuf-2.5.0]# make && make install

完成后,修改配置文件

[root@hadoop-002 protobuf-2.5.0]# vi /etc/profile

增加protobuf-2.5.0的配置

export PROTOC_HOME=/usr/local/protobuf
export PATH=$PROTOC_HOME/bin:$FINDBUGS_HOME/bin:$MAVEN_HOME/bin:$JAVA_HOME/bin:$PATH

保存退出,手动使配置文件生效

[root@hadoop-002 protobuf-2.5.0]# source /etc/profile

验证结果如下:

[root@hadoop-002 protobuf-2.5.0]# protoc --version
libprotoc 2.5.0

7. 其他依赖安装

[root@hadoop-002 protobuf-2.5.0]# yum install -y openssl openssl-devel svn ncurses-devel zlib-devel libtool
[root@hadoop-002 protobuf-2.5.0]# yum install -y snappy snappy-devel bzip2 bzip2-devel lzo lzo-devel lzop autoconf automake

安装完成。

8. 编译

至此,编译hadoop-2.8.1的要求全部达到,下面我们将开始编译hadoop-2.8.1,进入/opt/sourcecode/hadoop-2.8.1-src目录,执行命令,开始编译

[root@hadoop-002 bin]# cd /opt/sourcecode/hadoop-2.8.1-src
[root@hadoop-002 hadoop-2.8.1-src]# mvn clean package -Pdist,native -DskipTests -Dtar

编译完成,你可以在/opt/sourcecode/hadoop-2.8.1-src/hadoop-dist/target 目录下找到编译好的hadoop-2.8.1.tar.gz 文件。
结果:


001.png

你可能感兴趣的:(hadoop-2.8.1编译)