一、安装环境

1.1  JAVA 
安装java1.7
下载jdk1.7:
[root@node1~]# wget http://download.oracle.com/otn-pub/java/jdk/7u79-b15/jdk-7u79-linux-x64.tar.gz?AuthParam=1452765180_64b65bb908cae46ab9a9e492c842d7c7
设置JAVA环境变量:
PATH=$PATH:$HOME/bin:/usr/local/mongodb-linux-x86_64-3.2.0/bin
JAVA_HOME=/usr/local/jdk1.7.0_79
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib:$CLASS
PATH=$JAVA_HOME/bin:$PATH
 
1.2 Maven
下载安装maven:
然后解压,到/usr/local/,配置path
PATH=$JAVA_HOME/bin:/usr/local/apache-maven-3.3.9/bin:$PATH
 
1.3 Findbugs
可选安装,略
 
1.4 protobuf
参考:http://blog.csdn.net/huguoping830623/article/details/45482725
安装:./configure --prefix=/usr/local/protobuf2.5/  

make && make install

安装中可能报错:
configure: error: C++ preprocessor "/lib/cpp" fails sanity check
原因是需要gcc相关包:
  # yum install glibc-headers
  # yum install gcc-c++
安装后把/usr/local/protobuf2.5/bin目录加入PATH
 
1.5 其它包
yum -y install  lzo-devel  zlib-devel  gcc autoconf automake libtool openssl-devel fuse-devel cmake 
 
* 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 and to get the best HDFS encryption performance )
* Jansson C XML parsing library ( if compiling libwebhdfs )   
./configure 
make && make install
* Linux FUSE (Filesystem in Userspace) version 2.6 or above ( if compiling fuse_dfs )
    [root@node1 ~]# wgethttps://github.com/libfuse/libfuse/releases/download/fuse_2_9_4/fuse-2.8.6.tar.gz
    tar -zxvf fuse-2.8.6.tar.gz
   ./configure
   make -j8
   make install
* Internet connection for first build (to fetch all Maven and Hadoop dependencies)
 
二、编译安装
1.下载hadoop源文件
然后解压
 
2.编译hadoop文件
进入hadoop源文件的解压目录,执行:
$ mvn package -Pdist,native -DskipTests -Dtar
要保证能联网,因此要从网上下载依赖包
编译过程要很久。编译完成后放在 hadoop-2.6.3-src/hadoop-dist/target下。
[root@node1 target]# ls -l
total 530484
drwxr-xr-x. 2 root root      4096 Jan 19 13:13 antrun
-rw-r--r--. 1 root root      1867 Jan 19 13:13 dist-layout-stitching.sh
-rw-r--r--. 1 root root       640 Jan 19 13:13 dist-tar-stitching.sh
drwxr-xr-x. 9 root root      4096 Jan 19 13:13 hadoop-2.6.3        hadoop编译后的解压文件
-rw-r--r--. 1 root root 180792661 Jan 19 13:13 hadoop-2.6.3.tar.gz hadoop安装文件
-rw-r--r--. 1 root root      2778 Jan 19 13:13 hadoop-dist-2.6.3.jar
-rw-r--r--. 1 root root 362386511 Jan 19 13:13 hadoop-dist-2.6.3-javadoc.jar
drwxr-xr-x. 2 root root      4096 Jan 19 13:13 javadoc-bundle-options
drwxr-xr-x. 2 root root      4096 Jan 19 13:13 maven-archiver
drwxr-xr-x. 2 root root      4096 Jan 19 13:13 test-dir
复制到安装目录:
[root@node1 target]# cp -r hadoop-2.6.3 /usr/local/
[root@node1 target]# cd /usr/local/hadoop-2.6.3
编辑hadoop-env.sh文件
[root@node1 hadoop-2.6.3]# vi etc/hadoop/hadoop-env.sh  
修改:
export JAVA_HOME=JAVA_HOME=/usr/local/jdk1.7.0_79
添加:
export HADOOP_PREFIX=/usr/local/hadoop-2.6.3
然后测试:
 
 
[root@node1 hadoop-2.6.3]# bin/hadoop version
Hadoop 2.6.3
Subversion Unknown -r Unknown
Compiled by root on 2016-01-19T04:56Z
Compiled with protoc 2.5.0
From source with checksum 722f77f825e326e13a86ff62b34ada
This command was run using /usr/local/hadoop-2.6.3/share/hadoop/common/hadoop-common-2.6.3.jar
测试成功!
 
三、测试
  $ mkdir input
$ cp etc/hadoop/*.xml input
$ bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.6.3.jar grep input output 'dfs[a-z.]+'
$ cat output/*
 
如果报INFO metrics.MetricsUtil: Unable to obtain hostName:node1错
修改/etc/hosts文件,加入本机的别名node1
127.0.0.1 localhost localhost.localdomain localhost修改为
127.0.0.1 localhost.localdomain node1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

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

  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.x

    1.Requirements: * Unix System * JDK 1.7+ * Maven 3.0 or later * Findbugs 1.3.9 (if running findbugs) ...

  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. iOS之safari调试iOS app web页面

    Overview 当下移动端开发过程中大量使用前段H5.js等等技术,而这些web页面的调试在Xcode控制台中不太明了,经常我们移动app运行了就是方法,但是不能显示响应的效果,这时候或许就是已经报 ...

  2. kafka topic制定规则

    kafka topic的制定,我们要考虑的问题有很多,比如生产环境中用几备份.partition数目多少合适.用几台机器支撑数据量,这些方面如何去考量?笔者根据实际的维护经验,写一些思考,希望大家指正 ...

  3. 【LightOJ 1081】Square Queries(二维RMQ降维)

    Little Tommy is playing a game. The game is played on a 2D N x N grid. There is an integer in each c ...

  4. python初学者日记01(字符串操作方法)

    时间:2018/12/16 作者:永远的码农(博客园) 环境: win10,pycharm2018,python3.7.1 1.1  基础操作(交互输入输出) input = input(" ...

  5. xtrabackup全量备份+binlog基于时间点恢复

    1.通过xtrabackup的备份恢复数据库. 2.找到start-position和binlog名称 cat xtrabackup_info 3.导出mysqlbinlog为sql文件,并确定恢复的 ...

  6. Python Monitoring UPS with SNMPWALK

    ##Background My co-worker told me he needed to monitor UPS with SNMP module but he only can get hexa ...

  7. Java OOP——第六章 框架集合

    1.集合框架包含的主要内容及彼此之间的关系: 图1:   集合框架:是为了表示和操作集合而统一规定的一种统一的标准体系结构.               包含三大块的内容:对外的接口.接口的是实现和对 ...

  8. vue组件间传值详解

    1.父传子----传值要点: <1> 在组件注册的时候必须要使用 return 去返回 data对象;

  9. php 算法(冒泡排序)

    //冒泡排序(从小到大)       (从大到小改变for循环中的大于号为小于号即可)    public function index(){          $arr = array(1,8,3, ...

  10. Set的源码分析

    Set的内部实现其实是一个Map.即HashSet的内部实现是一个HashMap,TreeSet的内部实现是一个TreeMap,LinkedHashSet的内部实现是一个LinkedHashMap. ...