这是我参与更文挑战的第7天,活动详情查看:更文挑战
前言
今天简单跟大家说一下Hadoop源码编译,这个是经常被大家忽略的一个问题。但是当你去找工作时,面试官一般都会问你有没编译过源码,所以对于源码编译的原理及过程还是有必要知道的。至于为啥要进行源码编译,原因其实很简单:官方下载的jar默认是32位,而大家现在所使用的电脑基本都是64位,所以需要你将源码编译成64位才能正常运行。
1、Hadoop源码编译过程概述
整个编译过程,小编将其归纳为3个步骤:(1)前期准备;(2)jar包安装;(2)编译源码。看起来是不是很简单,编译过程中一般问题分为2类:(1)前期虚拟机搞不定;(2)jar包安装过程出现问题不会解决,后面小编会给大家说一些应该注意的问题。下面概述一下各个步骤要做的工作(参考尚硅谷大数据课程),概述如下:
配置CentOS能连接外网,可以直接在Linux虚拟机的terminal终端:ping www.baidu.com ,能ping通就行啦。
注意:采用root角色编译,减少文件夹权限出现问题。
1.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(序列化的框架)
2.7.0版本的问题汇总帖子 www.tuicool.com/articles/IB…
2 源码编译实操
前面给出的一个过程概述是参考尚硅谷大数据教程的,这一节小编就带大家一起实操一下吧。
按上一节所说准备,这里注意的是虚拟机必须干净,只配置了网络,没有安装任何jar包。由于我之前就准备啦,我就选择直接克隆虚拟机,这个过程之前有讲解过,具体参看:大数据之Hadoop运行环境搭建。小编所用的jar包如下:
2.1 JDK解压、配置环境变量 JAVA_HOME和PATH,验证java-version(如下都需要验证是否配置成功)
2.2 Maven解压、配置 MAVEN_HOME和PATH
2.3 ant解压、配置 ANT _HOME和PATH
yum出现上述问题,请看解决方法:my.oschina.net/u/4340589/b…
2.4 安装 glibc-headers****和 g++ 命令如下
2.6 解压protobuf ,进入到解压后protobuf主目录,/opt/module/protobuf-2.5.0,然后相继执行命令
[root@hadoop101 software]#yum installopenssl-devel
[root@hadoop101 software]#yum installncurses-devel
总结
到此为止,Hadoop入门内容已经讲解完毕。小编学习到不少,相信一路跟过来的小伙伴也收获不少。接下来,小编会带大家一起学习HDFS、MapReduce、Yarn各个Hadoop组件,请持续关注!小编后续将继续更新大数据等内容,请保持关注。更多精彩内容,请关注公众号:小韩学长带你学