六、YARN资源管理与调度策略

6.1、YARN资源管理

MapReduce任务/资源流程


由5.1章节我们可知,当把yarn.scheduler.capacity.maximum-am-resource-percent参数调整为0.2 时,我们可以同时运行2个任务,此时Application Master最大资源为5120M(每个任务启动的AppMaster资源为2048M)

当参数调整为0.3时,可同时运行4个任务

6.2、YARN调度策略

Yarn的资源调度器是可配置的,Yarn定义了一套接口规范(接口ResourceScheduler),用户可以按照自己的需求实现这个接口中的方法。

Yarn自身自带了三种调度器,分别是:FIFO Scheduler、Capacity Scheduler和Fair Scheduler。



Yarn的资源调度器默认使用Capacity Scheduler,但是默认只有一个root.default队列。


调整Yarn资源队列

  1. 添加dev,prod 队列,删除default队列;
  2. 修改default队列配置为dev队列,并修改其capacity为40 , maxium-capacity 为60 ;
  3. 复制dev队列属性,并修改为prod队列,修改其capacity为60 , maxium-capacity 为80 ;
  4. 重启YARN集群;
cd /opt/hadoop-3.1.4/etc/hadoop
vi capacity-scheduler.xml

修改如下:









修改完后,配置prod,在dev末尾添加:

<!-- config prod queue --><property><name>yarn.scheduler.capacity.root.prod.capacity</name><value>60</value><description>Default queue target capacity.</description></property><property><name>yarn.scheduler.capacity.root.prod.user-limit-factor</name><value>1</value><description>Default queue user limit a percentage from 0.0 to 1.0.</description></property><property><name>yarn.scheduler.capacity.root.prod.maximum-capacity</name><value>80</value><description>The maximum capacity of the default queue. </description></property><property><name>yarn.scheduler.capacity.root.prod.state</name><value>RUNNING</value><description>The state of the default queue. State can be one of RUNNING or STOPPED.</description></property><property><name>yarn.scheduler.capacity.root.prod.acl_submit_applications</name><value>*</value><description>The ACL of who can submit jobs to the default queue.</description></property><property><name>yarn.scheduler.capacity.root.prod.acl_administer_queue</name><value>*</value><description>The ACL of who can administer jobs on the default queue.</description></property><property><name>yarn.scheduler.capacity.root.prod.acl_application_max_priority</name><value>*</value><description>The ACL of who can submit applications with configured priority.For e.g, [user={name} group={name} max_priority={priority} default_priority={priority}]</description></property><property><name>yarn.scheduler.capacity.root.prod.maximum-application-lifetime</name><value>-1</value><description>Maximum lifetime of an application which is submitted to a queuein seconds. Any value less than or equal to zero will be considered asdisabled.This will be a hard time limit for all applications in thisqueue. If positive value is configured then any application submittedto this queue will be killed after exceeds the configured lifetime.User can also specify lifetime per application basis inapplication submission context. But user lifetime will beoverridden if it exceeds queue maximum lifetime. It is point-in-timeconfiguration.Note : Configuring too low value will result in killing applicationsooner. This feature is applicable only for leaf queue.</description></property><property><name>yarn.scheduler.capacity.root.prod.default-application-lifetime</name><value>-1</value><description>Default lifetime of an application which is submitted to a queuein seconds. Any value less than or equal to zero will be considered asdisabled.If the user has not submitted application with lifetime value then thisvalue will be taken. It is point-in-time configuration.Note : Default lifetime can't exceed maximum lifetime. This feature isapplicable only for leaf queue.</description></property>

配置prod完后,保存、退出,拷贝到node1、node2、node3下:

scp capacity-scheduler.xml node1:/opt/hadoop-3.1.4/etc/hadoop/
scp capacity-scheduler.xml node2:/opt/hadoop-3.1.4/etc/hadoop/
scp capacity-scheduler.xml node3:/opt/hadoop-3.1.4/etc/hadoop/

最后,重启下集群(进入sbin目录)

./stop-yarn.sh
./start-yarn.sh

启动成功

最后,我们查看下网页的情况,浏览器网址输入:

master:8088

OK,我们配置成功了!

测试
接下来,我们来测试一下:

我们提交到dev队列

在网页上我们可以看到任务已经提交了

在网页上,我们可以看占用资源查看:

提交到prod队列

通过提交到dev和prod ,我们可以得出:不管是dev还是prod queue都不会占用Max_Capacity

学习笔记Hadoop(十二)—— Hadoop基础操作(4)—— YARN资源管理与调度策略相关推荐

  1. Mr.J-- jQuery学习笔记(三十二)--jQuery属性操作源码封装

    扫码看专栏 jQuery的优点 jquery是JavaScript库,能够极大地简化JavaScript编程,能够更方便的处理DOM操作和进行Ajax交互 1.轻量级 JQuery非常轻巧 2.强大的 ...

  2. python学习笔记(十二)python操作redis

    1.python要操作redis 首先需要安装redis模块,然后导入才能使用 安装:pip install redis 导入:import redis 2.连接redis r = redis.Red ...

  3. OpenCV学习笔记(十二):边缘检测:Canny(),Sobel(),Laplace(),Scharr滤波器

    OpenCV学习笔记(十二):边缘检测:Canny(),Sobel(),Laplace(),Scharr滤波器 1)滤波:边缘检测的算法主要是基于图像强度的一阶和二阶导数,但导数通常对噪声很敏感,因此 ...

  4. Windows保护模式学习笔记(十二)—— 控制寄存器

    Windows保护模式学习笔记(十二)-- 控制寄存器 控制寄存器 Cr0寄存器 Cr2寄存器 Cr4寄存器 控制寄存器 描述: 控制寄存器有五个,分别是:Cr0 Cr1 Cr2 Cr3 Cr4 Cr ...

  5. 汇编入门学习笔记 (十二)—— int指令、port

    疯狂的暑假学习之  汇编入门学习笔记 (十二)--  int指令.port 參考: <汇编语言> 王爽 第13.14章 一.int指令 1. int指令引发的中断 int n指令,相当于引 ...

  6. tensorflow学习笔记(三十二):conv2d_transpose (解卷积)

    tensorflow学习笔记(三十二):conv2d_transpose ("解卷积") deconv解卷积,实际是叫做conv_transpose, conv_transpose ...

  7. QT学习笔记(十二):透明窗体设置

    QT学习笔记(十二):透明窗体设置 创建 My_Widget 类 基类为QWidget , My_Widget.cpp 源文件中添加代码 #include "widget.h" # ...

  8. MATLAB学习笔记(十二)

    MATLAB学习笔记(十二) 一.数据插值 1.1 数据插值的计算机制 1.2 数据插值的matlab函数 二.曲线拟合 2.1 曲线拟合原理 2.2 曲线拟合的实现方法 三.数据插值与曲线拟合比较 ...

  9. Windows Workflow HOL学习笔记(十二):创建状态基工作流

    W indows Workflow HOL学习笔记(十二):创建状态基工作流 本文内容来自Microsoft Hands-on Labs for Windows Workflow Foundation ...

  10. 模电学习笔记(十二)——跨阻放大器

    模电学习笔记(十二) 跨阻放大器 跨组运算放大器是将电流信号转换成为电压信号,电流到电压增益基于反馈电阻. 设计目标: 输入 输出 带宽 电源 0A 100uA 0V 7V 20kHz 15V -15 ...

最新文章

  1. 玩转算法面试-第四章查找值之leetcod相关笔记
  2. EL表达式(Exprission language)
  3. 整理UWP中网络和设备信息获取的帮助类,需要的拿走。
  4. Unity Hub和Unity安装教程
  5. uva 11137 Ingenuous Cubrency
  6. Python穷举法连接WiFi
  7. CSDN数据库泄露!那些网站够安全吗?
  8. VTK-Wight 之vtkIncrementalOctreePointLocator简介
  9. java爬取今日头条_今日头条抓取街拍图片数据集
  10. idea卸载不干净怎么办_Office卸载不干净怎么办?我想你一定需要Mac卸载Office的图文教程!...
  11. html 实现格子效果图,css 实现的九宫格图片展示
  12. 企业微信寄件审批教程
  13. Python深度学习十大核心算法!
  14. 串列配置(Tandem)在Kintex-7互联TRD中的实现
  15. python经典小游戏贪吃蛇_Python开发贪吃蛇小游戏
  16. Qt扫盲- QTcpSocket 理论总结
  17. 陈皓,酷壳coolshell.cn博主
  18. 基于SECS协议开发的简明教程(7)
  19. 7月编程排行榜来啦!这次有何新变化?
  20. 广发信用卡分期计算方法,不懂的来看看吧!

热门文章

  1. 调用远程摄像头进行人脸识别_人脸识别技术植入手机APP
  2. AssertionError: nn criterions don‘t compute the gradient w.r.t. targets
  3. 推荐系统笔记:基于非负矩阵分解的协同过滤
  4. 线性代数笔记:概率矩阵分解 Probabilistic Matrix Factorization (PMF)
  5. 文巾解题 1646. 获取生成数组中的最大值
  6. 文巾解题3. 无重复字符的最长子串
  7. linux实战应用案例: 如何在 Linux 安装 MySQL 8 数据库?(图文详细教程)
  8. R语言应用实战-OLS模型算法原理及应用示例
  9. MATLAB可视化实战系列(二十五)-MATLAB基于直方图的图像去雾
  10. python画图的模块_python强大的绘图模块matplotlib示例讲解