简介

Yet Another Resource Negotiator ,负责整个集群资源的调度,和管理,支持多框架资源统一调度(HIVE spark flink)

开启yarn

安装hadoop,可以看我之前的博文 这边就不讲了

编辑 etc/hadoop/mapred-site.xml: 添加如下配置

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

  

编辑 etc/hadoop/yarn-site.xml: 添加如下配置

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

  

启动 RM 和 NM

Start ResourceManager daemon and NodeManager daemon:
$ sbin/start-yarn.sh

  

关闭Yarn

 sbin/stop-yarn.sh

  

打开浏览器访问:http://192.168.1.100:8088/cluster

模块简介

ResourceManager (RM)

客户端提交作业到 RM, RM对应多个 NM ,RM是集群中对外提供的服务,同一时刻只有一个负责资源相关处理,客户端任务来了之后,先启动AM 然后监控AM。 并且还监控NM

ApplicationMaster(AM)

运行在NodeManager里面的,去RM里面申请资源用于在NM上启动对应的task ,每个应用程序对应一个AM.。 并且做数据的切分,为每个task向RM申请资源。并且和NM通信。

NodeManager(NM)

真正工作计算的节点,同时向RM发送心跳信息 任务执行情况。接受来自RM的请求 并且处理AM的命令。

Container

对于任务的运行抽象,一个Container既可以运行AM 也可以运行具体的 map 和 reduce

yarn的基本流程
  • client向yarn提交job,首先找ResourceManager分配资源,
  • ResourceManager开启一个Container,在Container中运行一个Application manager
  • Application manager找一台nodemanager启动Application master,计算任务所需的计算
  • Application master向Application manager(Yarn)申请运行任务所需的资源
  • Resource scheduler将资源封装发给Application master
  • Application master将获取到的资源分配给各个nodemanager
  • 各个nodemanager得到任务和资源开始执行map task
  • map task执行结束后,开始执行reduce task
  • map task和 reduce task将执行结果反馈给Application master
  • Application master将任务执行的结果反馈application manager![](./梁天的博客 _ YARN安装和使用

把作业提交到 yarn上面

自己的MapReduce 首先打成个jar包 传到服务器 然后执行

hadoop jar xxx.jar   me.liangtian.App    param1 param2  

问题排查

我这边一直报错: **Exceeded MAX_FAILED_UNIQUE_FETCHES; bailing-out. **

可能是下面几点造成的

  • 系统设置有关,文件较大,无法分配大内存
  • 机器位数是64位导致这个问题
  • /etc/hosts 里面没有配master的hostname
  • 防火墙没关
  • 临时目录问题

问题1我安装网上方法,对配置文件做了修改: vim /etc/security/limits.conf 加入 * soft nofile 102400 * hard nofile 409600 vim /etc/pam.d/login 加入:session required /lib/security/pam_limits.so但是还是没有办法解决

问题三:由于我是伪分布式,所以只要配本机就行,看了下配置了hostname

问题四:setup下看了我的防火墙,发现防火墙有两个,一个是firework一个是selinux,第一个关了,第二个没关 关了还是不行

最后发现是问题五: yarn.nodemanager.local-dirs对应的路径必须在hdfs-site.xml中的hadoop.tmp.dir路径下,否则yarn会报错找不到缓存文件 需要修改 yarn-site.xml 加上对应的文件目录

<property>
<name>yarn.nodemanager.local-dirs</name>
<value>hadoop.tmp.dir/nm-local-dir</value>
</property>

  

 

YARN安装和使用的更多相关文章

  1. npm、cnpm、yarn 安装删除异同

    背景 一直觉得npm.cnpm.yarn的安装删除基本一样用哪个都行,不过俗话说的好,实践出真知,这里记录一下今天简单测试得到的结果总结. 可能会有错误,希望大家评论指正,十分感谢. 测试电脑系统:M ...

  2. Apache Hadoop集群离线安装部署(二)——Spark-2.1.0 on Yarn安装

    Apache Hadoop集群离线安装部署(一)——Hadoop(HDFS.YARN.MR)安装:http://www.cnblogs.com/pojishou/p/6366542.html Apac ...

  3. 关于yarn安装,这里做一个备份

    安装的是window版本,官网上有三种安装方式. 第一种下载一个.msi的安装包,然后当它运行时会指引你将 Yarn 安装到 Windows 上,因为点开以后页面是404,所以没有用这种方法. 第二种 ...

  4. 什么是yarn,如何使用yarn安装项目依赖

    一.yarn的简介: Yarn是facebook发布的一款取代npm的包管理工具. 二.yarn的特点: 1.速度超快. Yarn 缓存了每个下载过的包,所以再次使用时无需重复下载. 同时利用并行下载 ...

  5. 关于npm和yarn 安装vue脚手架

    第一篇博客有点小紧张.轻喷~ 第一步:安装node.js       地址 --------https://nodejs.org/en/ 详细步骤这里就不写了    可以去看     地址 ----- ...

  6. Storm on Yarn 安装配置

    1.背景知识 在不修改Storm任何源代码的情况下,让Storm运行在YARN上,最简单的实现方法是将Storm的各个服务组件(包括Nimbus和Supervisor),作为单独的任务运行在YARN上 ...

  7. yarn安装部署

    在HDFS HA(http://www.cnblogs.com/yinchengzhe/p/5140117.html)基础上进行yarn的安装. 1.配置yarn-site.xml 参数详情参考 ht ...

  8. Hadoop 2.x(YARN)安装配置LZO

    今天尝试在Hadoop 2.x(YARN)上安装和配置LZO,遇到了很多坑,网上的资料都是基于Hadoop 1.x的,基本没有对于Hadoop 2.x上应用LZO,我在这边记录整个安装配置过程 1. ...

  9. Hadoop Yarn 安装

    环境:Linux, 8G 内存.60G 硬盘 , Hadoop 2.2.0 为了构建基于Yarn体系的Spark集群.先要安装Hadoop集群,为了以后查阅方便记录了我本次安装的详细步骤. 事前准备 ...

随机推荐

  1. Java错误:找不到类文件或者未加载主类

    使用java命令执行.class文件时,java只会查找环境变量CLASSPATH中的目录,并会不查找当前目录,所以只要把当前目录”."加入到CLASSPATH中就可以了.

  2. 关于mysql8启动后又停止(windows10系统),忘记密码以及密码过期等坑解决办法总结!

    一 我遇到的问题 1 mysql连接不了,mysql服务启动后又马上关闭 2 忘记密码或者重装服务后提示安装的随机密码过期 一个一个来,先看第一个: 1 出现这个情况很大原因是mysql安装目录有多余 ...

  3. 深入分析Java反射(一)-核心类库和方法

    前提 Java反射的API在JavaSE1.7的时候已经基本完善,但是本文编写的时候使用的是Oracle JDK11,因为JDK11对于sun包下的源码也上传了,可以直接通过IDE查看对应的源码和进行 ...

  4. AS中加载gradle时出现Gradle sync failed: Could not find com.android.tools.build:gradle.的错误

    时间:2019/12/7 这次接着整理加载gradle时出现的错误 出现的错误: Gradle sync failed: Could not find com.android.tools.build: ...

  5. 五、Django学习之基于对象的跨表查询

    五.Django学习之基于对象的跨表查询 正向与反向查询 关键在于ForeignKey字段写的位置.例如下面这段代码, 关系属性(字段)写在哪个类(表)里面,从当前类(表)的数据去查询它关联类(表)的 ...

  6. hashmap 的边遍历边存储

    PS: Hashmap 的一边遍历边存储,可解决例如两数之和. 无重复最长子串问题等,代码为cpp格式. 以无重复最长子串为例. class Solution { public: int length ...

  7. 时序数据库 Apache-IoTDB 源码解析之文件数据块(四)

    上一章聊到行式存储.列式存储的基本概念,并介绍了 TsFile 是如何存储数据以及基本概念.详情请见: 时序数据库 Apache-IoTDB 源码解析之文件格式简介(三) 打一波广告,欢迎大家访问Io ...

  8. asp.net core 3.x 身份验证-3cookie身份验证原理

    概述 上两篇(asp.net core 3.x 身份验证-1涉及到的概念.asp.net core 3.x 身份验证-2启动阶段的配置)介绍了身份验证相关概念以及启动阶段的配置,本篇以cookie身份 ...

  9. POJ_2185_二维KMP

    http://poj.org/problem?id=2185 求最小覆盖矩阵,把KMP扩展到二维,行一次,列一次,取最小覆盖线段相乘即可. #include<iostream> #incl ...

  10. 使用MS Devops 来部署CRM Solution

    在D365 CE开发当中,有一个非常痛苦的问题就是开发,测试环境中的export import solution 部署问题. Devops中能很好的解决这个问题. 工作原理: 在Azure Devop ...