一、环境和软件:
1.vmware10+ubuntu14.04(32bit)
查看linux操作系统位数:getconf LONG_BIT
2.jdk1.8.0_60(注意要和linux系统位数一致,我的为32位)
hadoop2.7.1

二、Hadoop 2.0安装部署流程
1.安装jdk
2.Hadoop 2.0单机版安装部署
步骤1:将安装包hadoop-2.2.0.tar.gz存放到某一目录下,并解压
步骤2:修改解压后的目录中的文件夹etc/hadoop下的xml配置文件(如
果文件不存在,则自己创建)
hadoop-env.sh修改以下配置:
export JAVA_HOME=/home/dhm/jdk/jdk1.8.0_60
Slaves文件修改为以下配置:
YARN001 (或者用localhost)
注:以下四个XML配置文件,需在标签和之间增加置项。
mapred-site.xml:

<property> 
    <name>mapreduce.framework.name</name> 
    <value>yarn</value> 
</property>

core-site.xml(其中“YARN001”是在/etc/hosts中设置的host,如果未设置,则换为localhost):

<property> 
   <name>fs.default.name</name> 
   <value>hdfs://YARN001:8020</value> 
</property>

yarn-site.xml:

<property> 
   <name>yarn.nodemanager.aux-services</name> 
   <value>mapreduce_shuffle</value> 
  </property>

hdfs-site.xml:

<property> 
      <name>dfs.replication</name> 
      <value>1</value> 
</property>

步骤3:启动服务:
格式化HDFS:
bin/hdfs namenode -format
注意:hadoop2.7.1中的hadoop命令换为了hdfs

启动HDFS:

sbin/ start-dfs.sh

hadoop2.7.7下载 hadoop2.7.1_hadoop


验证是否启动成功,查看namenode,datanode进程是否起来

hadoop2.7.7下载 hadoop2.7.1_hadoop_02


启动YARN:

sbin/start-yarn.sh

hadoop2.7.7下载 hadoop2.7.1_hadoop_03


验证是否起立,查看进程nodemanager,resourcemange是否起来

hadoop2.7.7下载 hadoop2.7.1_Hadoop_04

步骤4:验证是否启动成功:

hadoop2.7.7下载 hadoop2.7.1_hadoop2.7.7下载_05

YARN Web界面
访问URL地址:http://yarn001:8088

HDFS Web界面
访问URL地址:http://yarn001:50070

常见问题及解决方法:

问题1:采用虚拟机搭建Hadoop环境,每次虚拟机重启后,Hadoop无法启动成功。
解决方案:
 在core-site.xml中增加以下两个配置:

<property>     
 <name>dfs.namenode.name.dir</name>                                  <value>/home/dhm/hadoop/dfs/name</value> 
</property>
</property>
 <name>dfs.datanode.data.dir</name> 
 <value>/home/dhm/hadoop/dfs/data</value> 
</property>

其中,各个目录一定是非/tmp下的目录

问题2:格式化时候出现如下错误
./hdfs: line 304: /home/dhm/Downloads/jdk1.8/jdk1.8.0_60//bin/java: cannot execute binary file: Exec
这是因为jdk版本问题,选择位数同linux操作系统一直的jdk

备注:
Hadoop 2.0安装包目录结构分析
bin
Hadoop最基本的管理脚本和使用脚本所在目录,这些脚本是sbin
目录下管理脚本的基础实现,用户可以直接使用这些脚本管理和使用
Hadoop。
etc
Hadoop配置文件所在的目录,包括core-site.xml、hdfs-site.xml、
mapred-site.xml等从Hadoop 1.0继承而来的配置文件和yarn-site.xml等
Hadoop 2.0新增的配置文件。
include
对外提供的编程库头文件(具体动态库和静态库在lib目录中)
,这些头文件均是用C++定义的,通常用于C++程序访问HDFS或者编
写MapReduce程序。
lib
该目录包含了Hadoop对外提供的编程动态库和静态库,与include
目录中的头文件结合使用。
libexec
各个服务对应的shell配置文件所在目录,可用于配置日志输出
目录、启动参数(比如JVM参数)等基本信息。
sbin
Hadoop管理脚本所在目录,主要包含HDFS和YARN中各类服务
的启动/关闭脚本。
share
Hadoop各个模块编译后的jar包所在目录。