昨天没有写好了没有更新,今天一起更新,yarn框架也是刚搭建好的。

我这里把hadoop放在了我的个人用户hadoop下了,你也能够尝试把它放在/usr/local,考虑的问题就相对多点。

主要的软硬件配置:

x86台式机。window7  64位系统

wmware虚拟机(x86的台式机至少是4G内存。才干开2台虚机)

centos6.4操作系统

hadoop-2.2.0.tar.gz

jdk-6u24-linux-i586.bin

WinScp 远程文件传输工具,非常好用。能够用于windows和虚拟机Linux之间文件相互拷贝。

一、root下的配置

a) 改动主机名:vi /etc/sysconfig/network

Master, slave1,

b) 解析Ip: vi /etc/hosts 

由于採用的是Host-only连接网络,主机上Vmnet1的ip:192.168.137.1

192.168.137.50 master

192.168.137.55 slave1

c) 调试网络:

採用自定的vmnet1,默认是host-only这样的方式,连接网络,配置网络。

改动后记得调用 service network restart

确保三台虚拟机能够相互ping通。

(非常好弄的,我如今的问题怎样让虚拟机连接外网,我会在近期的博客中,弄清楚,继续关注我的博客)

d) 关闭防火墙

 查看:service  iptables  status

 关闭:service  iptables  stop

 查看防火墙有无自启动:

Chkconfig –-list | grep  iptables

关闭自启动:

Chkconfig  iptables  off

二、hadoop用户下的配置

a) 创建用户hadoop,设置password,进入用户

useradd hadoop

passwd hadoop

b) master创建公私秘钥

分别在两台虚拟机上生成:ssh-keygen –t rsa.

.ssh是一个隐藏的文件  #cd .ssh可进入

1)将id_rsa.pub复制给authorized_keys

Cp id_rsa.pub authorized_keys

2)将master中的authorized_keys复制给slave1的/home/hadoop/.ssh下

scp authorized_keys root@192.168.137.55:/home/hadoop/.ssh/

3)将master拷贝过来的authorized_keys拷贝到slave1本身所创的authorized_keys下

4)验证ssh的免password生效:

a)能够尝试发个小文件给对方机器,假设没有提示要求password,那么你的免password就生效了。

b)也能够直接ssh+对方机器名(hostname改过之后),能够进入对方用户环境则说明生效。

c) 将hadoop拷贝拷贝到相应的master机子中/home/hadoop/

配置hadoop用户的环境变量 vi  /etc/profile,加入例如以下内容:

#set java enviroment

export JAVA_HOME=/usr/local/jdk

export CLASSPATH=.:$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib

export PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin

# Hadoop

export HADOOP_PREFIX="/home/hadoop/hadoop"

export PATH=$PATH:$HADOOP_PREFIX/bin:$HADOOP_PREFIX/sbin

export HADOOP_COMMON_HOME=${HADOOP_PREFIX}

export HADOOP_HDFS_HOME=${HADOOP_PREFIX}

export HADOOP_MAPRED_HOME=${HADOOP_PREFIX}

export HADOOP_YARN_HOME=${HADOOP_PREFIX}

注:su + username实现切换用户。

d) 编辑/home/hadoop/etc/hadoop/hadoop-env.sh

export JAVA_HOME=/usr/local/jdk

e) 编辑/home/hadoop/etc/hadoop/yarn-env.sh

export JAVA_HOME=/usr/local/jdk

f) 编辑/home/hadoop/etc/hadoop/core-site.xml

<!-- 新变量f:s.defaultFS 取代旧的:fs.default.name --> 

<property> 

<name>fs.defaultFS</name> 

<value>hdfs://master:9000</value> 

</property> 

<property>  

<name>hadoop.tmp.dir</name> 

<!-- 注意创建相关的文件夹结构,这里的tmp是自己创建的 --> 

<value>/home/hadoop/hadoop/tmp</value> 

</property> 

g) 编辑/home/hadoop/etc/hadoop/hdfs-site.xml

<property> 

<name>dfs.replication</name>

 <!-- 值须要与实际的DataNode节点数要一致,本文为3 --> 

<value>1</value> 

</property>

<property> 

<name>dfs.namenode.name.dir</name> 

<!-- 注意创建相关的文件夹结构 --> 

<value>file:/home/hadoop/hadoop/dfs/namenode</value> 

<final>true</final> 

</property> 

<property> 

<name>dfs.datanode.data.dir</name> 

<!-- 注意创建相关的文件夹结构 --> 

<value>file:/home/hadoop/hadoop/dfs/datanode</value> 

</property> 

h) 编辑/home/hadoop/hadoop/etc/hadoop/yarn-site.xml

<property> 

<name>yarn.nodemanager.aux-services</name> 

<value>mapreduce_shuffle</value> 

</property> 

<property> 

<name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name> 

 <value>org.apache.hadoop.mapred.ShuffleHandler</value> 

</property> 

<!--  resourcemanager hostname或ip地址--> 

<property> 

<name>yarn.resourcemanager.hostname</name> 

<value>master</value> 

</property> 

h) 编辑/home/hadoop/hadoop/etc/hadoop/mapred-site.xml

注:默认没有mapred-site.xml文件,copy  mapred-site.xml.template 一份为 mapred-site.xml就可以 

<property> 

 <name>mapreduce.framework.name</name> 

 <value>yarn</value> 

     <final>true</final> 

</property>  

三、启动和測试

1、启动Hadoop

1.1、第一次启动须要在Master.Hadoop 运行format : hdfs namenode -format :

格式化成功,你能找到一句话:

1.2、在Master.Hadoop运行 start-dfs.sh :

验证启动进程例如以下: 

1.3、在Master运行 start-yarn.sh :

 验证启动进程例如以下:

四、演示案例:(单词计数)

1)先实现以下的生成文件夹命令:

)本地创建三个文件 micmiu-01.txt、micmiu-03.txt、micmiu-03.txt, 分别写入例如以下内容:

micmiu-01.txt: 

Hi Michael welcome to Hadoop 

more see micmiu.com

micmiu-02.txt: 

Hi Michael welcome to BigData

more see micmiu.com

micmiu-03.txt: 

Hi Michael welcome to Spark 

more see micmiu.com

3)然后cd 切换到Hadoop的share/hadoop/mapreduce下运行

[hadoop@master mapreduce]$ hadoop jar hadoop-mapreduce-examples-2.2.0.jar wordcount /user/micmiu/wordcount/in /user/micmiu/wordcount/out

ps: hdfs 中 /user/micmiu/wordcount/out 文件夹不能存在 否则运行报错。 

5)到此 wordcount的job已经运行完毕,运行例如以下命令能够查看刚才job的运行结果: 

hadoop的童鞋们,有问题加关注,评价中说明问题。

hadoop备战:yarn框架的搭建(mapreduce2)的更多相关文章

  1. Hadoop MapReduceV2(Yarn) 框架简介[转]

    对于业界的大数据存储及分布式处理系统来说,Hadoop 是耳熟能详的卓越开源分布式文件存储及处理框架,对于 Hadoop 框架的介绍在此不再累述,读者可参考 Hadoop 官方简介.使用和学习过老 H ...

  2. Hadoop MapReduceV2(Yarn) 框架简介

    http://www.ibm.com/developerworks/cn/opensource/os-cn-hadoop-yarn/ 对于业界的大数据存储及分布式处理系统来说,Hadoop 是耳熟能详 ...

  3. hadoop备战:yarn框架的简单介绍(mapreduce2)

    新 Hadoop Yarn 框架原理及运作机制 重构根本的思想是将 JobTracker 两个基本的功能分离成单独的组件,这两个功能是资源管理和任务调度 / 监控.新的资源管理器全局管理全部应用程序计 ...

  4. Hadoop 新 MapReduce 框架 Yarn 详解【转】

    [转自:http://www.ibm.com/developerworks/cn/opensource/os-cn-hadoop-yarn/] 简介: 本文介绍了 Hadoop 自 0.23.0 版本 ...

  5. Hadoop学习之YARN框架

    转自:http://www.ibm.com/developerworks/cn/opensource/os-cn-hadoop-yarn/,非常感谢分享! 对于业界的大数据存储及分布式处理系统来说,H ...

  6. 更快、更强——解析Hadoop新一代MapReduce框架Yarn(CSDN)

    摘要:本文介绍了Hadoop 自0.23.0版本后新的MapReduce框架(Yarn)原理.优势.运作机制和配置方法等:着重介绍新的Yarn框架相对于原框架的差异及改进. 编者按:对于业界的大数据存 ...

  7. Hadoop 新 MapReduce 框架 Yarn 详解

    Hadoop 新 MapReduce 框架 Yarn 详解: http://www.ibm.com/developerworks/cn/opensource/os-cn-hadoop-yarn/ Ap ...

  8. Hadoop Yarn框架详细解析

    在说Hadoop Yarn之前,我们先来看看Yarn是怎样出现的.在古老的Hadoop1.0中,MapReduce的JobTracker负责了太多的工作,包括资源调度,管理众多的TaskTracker ...

  9. hadoop之yarn详解(框架进阶篇)

    前面在hadoop之yarn详解(基础架构篇)这篇文章提到了yarn的重要组件有ResourceManager,NodeManager,ApplicationMaster等,以及yarn调度作业的运行 ...

随机推荐

  1. C#基础知识回顾---你不知道的Lazy<T>

    对象的创建方式,始终代表了软件工业的生产力方向,代表了先进软件技术发展的方向,也代表了广大程序开发者的集体智慧.以new的方式创建,通过工厂方法,利用IoC容器,都以不同的方式实现了活生生实例成员的创 ...

  2. 使用pl/sql的文本导入器时如何设置主键自增长

    在使用文本导入器批量导入数据时,如果需要设置主键自增长,可以先创建一个序列: create sequence SEQ_Userinf start with 1 increment by 1nomaxv ...

  3. MySQL数据库的配置

    一.配置MySQL数据库 MySQL的官网www.mysql.com 1.解压绿色版mysql,并改名为mysql5.7,如下图 对比一下下图5.6以前的版本,少data目录(存放数据)和my-def ...

  4. 关于电脑重装win10系统导致编译环境失效(jdk)

    年前换了固态,于是重装了系统发现之前装在非系统盘的jdk1.8配置过系统环境后仍然不能正常使用的问题,在犹豫一会后选择了重装jdk, 由于之前用的是win7在环境配置上是 变量值内加;即可自行分行,但 ...

  5. JFace TableViewer性能改善 -- 使用VirtualTable

    前一篇提到了SWT中的table的通过使用virtual table性能得到很大的改善,那么如果既存的工程中使用的是TableViewer来创建的表,也能改成virtual table吗? 答案是肯定 ...

  6. 前m大的数(hdu1280)

    前m大的数 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Subm ...

  7. A计划 hdu2102(bfs一般题)

    A计划 Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submis ...

  8. CentOS7部署Django项目

    1. 云服务器 这里使用的是腾讯云选择系统:CentOS7.3 记住云服务器登录密码 2. 配置Python3环境 默认Python环境为python2.7,yum安装是需要python2的环境的 安 ...

  9. div阴影

    .box-shadow{ //Firefox4.0- -moz-box-shadow:投影方式 X轴偏移量 Y轴偏移量阴影模糊半径 阴影扩展半径 阴影颜色; //Safariand Google ch ...

  10. ArrayList初步

    使用ArrayList,需添加引用:using System.Collections: 第一个例子: ArrayList list = new ArrayList(); list.Add(" ...