1、Requirements:

* Unix System

* JDK 1.7+

* Maven 3.0 or later

* Findbugs 1.3.9 (if running findbugs)

* ProtocolBuffer 2.5.0

* CMake 2.6 or newer (if compiling native code), must be 3.0 or newer on Mac

* Zlib devel (if compiling native code)

* openssl devel ( if compiling native hadoop-pipes )

* Internet connection for first build (to fetch all Maven and Hadoop dependencies)

安装以上先决条件:

yum groupinstall “Development tools”

yum -y install cmake zlib openssl gcc zlib-devel openssl-devel make

tar -zxvf protobuf-2.5.0.tar.gz

cd protobuf-2.5.0

./configure

make && make install

protoc --version

tar  -zxvf findbugs-3.0.0.tar.gz -C /usr/local/findbugs

mv /usr/local/findbugs-3.0.0 /usr/local/findbugs

设置环境变量:

export FINDBUGS_HOME = /usr/local/findbugs

export PATH=$PATH:$FINDBUGS_HOME/bin

生效环境变量:source /etc/profile

验证:findbugs -version

安装jdk,略。

2、安装mave:

1)解压缩maven

tar -zxvf apache-maven-3.3.3-bin.tar.gz

mv apache-maven-3.3.3 /opt/service/maven-3.3.3

chown -R hadoop:hadoop /opt/service/maven-3.3.3/

2)配置maven环境变量:

export MAVEN_HOME=/opt/service/maven-3.3.3

export PATH=$MAVEN_HOME/bin:$PATH

3)本机编译环境如下:

#java -version

java version "1.7.0_67"

Java(TM) SE Runtime Environment (build 1.7.0_67-b01)

Java HotSpot(TM) 64-Bit Server VM (build 24.65-b04, mixed mode)

# scala -version

Scala code runner version 2.10.6 -- Copyright 2002-2013, LAMP/EPFL

# mvn -version

Apache Maven 3.3.3 (7994120775791599e205a5524ec3e0dfe41d4a06; 2015-04-22T19:57:37+08:00)

Maven home: /opt/service/maven-3.3.3

Java version: 1.7.0_67, vendor: Oracle Corporation

Java home: /opt/service/jdk1.7.0_67/jre

Default locale: en_US, platform encoding: UTF-8

OS name: "linux", version: "3.10.0-514.el7.x86_64", arch: "amd64", family: "unix"

4)修改maven仓库默认位置:

vim conf/settings.xml
  
   --添加如下内容:
   <localRepository>/home/hadoop/.m2/repository/</localRepository>
  

5)修改maven镜像位置为阿里云的maven镜像仓库

<mirrors>
      <!-- mirror
       | Specifies a repository mirror site to use instead of a given repository. The repository that
       | this mirror serves has an ID that matches the mirrorOf element of this mirror. IDs are used
       | for inheritance and direct lookup purposes, and must be unique across the set of mirrors.
       |
      <mirror>
        <id>mirrorId</id>
        <mirrorOf>repositoryId</mirrorOf>
        <name>Human Readable Name for this Mirror.</name>
        <url>http://my.repository.com/repo/path</url>
      </mirror>
       -->

<mirror>
          <id>alimaven</id>
          <mirrorOf>central</mirrorOf>
          <name>aliyun maven</name>
          <url>http://maven.aliyun.com/nexus/content/repositories/central/</url>
      </mirror>
     
      <mirror>
          <id>repo1</id>
          <mirrorOf>central</mirrorOf>
          <name>Human Readable Name for this Mirror</name>
          <url>http://repo1.maven.org/maven2/</url>
      </mirror>
     
      <mirror>
          <id>repo2</id>
          <mirrorOf>central</mirrorOf>
          <name>Human Readable Name for this Mirror</name>
          <url>http://repo2.maven.org/maven2/</url>
      </mirror>

</mirrors>
   

更改完成之后可以在命令行,执行命令验证一下:mvn help:system

命令执行完成后我们可以在目录/home/hadoop/.m2/repository/下看到很多文件,这时表示maven已经配置成功了。

$ ls /home/hadoop/.m2/repository/

backport-util-concurrent  classworlds  com  commons-cli  commons-lang  jdom  jtidy  junit  org  plexus  xmlpull  xpp3

3、编译hadoop

export MAVEN_OPTS="-Xms256m -Xmx512m"

mvn package -DskipTests -Pdist,native -Drequire.snappy

4、编译成功后的tar包存储在

./hadoop-dist/target/hadoop-2.6.0.tar.gz

5、配置hadoop的native支持
     用步骤6压缩包中lib/native目录下文件替换目标节点lib/native文件,然后通过以下指令检查hadoop库支持:

$bin/ hadoop checknative

Native library checking:

hadoop:  true /opt/cdh5/hadoop-2.6.0-cdh5.10.0/lib/native/libhadoop.so

zlib:    true /lib64/libz.so.1

snappy:  true /lib64/libsnappy.so.1

lz4:     true revision:99

bzip2:   true /lib64/libbz2.so.1

openssl: true /lib64/libcrypto.so

至此,hadoop完全分布式安装成功。

编译安装hadoop2.x的更多相关文章

  1. RedHat Ent 6.5 64bit编译安装hadoop2.4.1

    RedHat Ent 6.5 64bit编译安装hadoop2.4.1 感谢原帖:http://blog.csdn.net/w13770269691/article/details/16883663/ ...

  2. 编译安装hadoop2.6.3

    一.安装环境 1.1  JAVA  安装java1.7 下载jdk1.7: [root@node1~]# wget http://download.oracle.com/otn-pub/java/jd ...

  3. CentOs64位编译安装hadoop-2.6.0

    官方提供的hadoop-2.x版本貌似都是32位的,在64位机子下使用可能会报错,最好使用官方提供的源码进行本地编译,编译成适合本地硬件环境的64位软件包. Hadoop是使用Java语言开发的,但是 ...

  4. hadoop-2.2.0 的编译安装及HA配置

    一 准备工作 准备工作中要求有 1.centOs 6.4,添加hadoop用户,配置集群内的/etc/hosts文件. 2.安装hadoop用户的ssh,并打通集群内所有机器,(ha执行fencing ...

  5. Hadoop第3周练习--Hadoop2.X编译安装和实验

    作业题目 位系统下进行本地编译的安装方式 选2 (1) 能否给web监控界面加上安全机制,怎样实现?抓图过程 (2)模拟namenode崩溃,例如将name目录的内容全部删除,然后通过secondar ...

  6. Ubuntu12.04-x64编译Hadoop2.2.0和安装Hadoop2.2.0集群

      本文Blog地址:http://www.cnblogs.com/fesh/p/3766656.html   本文对Hadoop-2.2.0源码进行重新编译(64位操作系统下不重新编译会有版本问题) ...

  7. hadoop2.1.0编译安装教程

    由于现在hadoop2.0还处于beta版本,在apache官方网站上发布的beta版本中只有编译好的32bit可用,如果你直接下载安装在64bit的linux系统的机器上,运行会报一个INFO ut ...

  8. hadoop2.1.0和hadoop2.2.0编译安装教程

    由于现在hadoop2.0还处于beta版本,在apache官方网站上发布的beta版本中只有编译好的32bit可用,如果你直接下载安装在64bit的linux系统的机器上,运行会报一个INFO ut ...

  9. hadoop2.2.0 centos 编译安装详解

    http://blog.csdn.net/w13770269691/article/details/16883663 废话不讲,直切正题. 搭建环境:Centos x 6.4 64bit 1.安装JD ...

随机推荐

  1. eclipse开发android入门学习

    1.device窗体            查看android执行情况的窗体和DDMS内容一致 2.android.bat             在adb路径下执行adb操作,实现android系统 ...

  2. Hexo NexT 博客后台管理指南

    上篇文章讲到,将Hexo NexT 博客成功上传到GitHub 并绑定到我们自定义的域名下了. 但是却还是有个问题,那就是Hexo NexT 博客如何进行后台管理呢? 如果总是通过手动创建文件的方式, ...

  3. ES6,Array.from()函数的用法

    ES6为Array增加了from函数用来将其他对象转换成数组. 当然,其他对象也是有要求,也不是所有的,可以将两种对象转换成数组. 1.部署了Iterator接口的对象,比如:Set,Map,Arra ...

  4. Java知多少(33)多态对象的类型转换

    这里所说的对象类型转换,是指存在继承关系的对象,不是任意类型的对象.当对不存在继承关系的对象进行强制类型转换时,java 运行时将抛出 java.lang.ClassCastException 异常. ...

  5. SpringBatch的初步了解

    一.SpringBatch是一个批处理的框架,作为一个Spring组件,提供了通过使用Spring的依赖注入来处理批处理的条件. 什么是批处理呢? 在现代企业应用当中,面对复杂的业务以及海量的数据,除 ...

  6. ABBYY OCR技术教电脑阅读缅甸语(下)

    文本行检测到之后,我们开始寻找单词和字母之间的间隙,这一次,我们运用了水平直方图,将大的间隙假设为单词之间的空隙,小的间隙理解为字母之间的空隙,检测缅甸文本中的空隙几乎没有出现问题,不像泰语,几乎没有 ...

  7. vector的多套遍历方案

    1.迭代器 begin,end,*it++ 2.下标法 3.at函数(GetAt) 4.指针法 指针移到头部rewind.

  8. 【代码审计】XYHCMS V3.5任意文件读取漏洞分析

      0x00 环境准备 XYHCMS官网:http://www.xyhcms.com/ 网站源码版本:XYHCMS V3.5(2017-12-04 更新) 程序源码下载:http://www.xyhc ...

  9. python socket 实现的简单http服务器

    预备知识: 关于http 协议的基础请参考这里. 关于socket 基础函数请参考这里. 关于python 网络编程基础请参考这里. 一.python socket 实现的简单http服务器   废话 ...

  10. [原]openstack-kilo--issue(八)NovaException: Unexpected vif_type=binding_failed

    2016-12-06 11:11:22.593 1505 INFO nova.scheduler.client.report [req-43897fe4-800f-436a-a13b-1a0098c8 ...