yarn 与 resource manager ha

YARN
最初的思想是把hadoop1中的job tracker的功能拆分出来,
把它的资源管理与任务调度功能分成两个单独的进程.
yarn体系结构中有两个进程,resource manager和nodemanger
.
前者主要负责资源分配,后者nodemanager在每一个机器中都有一个进程,
负责container的创建,监控分配的资源(CPU,内存和磁盘与网络资源),同时
通过心跳汇报这些情况给RM.
applicationmaster是框架特定的作业进程,主要负责与RM申请资源与监控任务
执行的情况.运行在nodemanager上面.
包含两大组件,Scheduler和ApplicationManager.
Scheduler负责创建资源,这些资源基于队列与容量限制.
现在资源以容器的形式包装起来,如多少内存,多少个cpu core被定义成一个容器.
一个作业请求的时候分配多少个容器?
调度器具有可插拔的功能,来负责把集群的资源进行划分.现在主流的调度策略是
基于YARN的容量调度策略与基于FB的公平调度策略.

应用管理器主要负责作业的提交,并且负责协调第一个容器,第一个窗口是作业的
applicationmaster进程需要的,它还负责这个容器启动失败后的重启.appicationmaster
后期会向sheduler来协调作业运行需要的资源.

YARN支持资源保留机制,有时候需要运行特别重要的作业,或者某作业需要的容量比较大,
可会自动启用保留机制,预留一些cpu,内存资源供作业使用.
如何主动在代码中使用这个功能?

RM的重启,
早期的RM HA实现中,只做到了不保留工作的重启,即它只保留了作业的状态与
运行时所需安全证书等信息,然后重启之后,nm会杀死正在运行的container并重新注册到rm上,
相当于重新启动了整个yarn,只是不需要重新提交作业而已.
近两年已经实现了保留工作的RM重启,通过结合从NM,application master来重建容器状态,原来
运行的作业不需要在rm重启后被杀死重新运行,在重启或切换期间它们只是轮询尝试,对用户是透明的.
这些作业运行的元数据信息可能保存在HDFS上,也可以保存在数据库与ZOOKEEPER上,
主流的配置是ZOOKEERP,因为它可以支持RM的HA,主要是支持fencing来保证不脑裂,不让多个rm进程来
改写存储的内容,这是ZK的特定,它的节点可以用于分布式锁类似的功能.
基于文件或leveldb的存储都不支持fencing的功能.

<property>
   <description>Enable RM to recover state after starting. If true, then
   yarn.resourcemanager.store.class must be specified</description>
   <name>yarn.resourcemanager.recovery.enabled</name>
   <value>true</value>
 </property>

<property>
   <description>The class to use as the persistent store.</description>
   <name>yarn.resourcemanager.store.class</name>
   <value>org.apache.hadoop.yarn.server.resourcemanager.recovery.ZKRMStateStore</value>
 </property>

<property>
   <description>Comma separated list of Host:Port pairs. Each corresponds to a ZooKeeper server
   (e.g. "127.0.0.1:3000,127.0.0.1:3001,127.0.0.1:3002") to be used by the RM for storing RM state.
   This must be supplied when using org.apache.hadoop.yarn.server.resourcemanager.recovery.ZKRMStateStore
   as the value for yarn.resourcemanager.store.class</description>
   <name>yarn.resourcemanager.zk-address</name>
   <value>127.0.0.1:2181</value>
 </property>

主要翻译自apache hadoop yarn官网

时间: 2024-10-09 07:04:39

yarn 与 resource manager ha的相关文章

hadoop官方文档学习笔记(1)——resource manager HA

resource manager HA是hadoop自从2.4之后推出的功能,以Active/Standby的方式提供冗余,目的是为了消除单点失败的风险. 1.总体架构: 2.故障切换:有自动和手动两种形式. 手动:如果以手动形式切换,使用yarn haadmin命令首先将Active节点转为standby,再将standby节点转为active. 自动:RM有基于zookeeper的节点选举机制决定哪一个是活动节点.不需要像HDFS一样部署一个zkfc守护进程,因为RM内嵌了这样的功能. 做了

Spark运行模式_基于YARN的Resource Manager的Custer模式(集群)

使用如下命令执行应用程序: 和"基于YARN的Resource Manager的Client模式(集群)"运行模式,区别如下: 在Resource Manager端提交应用程序,会生成SparkSubmit进程,该进程只用来做Client端,应用程序提交给集群后,就会删除该进程. Resource Manager在集群中的某个NodeManager上运行ApplicationMaster,该AM同时会执行driver程序.紧接着,会在各NodeManager上运行CoarseGrain

Hadoop 管理工具HUE配置-Yarn Resource Manager HA配置

安装HUE之后,需要配置很多东西才能将这个系统的功能发挥出来,因为Yarn是配置的HA模式,所以在配置HUE的时候,会有些不用,下面一段文字是官网拿来的 # Configuration for YARN (MR2) # ------------------------------------------------------------------------ [[yarn_clusters]] [[[default]]] # Whether to submit jobs to this cl

Hadoop2 namenode HA + 联邦 + Resource Manager HA 实验

实验的Hadoop版本为2.5.2,硬件环境是5台虚拟机,使用的均是CentOS6.6操作系统,虚拟机IP和hostname分别为: 192.168.63.171    node1.zhch 192.168.63.172    node2.zhch 192.168.63.173    node3.zhch 192.168.63.174    node4.zhch 192.168.63.175    node5.zhch ssh免密码.防火墙.JDK这里就不在赘述了.虚拟机的角色分配是: node

Spark运行模式_基于YARN的Resource Manager的Client模式(集群)

现在越来越多的场景,都是Spark跑在Hadoop集群中,所以为了做到资源能够均衡调度,会使用YARN来做为Spark的Cluster Manager,来为Spark的应用程序分配资源. 在执行Spark应用程序前,要启动Hadoop的各种服务.由于已经有了资源管理器,所以不需要启动Spark的Master.Worker守护进程.相关配置的修改,请自行研究. 使用如下命令执行应用程序 提交应用程序后,各节点会启动相关的JVM进程,如下: 在Resource Manager节点上提交应用程序,会生

YARN/MRv2 Resource Manager深入剖析—资源调度器

在YARN中,资源调度器(ResourceScheduler)是一个非常核心的部件,它负责将各个节点上的资源封装成container,并按照一定的约束条件(按队列分配,每个队列有一定的资源分配上限等)分配给各个application. (注意:本文分析基于hadoop-2.0.3-alpha) YARN的资源管理器实际上是一个事件处理器,它需要处理来自外部的6种SchedulerEvent类型的事件,并根据事件的具体含义进行相应的处理.这6种事件含义如下: (1)  NODE_REMOVED 事

resource manager因为CapacityScheduler的NPE异常退出,引起failover切换

一.问题描述 yarn2.0发生resource manager down(master2)掉,并引起resource manager的failover切换 二.问题分析 1)看master2上resource manager的日志 2016-06-26 12:35:41,504 INFO org.apache.hadoop.yarn.server.resourcemanager.RMAuditLogger: USER=warehouse        OPERATION=AM Released

Azure Resource Manager 简介

Azure Resource Manager 简介? 注意 您当前查看的页面是未经授权的转载!查看最新版本请前往:http://www.cnblogs.com/qin-nz/p/azrue-resource-manager-introduction.html. 提示 本文更新时间:2016年01月01日. Azure 资源管理器 ( Azure Resource Manager ) 是微软新提供的一种管理Azure资源的一种模式. 这种管理的思想不仅出现在命令行和PowerShell中,也出现在

Mac Error Create Android Project - “Errors running builder &#39;Android Resource Manager&#39; on project”

http://stackoverflow.com/questions/18096315/mac-error-create-android-project-errors-running-builder-android-resource-man 在mac笔记本上运行android eclipse报标题的错误,然后在stackoverflow上找到了答案 18down votefavorite 5 I spent the whole day just trying to create a simple