为了防止无良网站的爬虫抓取文章,特此标识,转载请注明文章出处。LaplaceDemon/SJQ。

http://www.cnblogs.com/shijiaqi1066/p/4058956.html

1 前提准备

建议关闭编译机器上的防火墙与SELinux。

需要保证编译机器可以访问互联网。

卸载机器上的OpenJDK,并安装上64位的Oracle JDK。此处选用JDK7。

注意:经过实践,直到Hadoop 2.6.3使用JDK8进行编译依然存在出现各种问题。理论上应该可以解决,可是实在不够方便。所以请使用jdk7进行编译!

2 下载所需软件包

2.1 下载Hadoop

当前最新Hadoop稳定版本为Hadoop 2.5.1。下载相应的hadoop源码包。

解压Hadoop:tar -zxvf hadoop-2.5.1-src.tar.gz

解压后目录为:

查看安装说明BUILDING.txt。显示如下:

说明:

  • 必须使用JDK1.6或更高版本。
  • Maven必须3.0或更高版本。
  • 其中Google Protobuf的版本必须为2.5.0。
  • Findbugs用于编译文档,不一定需要使用。
  • CMake为2.6或更高版本。

2.2 下载Maven

2.3 下载Google Protobuf

Protobuf 2.5依然存在于Google Code之上,最新版本已经在GitHub上了。(打开Google Code可能需要翻墙。)

Ps:最近一次(2016年12月)编译protobuf发现GoogleCode上的protobuf已经不提供了。全部移植到了GitHub上,可GitHub上的版本编译很麻烦。所以只能从网上下载一个其他人备份的Protobuf2.5.0。至于GitHub上的那个版本,以后我会花点时间来解决的。

3 安装与编译

3.1 安装Maven

解压Maven:tar -zxvf apache-maven-3.2.3-bin.tar.gz

将解压的文件移动至 /usr/local/maven3/,此即maven的HOME目录。

将Maven添加至环境变量。编辑/etc/profile文件,在文件末尾添加环境变量。

export JAVA_HOME=/usr/local/jdk7
export MAVEN_HOME=/usr/local/maven3
export PATH=$PATH:$JAVA_HOME/bin:$MAVEN_HOME/bin

刷新环境变量:source /etc/profile

测试Maven是否安装成功,查询Maven版本命令:mvn -version

若输出版本信息,则表示安装成功。

3.2 安装编译工具

首选需要安装编译工具

yum install gcc 

yum install gcc-c++ 

yum install make

或者直接安装RPM软件组:

yum -y groupinstall "Development tools" "Server Platform Development" "Desktop Platform Development"

等待一段下载安装的时间。

3.3 安装Google Protobuf

解压:tar -zxvf protobuf-2.5.0.tar.gz

进入解压后的目录,输入编译指令

./configure

make

make install

等待编译完成。

3.4 安装CMake与其他软件

yum install cmake

yum install openssl-devel (若安装了Development tools则不需要再安装此工具。)

yum install ncurses-devel (若安装了Development tools则不需要再安装此工具。)

3.5 开始编译Hadoop

进入到Hadoop解压目录中,即src目录。

在Hadoop2.2版本中需要修改hadoop-common-project/hadoop-auth/pom.xml 中的一个Bug。

pom.xml文件中缺少了一个jetty-util的依赖。

<dependency>
<groupId>org.mortbay.jetty</groupId>
<artifactId>jetty-util</artifactId>
<scope>test</scope>
</dependency>

带该问题在Hadoop2.5中早就修改了。

在src目录下,运行Maven命令:mvn package -DskipTests -Pdist,native

注意:

  • 建议关闭防火墙和SELinux。
  • 使用Maven下载Jar包可能需要配置Maven的镜像。
  • 请耐心等待编译完成。

编译成功,看到Maven输出SUCCESS。

编译完成后,编译的结果被放到hadoop-dist/target中。

其中hadoop-2.5.1即可用于安装的hadoop 。

为了防止无良网站的爬虫抓取文章,特此标识,转载请注明文章出处。LaplaceDemon/SJQ。

http://www.cnblogs.com/shijiaqi1066/p/4058956.html

CentOS 6.4 编译 Hadoop 2.5.1的更多相关文章

  1. 64位centos 下编译 hadoop 2.6.0 源码

    64位os下为啥要编译hadoop就不解释了,百度一下就能知道原因,下面是步骤: 前提:编译源码所在的机器,必须能上网,否则建议不要尝试了 一. 下载必要的组件 a) 下载hadoop源码 (当前最新 ...

  2. CentOS 6.4 64位 源码编译hadoop 2.2.0

    搭建环境:Centos 6.4 64bit 1.安装JDK 参考这里2.安装mavenmaven官方下载地址,可以选择源码编码安装,这里就直接下载编译好的wget http://mirror.bit. ...

  3. Centos编译Hadoop 2.x 源码

    1. 前言 Hadoop-2.4.0的源码目录下有个BUILDING.txt文件,它介绍了如何在Linux和Windows下编译源代码,本文基本是遵照BUILDING.txt指示来操作的,这里再做一下 ...

  4. Centos 6.5 X64 环境下编译 hadoop 2.6.0 --已验证

    Centos 6.5 x64 hadoop 2.6.0 jdk 1.7 protobuf-2.5.0 maven-3.0.5 set environment export JAVA_HOME=/hom ...

  5. 64位CentOS上编译 Hadoop 2.2.0

    下载了Hadoop预编译好的二进制包,hadoop-2.2.0.tar.gz,启动起来后.总是出现这样的警告: WARN util.NativeCodeLoader: Unable to load n ...

  6. Hadoop2 自己动手编译Hadoop的eclipse插件

    前言:       毕业两年了,之前的工作一直没有接触过大数据的东西,对hadoop等比较陌生,所以最近开始学习了.对于我这样第一次学的人,过程还是充满了很多疑惑和不解的,不过我采取的策略是还是先让环 ...

  7. 编译Hadoop

    Apache Hadoop 生态圈软件下载地址:http://archive.apache.org/dist/hadoop/hadoop下载地址 http://archive.apache.org/d ...

  8. mac OS X Yosemite 上编译hadoop 2.6.0/2.7.0及TEZ 0.5.2/0.7.0 注意事项

    1.jdk 1.7问题 hadoop 2.7.0必须要求jdk 1.7.0,而oracle官网已经声明,jdk 1.7 以后不准备再提供更新了,所以趁现在还能下载,赶紧去down一个mac版吧 htt ...

  9. 编译Hadoop 2.7.2支持压缩 转

    hadoop Native Shared Libraries 使得Hadoop可以使用多种压缩编码算法,来提高数据的io处理性能.不同的压缩库需要依赖到很多Linux本地共享库文件,社区提供的二进制安 ...

随机推荐

  1. 共享式以太网与交换式以太网的性能比较(OPNET网络仿真实验)

      一.实验目的 比较共享式以太网和交换式以太网在不同网络规模下的性能. 二.实验方法 使用opnet来创建和模拟网络拓扑,并运行分析其性能. 三.实验内容 3.1   实验设置(网络拓扑.参数设置. ...

  2. PC硬件之我见——CPU篇

    写在最前面:     最近身边很多朋友都购置电脑的想法,往往也会选择性价比较高的DIY攒机方式.不幸的是,并不是所有人都对电脑硬件有一定的了解的,何况在现在这种社会风气下,盲目的相信商家是不明智的.所 ...

  3. iPhone手机VPN设置

    如果iPhone,iPad游戏或软件服务器在国外不能用,就需要设置VPN了. 如果是为了解除公司上网策略限制,或者为了上Google,Facebook,都可以通过设置VPN实现. 要使用VPN需要到V ...

  4. java or spring +jython +python (Error:python.home,Determine if the following attributes are correct:)

    最近更新 :16年3月10日更 首先你在用JAVA,你需要运行Python,于是你找了Jython,我不介绍什么是Jythyon了 如何在Java中调用Python的方法,一百度一大堆, 如下:是一种 ...

  5. 【转】django的ORM操作数据库样例

    这个算是我看到的大全了,希望可以解决明天我希望解决的两个问题... class Blog(models.Model): name = models.CharField(max_length=100) ...

  6. quartz定时任务时间配置

    quartz定时任务时间设置描述(2011-03-03 16:23:50)转载▼标签: quartz时间it 分类: 凌乱小记  这些星号由左到右按顺序代表 :     *    *     *    ...

  7. mkimage使用详解

    uboot源代码的tools/目录下有mkimage工具,这个工具可以用来制作不压缩或者压缩的多种可启动映象文件. mkimage在制作映象文件的时候,是在原来的可执行映象文件的前面加上一个0x40字 ...

  8. PHP的哲学:Simple Is Hard

    原帖地址 PHP框架的繁荣是正确的发展方向吗?   作者 正文 poshboytl    发表时间:2009-01-19   最后修改:2009-04-06   做ROR有一年了, 感觉非常好.配合敏 ...

  9. poj 2068 Nim(博弈树)

    Nim Time Limit: 1000MS   Memory Limit: 30000K Total Submissions: 1501   Accepted: 845 Description Le ...

  10. 常用google产品

      常用google产品 01.谷歌阅读器(Google Reader):网页版RSS阅读器,方便订阅,组织和分享新闻.有手机版. 02.谷歌相册服务(Google Picasa):提供照片的下载和编 ...