一、概述:

Yarn调度器有很多实现,如Fifo, Capacity和Fair schedulers等。与其同一时候,正在进行一些优化措施来提高调度器在不同负载和工作场景下的性能。每一个调度器都有自己的特性,调度决策受很多因素影响,如公平行、计算能力保证和资源的可靠性等。在部署一个调度算法到生产集群之前。评估一个调度算法是很重要的,不幸的是,评估一个调度算法是不那么easy的,评估一个真正的集群是很耗费时间和成本的。而且很难找到一个足够大的集群用来评測。

所以。一个能够模拟在这样的工作场景和负载下调度器的性能表现的模拟器是很实用的。

Yarn模拟器能够在一台机器上模拟一个大型的集群和大量的应用负载,模拟器对于那些希望深入研究yarn的人员来说是很宝贵的。由于它提供了一个工具:一个新的调度器原型、预測它的行为和性能表现。从而帮助他们高速创新。

Yarn模拟器通过在ResourceManager的jvm中模拟出NodeManagers和ApplicationMasters并处理和分发 NM/AM事件来去除网络因素的影响。为了trace调度器的行为和性能。在真正的调度器外层包裹了一个wrapper。

集群和应用负载能够从配置文件里载入,这些配置文件能够利用 Apache
Rumen 从 job history files中直接生成。

模拟器在运行会产生实时的指标。例如以下所看到的:

  1. 整个集群和每一个队列的资源利用率,能够用来配置集群和队列的容量;
  2. 具体的用模拟出来的时间记录的应用程序运行记录,能够用来分析、了解和验证程序的行为(个别job的周转时间、吞吐量、公平性和计算能力保证等);
  3. 调度算法的一些关键指标。如:每一个调度操作花费的时间(分配、处理等等),开发人员能够用来找出影响性能和可伸缩性的代码。

二、设计目标:

  1. 不用真正的集群和真正的job trace来检查调度器
  2. 能够模拟真实的负载

三、结构:

下图说明了模拟器的实现架构:

模拟器获取负载的描写叙述,并获取到集群和应用的信息。对每一个NM and AM,模拟器构造一个模拟器来模拟它们的执行,全部的NM and AM模拟器都在一个线程池中执行。模拟器共用RM,并在调度器外包裹一层wrapper,这个Scheduler
Wrapper能够跟踪Scheduler并产生一些日志。模拟器产生的日志能够用作以后的分析。

Yarn调度器负载模拟器——Yarn Scheduler Load Simulator (SLS)的更多相关文章

  1. YARN调度器(Scheduler)详解

    理想情况下,我们应用对Yarn资源的请求应该立刻得到满足,但现实情况资源往往是有限的,特别是在一个很繁忙的集群,一个应用资源的请求经常需要等待一段时间才能的到相应的资源.在Yarn中,负责给应用分配资 ...

  2. hadoop之 Yarn 调度器Scheduler详解

    概述 集群资源是非常有限的,在多用户.多任务环境下,需要有一个协调者,来保证在有限资源或业务约束下有序调度任务,YARN资源调度器就是这个协调者. YARN调度器有多种实现,自带的调度器为Capaci ...

  3. Yarn 调度器Scheduler详解

    理想情况下,我们应用对Yarn资源的请求应该立刻得到满足,但现实情况资源往往是有限的,特别是在一个很繁忙的集群,一个应用资源的请求经常需要等待一段时间才能的到相应的资源.在Yarn中,负责给应用分配资 ...

  4. Hadoop YARN 调度器(scheduler) —— 资源调度策略

    本文通过MetaWeblog自动发布,原文及更新链接:https://extendswind.top/posts/technical/hadoop_yarn_resource_scheduler 搜了 ...

  5. Hadoop Yarn调度器的选择和使用

    一.引言 Yarn在Hadoop的生态系统中担任了资源管理和任务调度的角色.在讨论其构造器之前先简单了解一下Yarn的架构. 上图是Yarn的基本架构,其中ResourceManager是整个架构的核 ...

  6. yarn调度器 FairScheduler 与 CapacityScheduler

    yarn FairScheduler 与 CapacityScheduler CapacityScheduler(根据计算能力调度) CapacityScheduler 允许多个组织共享整个集群, 每 ...

  7. 调度器&负载均衡调度算法整理

    一.Linux 调度器   Linux中进程调度器已经经过很多次改进了,目前核心调度器是在CFS(Completely Fair Scheduler),从2.6.23开始被作为默认调度器.用作者Ing ...

  8. Hadoop的三种调度器FIFO、Capacity Scheduler、Fair Scheduler(转载)

    目前Hadoop有三种比较流行的资源调度器:FIFO .Capacity Scheduler.Fair Scheduler.目前Hadoop2.7默认使用的是Capacity Scheduler容量调 ...

  9. 不可不知的资源管理调度器Hadoop Yarn

    Yarn(Yet Another Resource Negotiator)是一个资源调度平台,负责为运算程序如Spark.MapReduce分配资源和调度,不参与用户程序内部工作.同样是Master/ ...

随机推荐

  1. oracle11gR2下scott用户以及表的建立

    目录 oracle11gR2下scott用户以及表的建立 找到系统带的sql文件(utlsample.sql) 根据SQL的内容操作 新建用户并授权 scott登录 表操作 查询表(使用pl/sql) ...

  2. pat 1029 1029. 旧键盘(20)

    旧键盘上坏了几个键,于是在敲一段文字的时候,对应的字符就不会出现.现在给出应该输入的一段文字.以及实际被输入的文字,请你列出肯定坏掉的那些键. 输入格式: 输入在2行中分别给出应该输入的文字.以及实际 ...

  3. HDU-4825 Xor Sum,字典树好题!

    Xor Sum 一遍A了之后大呼一声好(keng)题!debug了两小时~~~~百度之星资格赛,可以. 题意:给你一个n个元素的数组,m次查询,每次输入一个数k要求从数组中找到一个数与k异或值最大,输 ...

  4. P3799 妖梦拼木棒 (组合数学)

    题目背景 上道题中,妖梦斩了一地的木棒,现在她想要将木棒拼起来. 题目描述 有n根木棒,现在从中选4根,想要组成一个正三角形,问有几种选法? 输入输出格式 输入格式: 第一行一个整数n 第二行n个整数 ...

  5. 转载:shell中awk printf的用法

    转载:http://www.linuxawk.com/jiaocheng/83.html 6. printf函数   打印输出时,可能需要指定字段间的空格数,从而把列排整齐.在print函数中使用制表 ...

  6. 使用反射获取类中的属性(可用于动态返回PO类的列,当做表格的表头)

    //利用反射取类中的属性字段 try { Class clazz = Class.forName("houji.bean.model.TaskModel"); Field[] fi ...

  7. STL中heap用法

    #include<cstdio> #include<iostream> #include<algorithm> using namespace std; ]={,, ...

  8. spring-基于注解的配置

    基于注解的配置 除了采用采用xml来配置bean之外,也可以采用注解的方式来定义,注册,加载bean. 注解的方式在spring中默认时不开启的,所以需要在xml文件中进行配置启用 注解的启动方式有下 ...

  9. PEP8 Python编码规范(转)

    一 代码编排1 缩进.4个空格的缩进(编辑器都可以完成此功能),不使用Tap,更不能混合使用Tap和空格.2 每行最大长度79,换行可以使用反斜杠,最好使用圆括号.换行点要在操作符的后边敲回车.3 类 ...

  10. HDU4850 构造一个长度为n的串,要求任意长度为4的子串不相同

    n<=50W.(使用26个字母) 构造方法:26个,最多构造出26^4种不同的串,长度最长是26^4+3,大于是输出"impossble",用四维数组判重.每次向前构造一位( ...