七、Hadoop源码编译

       在上篇博客(《六、HDFS中的NameNode和SecondaryNameNode》)的CheckPoint时间设置中有用到hdfs-default.xml这个文件,这时候会有很多读者好奇,这个文件到底是在什么地方,因为,通过咱们之前安装的Hadoop并没有发现这个配置文件。这就是咱们本篇博客的目的——源码编译,这个配置文件就是在源码中的,下面一起看看吧~  关注专栏《from zero to hero(Hadoop篇)》查看相关系列的文章~


目录

一、准备工作

二、安装

2.1 安装jdk

2.2 配置maven

2.3 配置ant

2.4 安装相关插件

2.5 配置protobuf

三、编译源码


一、准备工作

       1、首先保证系统可以连接外网

       2、相关包准备

二、安装

2.1 安装jdk

       这个操作,在之前搭建Hadoop环境的时候已经做过,此处就不再赘述了,可以参考《二、Linux下搭建Hadoop的运行环境》

2.2 配置maven

       1、解压

tar -zxvf ./apache-maven-3.0.5-bin.tar.gz -C ../modules/

       2、修改settings.xml文件

<mirror>
        <id>nexus-aliyun</id>
        <mirrorOf>central</mirrorOf>
        <name>Nexus aliyun</name>
        <url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>

       3、配置环境变量

[root@master conf]# vi /etc/profile
##MAVEN_HOME
export MAVEN_HOME=/opt/modules/apache-maven-3.0.5
export PATH=$PATH:$MAVEN_HOME/bin

       4、使之生效

source /etc/profile

       5、验证

2.3 配置ant

       1、解压

tar -zxvf ./apache-ant-1.9.9-bin.tar.gz -C ../modules/

       2、配置环境变量

##ANT_HOME
export ANT_HOME=/opt/modules/apache-ant-1.9.9
export PATH=$PATH:$ANT_HOME/bin

       3、验证

2.4 安装相关插件

yum install -y glibc-headers gcc-c++ cmake make openssl-devel ncurses-devel

2.5 配置protobuf

       1、解压

tar -zxvf ./protobuf-2.5.0.tar.gz -C ../modules/

       2、切换到解压目录进行配置安装

[root@master protobuf-2.5.0]# pwd
/opt/modules/protobuf-2.5.0
[root@master protobuf-2.5.0]# ./configure
[root@master protobuf-2.5.0]# make
[root@master protobuf-2.5.0]# make check
[root@master protobuf-2.5.0]# make install
[root@master protobuf-2.5.0]# ldconfig

       3、配置环境变量

##LD_LIBRARY_PATH
export LD_LIBRARY_PATH=/opt/modules/protobuf-2.5.0
export PATH=$PATH:$LD_LIBRARY_PATH

       4、验证

三、编译源码

       1、解压源码包

tar -zxvf hadoop-2.7.2-src.tar.gz -C ../

       2、进入源码目录

       3、通过maven执行编译命令

[root@master hadoop-2.7.2-src]# mvn package -Pdist,native -DskipTests -Dtar

       如果编译成功,会显示如下内容(编译过程时间可能有点长,需要耐心等待):

       编译成功后,Hadoop的tar包在如下位置:

       此时,我们也可以看到hdfs-default.xml文件的位置:

       至此,本文就讲解完了,你们在这个过程中遇到了什么问题,欢迎留言,让我看看你们遇到了什么问题~

猜你喜欢

转载自blog.csdn.net/gdkyxy2013/article/details/107593846