详解Hadoop2.7.2 编译64位源码
一、环境准备
1.CentOS配置
最好是用新克隆的虚拟机,虚拟机内存设置大一点(我设置的4G),配置网络,主机名,关闭防火墙,关闭selinux
注意:采用root角色编译,减少文件夹权限出现问题
2.jar包准备(hadoop源码、JDK8、maven、ant、protobuf)
(1)hadoop-2.7.2-src.tar.gz
(2)jdk-8u144-linux-x64.tar.gz
(3)apache-ant-1.9.9-bin.tar.gz(build工具,打包用的)
(4)apache-maven-3.0.5-bin.tar.gz
(5)protobuf-2.5.0.tar.gz(序列化的框架)
3.jar包安装(注意:所有操作必须在root用户下完成)
JDK
1.解压
tar-zxfjdk-8u141-linux-x64.tar.gz-C/export/compile
2.配置环境变量
vim/etc/profile exportJAVA_HOME=/export/compile/jdk1.8.0_141 exportPATH=$PATH:$JAVA_HOME/bin
3.更新profile文件
source/etc/profile
4.验证安装是否成功
验证命令:jps 出现jps进程表示安装配置成功
2.Maven
1.解压&重命名
tar-zxfapache-maven-3.0.5-bin.tar.gz-C/export/compile mv/export/compile/apache-maven-3.0.5-bin.tar.gz/export/compile/maven
2.修改配置文件
vim/export/compile/maven/conf/settings.xml
添加阿里云镜像地址:
nexus-aliyun central Nexusaliyun http://maven.aliyun.com/nexus/content/groups/public
3.配置环境变量
vim/etc/profile exportMAVEN_HOME=/export/compile/maven exportPATH=$PATH:$MAVEN_HOME/bin
4.更新profile文件
source/etc/profile
5.验证安装是否成功
验证命令:mvn-version 出现版本信息表示安装成功
3.ant
1.解压&重命名
tar-zxfapache-ant-1.9.9-bin.tar.gz-C/export/compile mvapache-ant-1.9.9ant
2.配置环境变量
vim/etc/profile exportANT_HOME=/export/compile/ant exportPATH=$PATH:$ANT_HOME/bin
3.更新profile文件
source/etc/profile
4.验证安装是否成功
验证命令:ant-version 出现版本信息表示安装成功
4.glibc-headers
yum-yinstallglibc-headers yum-yinstallgcc-c++
5.make和cmake
yum-yinstallmake yum-yinstallcmake
6.protobuf
1.解压&重命名&进入protobuf根目录
tar-zxfprotobuf-2.5.0.tar.gz-C/export/compile mvprotobuf-2.5.0/protobuf cd/export/compile/protobuf
2.依次执行如下命令
1./configure
2make
3makecheck
4makeinstall
5ldconfig
3.配置环境变量
vim/etc/profile exportLD_LIBRARY_PATH=/export/compile/protobuf exportPATH=$PATH:$LD_LIBRARY_PATH
4.更新profile文件
source/etc/profile
5.验证安装是否成功
验证命令:protoc--version 出现版本信息表示安装成功
7.安装openssl库
yum-yinstallopenssl-devel
8.安装ncurses-devel库
yum-yinstallncurses-devel
二、编译源码
1.解压
tar-zxfhadoop-2.7.2-src.tar.gz-C/export/compile
2.进入hadoop源码主目录
/export/compile/hadoop-2.7.2-src
3.通过maven执行编译命令
mvnpackage-Pdist,native-DskipTests-Dtar
4.然后就是漫长的等待...(大约等待时间30分钟左右,最终成功是全部SUCCESS,如下图所示)
5.成功的64位hadoop包在/export/compile/hadoop-2.7.2-src/hadoop-dist/target目录下
三、编译源码过程中常见的问题及解决方案
(1)MAVENinstall时候JVM内存溢出
原因以及处理方式:在环境配置文件和maven的执行文件均可调整MAVEN_OPT的heap大小。
(详情查阅MAVEN编译JVM调优问题,如:http://outofmemory.cn/code-snippet/12652/maven-outofmemoryerror-method)
(2)编译期间maven报错
原因以及处理方式:可能网络阻塞问题导致依赖库下载不完整导致,多次执行命令(一次通过比较难):
mvnpackage-Pdist,nativeN-DskipTests-Dtar
(3)报ant、protobuf等错误
原因以及处理方式:插件下载未完整或者插件版本问题,最开始链接有较多特殊情况。
总结
到此这篇关于Hadoop2.7.2编译64位源码的文章就介绍到这了,更多相关Hadoop编译源码内容请搜索毛票票以前的文章或继续浏览下面的相关文章希望大家以后多多支持毛票票!
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。