Hadoop编译源码(面试重点)

1,077 阅读2分钟

这是我参与更文挑战的第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组件,请持续关注!小编后续将继续更新大数据等内容,请保持关注。更多精彩内容,请关注公众号:小韩学长带你学

1623651408(1).jpg