文档章节

yarn任务调度策略

cjun1990
 cjun1990
发布于 2016/11/01 11:38
字数 722
阅读 171
收藏 0
  1. yarn几种调度简介
    Yarn 调度器Scheduler详解
  2. fair scheduler详解
    fair scheduler每一项配置详解:Hadoop YARN配置参数剖析(4)—Fair Scheduler相关参数
    官网关于fair scheduler配置详解:Hadoop MapReduce Next Generation - Fair Scheduler 在cloudera manager中,默认启用的就是fair scheduler,抢占机制也会帮你开启,只需要在配置项" Fair Scheduler XML 高级配置代码段(安全阀)"修改你的fair scheduler配置文件即可。可以配置成如下内容:
<allocations>
  <queue name="root">
    <minResources>5120mb,5 vcores</minResources>
    <maxResources>32768mb,32 vcores</maxResources>
    <maxRunningApps>20</maxRunningApps>
    <minSharePreemptionTimeout>30</minSharePreemptionTimeout>
	<fairSharePreemptionTimeout>30</fairSharePreemptionTimeout>
    <weight>1.0</weight>
    <aclSubmitApps>*</aclSubmitApps> 
    <aclAdministerApps>root,bigdata</aclAdministerApps>
	<fairSharePreemptionTimeout>6000</fairSharePreemptionTimeout>
    <queue name="main-queue">
       <minResources>20480 mb, 16 vcores</minResources>
       <maxResources>32768 mb, 32 vcores</maxResources>
    </queue>    
	<queue name="bigdata">
      <minResources>5120 mb,5 vcores</minResources>
      <maxResources>20480 mb,24 vcores</maxResources>
    </queue>
	<queue name="anonymous">
      <minResources>5120 mb,5 vcores</minResources>
      <maxResources>20480 mb,24 vcores</maxResources>
    </queue>
  </queue>
</allocations>
  1. 相关知识点
  • 资源抢占(Preemption)
    当一个job提交到一个繁忙集群中的空队列时,job并不会马上执行,而是阻塞直到正在运行的job释放系统资源。为了使提交job的执行时间更具预测性(可以设置等待的超时时间),Fair调度器支持抢占。抢占就是允许调度器杀掉占用超过其应占份额资源队列的containers,这些containers资源便可被分配到应该享有这些份额资源的队列中。需要注意抢占会降低集群的执行效率,因为被终止的containers需要被重新执行。可以通过设置一个全局的参数yarn.scheduler.fair.preemption=true来启用抢占功能。此外,还有两个参数用来控制抢占的过期时间(这两个参数默认没有配置,需要至少配置一个来允许抢占Container): minimum share preemption timeout,fair share preemption timeout
    如果队列在minimum share preemption timeout指定的时间内未获得最小的资源保障,调度器就会抢占containers。我们可以通过配置文件中的顶级元素<defaultMinSharePreemptionTimeout>为所有队列配置这个超时时间;我们还可以在<queue>元素内配置<minSharePreemptionTimeout>元素来为某个队列指定超时时间。
    与之类似,如果队列在fair share preemption timeout指定时间内未获得平等的资源的一半(这个比例可以配置),调度器则会进行抢占containers。这个超时时间可以通过顶级元素<defaultFairSharePreemptionTimeout>和元素级元素<fairSharePreemptionTimeout>分别配置所有队列和某个队列的超时时间。上面提到的比例可以通过<defaultFairSharePreemptionThreshold>(配置所有队列)和<fairSharePreemptionThreshold>(配置某个队列)进行配置,默认是0.5。
  • 设置hive的mapreduce任务提交的队列
    在cloudera manager中,设置hive的配置项" hive-site.xml 的 Hive 服务高级配置代码段(安全阀)",配置如下属性:
<property>
    <name>mapred.job.queue.name</name>
    <value>bigdata</value>
</property>

© 著作权归作者所有

cjun1990
粉丝 35
博文 371
码字总数 183914
作品 0
深圳
程序员
私信 提问
2018-07-21期 Hadoop Yarm体系结构剖析

一、简介 YARN(Yet Another Resource Negotiator)是一个通用的资源管理平台,可为各类计算框架提供资源的管理和调度。 其核心出发点是为了分离资源管理与作业调度/监控,实现分离的做法是拥...

JackmaSong
2018/07/23
0
0
《Hadoop权威指南》书摘-关于YARN

转载请注明出处:http://wangnan.tech 简书:http://www.jianshu.com/u/244399b1d776 简介 Apache YARN (Yet Another Resource Negotiaor的缩写)是Hadoop的集群资源管理系统,YARN被引入Hadoo......

GhostStories
2018/07/27
0
0
Yarn大体框架和工作流程研究

一、概述 将公司集群升级到Yarn已经有一段时间,自己也对Yarn也研究了一段时间,现在开始记录一下自己在研究Yarn过程中的一些笔记。这篇blog主要主要从大体上说说Yarn的基本架构以及其各个组...

zengzhaozheng
2018/07/02
0
0
大数据(hadoop-分布式搭建和yarn)

分布式搭建步骤 1:克隆一台机器完成后,按以下步骤进行修改(作为源克隆主机) 1)修改网卡信息,路径/etc/sysconfig/network-scripts 2)删除70-persistent-net.rules这个文件,路径在:/...

这很耳东先生
06/12
38
0
Hadoop YARN中内存和CPU两种资源的调度和隔离

Hadoop YARN同时支持内存和CPU两种资源的调度(默认只支持内存,如果想进一步调度CPU,需要自己进行一些配置),本文将介绍YARN是如何对这些资源进行调度和隔离的。 在YARN中,资源管理由Res...

2k10
2015/03/21
87
0

没有更多内容

加载失败,请刷新页面

加载更多

一起来学Java8(五)——接口默认方法

Java8新加入一个特性,允许在接口方法中给定一个默认实现。前提是在方法前面加一个default关键字。 public interface InterfaceMethod {default void say() {System.out.println("hello...

猿敲月下码
10分钟前
7
0
weed3-2.3.3.查询之缓存控制

Weed3 一个超轻量级ORM框架(只有0.1Mb哦) 源码:https://github.com/noear/weed3 源码:https://gitee.com/noear/weed3 缓存控制,是查询中的重点 框架提供的是控制服务。而非缓存服务本身...

刘之西东
14分钟前
7
0
Java Web 中对 ServletRequest 的一些非常规操作解决方案

1. 前言 ServletRequest 是我们搞 Java Web 经常接触的 Servlet Api 。有些时候我们要经常对其进行一些操作。这里列举一些经常的难点操作。 2. 提取 body 中的数据 前后端交互我们会在 body...

码农小胖哥
今天
32
0
《Dual Encoding U-Net for Retinal Vessel Segmentation》阅读笔记-MICCAI2019

作者:Bo Wang1,2, Shuang Qiu2, and Huiguang He1,2,3 目的:Retinal Vessel Segmentation is an essential step for the early diagnosis of eye-related diseases, such as diabetes and ......

JungleKing
今天
30
0
一次看懂 Https 证书认证

TLS > 传输层安全性协定 TLS(Transport Layer Security),及其前身安全套接层 SSL(Secure Sockets Layer)是一种安全协议,目的是为网际网路通信,提供安全及数据完整性保障。 如图,TLS...

极客收藏夹
今天
36
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部