hadoop2 详细讲解伪分布式安装步骤

1.安装环境

安装前的准备:
hadoop2.5.0   下载地址:https://archive.apache.org/dist/hadoop/common/hadoop-2.5.0/
jdk7 下载地址:http://www.oracle.com/technetwork/java/javase/downloads/java-archive-downloads-javase7-521261.html
centOS6.4      下载地址:http://vault.centos.org/6.4/isos/x86_64/



2.关闭防火墙

    2.1、临时关闭

$sudo service iptables stop
$sudo service iptables status






2.2、开机启动关闭

$sudo chkconfig iptables off
$sudo chkconfig --list|grep iptables


3.关闭SELINUX

3.1、临时关闭
$setenforce 0 //0:关闭  1:开启
$getenforce


3.2、永久关闭

$sudo vi /etc/sysconfig/selinux
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
SELINUX=disabled  //修改为disabled
# SELINUXTYPE= can take one of these two values:
#     targeted - Targeted processes are protected,
#     mls - Multi Level Security protection.
SELINUXTYPE=targeted
 
  

4.设置JAVA JDK环境变量

4.1、解压jdk-7u67-linux-x64.tar.gz

4.2、添加环境变量

$vi /etc/profile


4.3、source操作,检查jdk是否安装成功

$source /etc/profile
$java -version


5.配置hadoop-env.sh、core-site.xml、hdfs-site.xml

注意配置文件里不能含有中文

5.1、解压hadoop-2.5.0.tar.gz

进入hadoop-2.5.0/etc/hadoop目录,这是配置文件存储的目录。

参考官网http://hadoop.apache.org/docs/r2.5.2/hadoop-project-dist/hadoop-common/SingleCluster.html


 5.2、配置hadoop-2.5.0/ect/hadoop/hadoop-env.sh
    添加环境变量路径,修改如下
# The java implementation to use.
export JAVA_HOME=/home/xusy/share/modules/jdk1.7.0_67  

 5.3、配置hadoop-2.5.0/ect/hadoop/hdfs-site.xml

replication指的是副本数,默认是3,此处设为1,因为是伪分布式是单节点,即只有一个datanode)。

 关于配置说明请查参考文章:http://michaelkang.blog.51cto.com/1553154/1382812,写的很详细。

增加如下配置:

<property>
    <name>dfs.replication</name>
    <value>1</value>
</property>
<property>
    <name>dfs.datanode.data.dir</name>
    <value>file:///home/xusy/share/modules/hadoop-2.5.0/data</value>
</property><span style="font-family: Arial, Helvetica, sans-serif;"> </span>
 
 

配置说说明:

dfs.replication 指的是副本数,默认是3,此处设为1,因为伪分布式是单节点,

即只有一个datanode。

dfs.datanode.data.dir   <可选配置>,真正的datanode数据存储路径,可以写多块硬盘,逗号分隔,把这些位置

分散在每个节点上的所有磁盘上可以实现磁盘I/O平衡,因此会显著改进磁盘I/O性能。

<span style="font-family: Arial, Helvetica, sans-serif;"> </span>

5.4、配置hadoop-2.5.0/ect/hadoop/core-site.xml

添加如下:

<property>
      <name>fs.defaultFS</name>
      <value>hdfs://xusy:8020</value>    
</property>
</pre><pre name="code" class="html">配置说明:<pre name="code" class="html"><span style="color:#ff0000;">fs.defaultFS</span> 指的是默认文件系统</span></span>
<span style="color:#ff0000;">xusy </span>linux主机名
<span style="color:#ff0000;">8020</span> 端口号<span style="color:#33cc00;">(这个值是不是随便一个没用的端口号都行?知道的人请回复下,谢谢!)</span>
 
 
 
 
 
 

配置说明:

fs.defaultFS: 指的是默认文件系统

xusy :linux主机名

8020:端口号(这个值是不是随便一个没用的端口号都行?直说的回复一下)

6.格式化namenode(查错)

$bin/hdfs namenode -format

失败:


解决:主机名xusy命名方式不对,要想域名那样命名,要带“.”后缀,可以改成xuxudede.com。

主机名修改如下:

1.切换到root用户,重命名主机名

#hostname xuxudede.com


2.修改hosts文件

#vi /etc/hosts
 
 

3.修改network文件

#vi /etc/sysconfig/network


4.宿主机修改hosts如下:
进入C:\WINDOWS\system32\drivers\etc
增加下面一行

192.168.1.110       xuxudede.com

5.重新配置hadoop-2.5.0/ect/hadoop/core-site.xml

<property>
      <name>fs.defaultFS</name>
      <value>hdfs://xuxudede.com:8020</value>    
</property>
6.重启linux系统

#reboot

7.重新格式化namenode

成功!

$bin/hdfs namenode -format

图中方框内是datanode的数据存储目录!这个也可以自己配置。

7.启动namenode

$sbin/hadoop-daemon.sh start namenode
$jps //查看是否启动成功


8.启动datanode

$sbin/hadoop-daemon.sh start datanode
$jps //查看是否启动成功


9.测试hdfs

http://a:50070/  hdfs web地址。( a:是具体的主机名或者ip地址)


9.1、首先在linux系统准备好一个文件

$vi wc.txt


9、2 $bin/hdfs dfs  //查看有哪些dfs命令

$bin/hdfs dfs



9.3、在HDFS上创建文件

$bin/hdfs dfs -mkdir -p /user/xusy/datas/input  


9.4、上传文件到hdfs

$bin/hdfs dfs -mkdir -put /home/xusy/share/datas/wc.txt /user/xusy/datas/input  


HDFS web显示


9.5、查看文件内容

$bin/hdfs dfs -cat /user/xusy/datas/input/wc.txt 

至此,证明HDFS已经配置成功!

10.配置mapred-site.xml、yarn-site.xml

10.1、将mapred-site.xml.template重命名为mapred-site.xml

10.2、配置hadoop-2.5.0/ect/hadoop/mapred-site.xml 
<property>
     <name>mapreduce.framework.name</name>
     <value>yarn</value>
</property>
 
 

配置说明:

mapreduce.framework.name : 配置mapreduce运行在yarn上

10.3、配置hadoop-2.5.0/ect/hadoop/mapred-site.xml  //配置mapreduce_shuffle和resourcemanager节点运行的主机,      注意:yarn.resourcemanager.hostname的配置官网上没提到,但是这一项是必须的,不然mapreduce跑不起来   

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

<property>
    <name>yarn.resourcemanager.hostname</name>
    <value>xuxudede.com</value>
 </property>
<pre name="code" class="html">配置说明:
<span style="color:#ff0000;">yarn.nodemanager.aux-services</span> mapreduce的shuffle(洗牌)配置
<span style="color:#ff0000;">yarn.resourcemanager.hostname</span> resourcemanager运行的主机
 
 
 
 
 

   配置说明:

   yarn.nodemanager.aux-services : mapreduce的shuffle(洗牌)配置

   yarn.resourcemanager.hostname :resourcemanager运行的主机

11.启动resourcemanager

$sbin/yarn-daemon.sh start resourcemanager



12.启动nodemanager
$sbin/yarn-daemon.sh start nodemanager

方框内是启动日记的目录,如果启动出错了,可以查看相应的日志,
日记前面都是加载jar包,可忽略,直接拖到最后面查看。


13.测试mapreduce

http://a:8088/  hdfs web地址。( a:是具体的主机名或者ip地址)

13.1 运行wordcount
$ bin/yarn jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.5.0.jar 
   wordcount /user/xusy/datas/input/wc.txt /user/xusy/datas/output
注:
需要制定一个输入路径,必须存在,如:/user/xusy/datas/input/wc.txt

输出路径不能存在,运行时会自动创建。


13.2 yarn的web运行过程及状态查看




13.3 hdfs的web运行结果查看


13.2 Command line显示运行结果
$bin/hdfs dfs -cat /user/xusy/datas/output/part-r-00000


至此,整个mapreduce已经顺利运行成功!


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值