yarn资源配置及使用

这篇具有很好参考价值的文章主要介绍了yarn资源配置及使用。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

1.简介

2.调度器

1.FIFO Scheduler

2.Capacity Scheduler

1.介绍

2.capacity调度器的特性

4.配置demo

3.Fair Scheduler

4.yarn调度器对比


1.简介

理想情况下,应用提交到yarn上立马就可以获得资源执行任务,但是现实情况资源往往是有限的,任务执行的先后及获得资源的多少,yarn给我们提供了多种调度器和配置策略供我们选择。默认的ui地址:http://ip:8088

2.调度器

yarn有三种调度器可以选择

  • FIFO Scheduler
  • Capacity Scheduler
  • Fair Scheduler

1.FIFO Scheduler

先进先出队列,先满足前面的任务,有多余的资源再满足下面的任务。

不适合共享集群,因为大任务可能占用全部的集群资源,导致其他任务阻塞

2.Capacity Scheduler

1.介绍

适合多个组织共享整个集群,每个组织分配专门的队列,然后每个队列分配一定的资源。

资源按百分比进行分配成多个队列,且队列资源可以设置弹性,在队列资源不够的时候可以使用其他队列资源,其他队列有任务的时候会在本队列任务执行完成释放资源还给其他队列。在队列内部,资源调度采用先进先出(FIFO)策略。

例如:下面A占总资源60%,B占总资源的40%,a1占A资源的40%,a2占A资源的60%,虽然有了这样的资源分配,但是并不是说A只能占60%的资源,因为资源可以设置弹性,如果A设置了最大资源是80%,那么A最多可以使用集群资源的80%。

root
------A[60%]
      |---A.a1[40%]
      |---A.a2[60%]
------B[40%]

2.capacity调度器的特性

层次化队列设计,子队列可以使用父队列的全部资源,更容易合理分配和限制资源的使用。

容量保证,每个队列可以设置一定的资源,但是又不会占有全部资源

弹性分配,空闲的资源可以分配给其他任何队列

操作性,yarn支持动态调整容量,在运行时可以增加队列,但不能删除队列,可以在运行时暂停队列,这样保证当前队列在执行过程中,集群不会接受其他任务

3.配置

yarn.scheduler.capacity.default.minimum-user-limit-percent=100 
yarn.scheduler.capacity.maximum-am-resource-percent=0.2 AM最多可使用的资源比例,目的是限制过多的app数量,默认值0.2
yarn.scheduler.capacity.maximum-applications=10000 同时等待和运行的最大任务数
yarn.scheduler.capacity.node-locality-delay=40 调度器在放松节点限制、改为匹配同一机架上的其他节点前尝试错过的调度机会数
yarn.scheduler.capacity.resource-calculator=org.apache.hadoop.yarn.util.resource.DefaultResourceCalculator 资源计算模式,默认使用DefaultResourceCalculator,还有一种是DominantResourceCalculator
yarn.scheduler.capacity.root.accessible-node-labels=*
yarn.scheduler.capacity.root.acl_administer_queue=*   哪些用户或用户组可以管理队列
yarn.scheduler.capacity.root.acl_submit_applications=* 哪些用户或用户组可以提交任务
yarn.scheduler.capacity.root.capacity=100 占用集群百分之多少比例的资源
yarn.scheduler.capacity.root.default.acl_administer_jobs=*
yarn.scheduler.capacity.root.default.acl_submit_applications=*
yarn.scheduler.capacity.root.default.capacity=100 占用root百分之多少比例的资源
yarn.scheduler.capacity.root.default.maximum-capacity=100 弹性设置,最大时占用多少比例资源
yarn.scheduler.capacity.root.default.state=RUNNING 队列状态,可以是RUNNING或STOPPED
yarn.scheduler.capacity.root.default.user-limit-factor=1 可以配置为允许单个用户获取更对资源的队列容量的倍数,值为浮点数,默认为1表示无论集群有多空闲,单个用户都不能占用超过队列配置的容量
yarn.scheduler.capacity.root.queues=default root包含哪些队列,这里只包含default队列,逗号分隔
yarn.scheduler.capacity.schedule-asynchronously.enable=true 是否开启异步调度
yarn.scheduler.capacity.schedule-asynchronously.maximum-threads=1 开启异步调度最大线程数
yarn.scheduler.capacity.schedule-asynchronously.scheduling-interval-ms=10 异步调度间隔

yarn.scheduler.capacity.root.default.default-application-priority=0 设置default队列默认优先级为0,优先级只在FIFO队列中有效
yarn.cluster.max-application-priority 全局最大优先级 设置的优先级超过这个值则使用该值作为任务的优先级

4.配置demo

分为3个队列default,A,B,资源各占50,40,10

yarn.scheduler.capacity.default.minimum-user-limit-percent=100
yarn.scheduler.capacity.maximum-am-resource-percent=0.2
yarn.scheduler.capacity.maximum-applications=10000
yarn.scheduler.capacity.node-locality-delay=40
yarn.scheduler.capacity.resource-calculator=org.apache.hadoop.yarn.util.resource.DefaultResourceCalculator
yarn.scheduler.capacity.root.accessible-node-labels=*
yarn.scheduler.capacity.root.acl_administer_queue=*
yarn.scheduler.capacity.root.acl_submit_applications=*
yarn.scheduler.capacity.root.capacity=100
yarn.scheduler.capacity.root.default.acl_administer_jobs=*
yarn.scheduler.capacity.root.default.acl_submit_applications=*
yarn.scheduler.capacity.root.default.capacity=50
yarn.scheduler.capacity.root.default.maximum-capacity=60
yarn.scheduler.capacity.root.default.state=RUNNING
yarn.scheduler.capacity.root.default.user-limit-factor=1
yarn.scheduler.capacity.root.queues=default,A,B

yarn.scheduler.capacity.root.A.acl_administer_jobs=*
yarn.scheduler.capacity.root.A.acl_submit_applications=*
yarn.scheduler.capacity.root.A.capacity=40
yarn.scheduler.capacity.root.A.maximum-capacity=50
yarn.scheduler.capacity.root.A.state=RUNNING
yarn.scheduler.capacity.root.A.user-limit-factor=1

yarn.scheduler.capacity.root.B.acl_administer_jobs=*
yarn.scheduler.capacity.root.B.acl_submit_applications=*
yarn.scheduler.capacity.root.B.capacity=10
yarn.scheduler.capacity.root.B.maximum-capacity=20
yarn.scheduler.capacity.root.B.state=RUNNING
yarn.scheduler.capacity.root.B.user-limit-factor=1


yarn.scheduler.capacity.schedule-asynchronously.enable=true
yarn.scheduler.capacity.schedule-asynchronously.maximum-threads=1
yarn.scheduler.capacity.schedule-asynchronously.scheduling-interval-ms=10

3.Fair Scheduler

公平调度,任务平均共享集群资源。

4.yarn调度器对比

yarn资源配置及使用文章来源地址https://www.toymoban.com/news/detail-401336.html

到了这里,关于yarn资源配置及使用的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • HTTP 错误 401.3 - Unauthorized 由于 Web 服务器上此资源的访问控制列表(ACL)配置或加密设置,您无权查看此目录或页面。

    用IIS 发布网站,不能访问且出现错误:HTTP 错误 401.3 - Unauthorized 由于Web服务器上此资源的访问控制列表(ACL)配置或加密设置。您无权查看此目录或页面 问题截图: 问题描述:HTTP 错误 401.3 - 未经授权:访问由于 ACL 对所请求资源的设置被拒绝。 原因分析:IIS匿名用户一般属于

    2024年02月05日
    浏览(52)
  • AWS使用 Client VPN 配置访问VPC 内网资源

    AWS Client VPN是一种基于客户端的托管VPN服务,让您能够安全地访问云上资源或借助云作为网络通道访问其他资源。AWS Client VPN具有专用的VPN客户端,也支持使用OpenVPN作为客户端。 注意:AWS Client VPN只能用于企业海外员工到附近的海外AWS区域的访问接入,不可用于跨境访问。跨

    2024年03月09日
    浏览(40)
  • 【windows系统配置检查工具】微软AccessChk系统资源检查:下载地址、命令、使用示例

    目录 一、简介: 1.1、概述: 1.2、下载地址(微软): 二、命令: 三、使用方法: 3.1、启动: 3.2、示例: 3.2.1、访问权限 3.1.2、用户特定权限 3.1.3、指定用户全部权限 3.1.4、指定用户对特定服务权限 3.1.5、查出服务的权限 3.1.6、显示无权访问指定注册表对象 3.1.7、秘钥安全

    2024年02月05日
    浏览(46)
  • 大数据 Yarn - 资源调度框架

    Hadoop主要是由三部分组成,除了前面我讲过的分布式文件系统HDFS、分布式计算框架MapReduce,还有一个是分布式集群资源调度框架Yarn。 但是Yarn并不是随Hadoop的推出一开始就有的,Yarn作为分布式集群的资源调度框架,它的出现伴随着Hadoop的发展,使Hadoop从一个单一的大数据计

    2024年02月02日
    浏览(35)
  • Hadoop YARN功能介绍--资源管理、调度任务

    YARN是一个通用 资源管理系统平台和调度平台 ,可为上层应用提供统一的资源管理和 调度。 他的引入为集群在利用率、资源统一管理和数据共享等方面带来了好处。 集群的硬件资源,和程序运行无关,比如内存、cup 资源如何分配 支持各种计算程序 ResourceManager(物理层面集群

    2024年02月07日
    浏览(40)
  • 深入理解 Hadoop (七)YARN资源管理和调度详解

    深入理解 Hadoop 系列文章已完结,总共七篇文章,直达链接: 深入理解 Hadoop (一)网络通信架构与源码浅析 深入理解 Hadoop (二)HDFS架构演进 深入理解 Hadoop (三)HDFS文件系统设计实现 深入理解 Hadoop (四)HDFS源码剖析 深入理解 Hadoop (五)YARN核心工作机制浅析 深入理解

    2024年01月22日
    浏览(44)
  • Nginx访问静态资源配置

    关于 alias和root配置的说明: 一般情况下,在nginx配置中的良好习惯是: 1)在location /中,即路径为“ / ”时, 配置root目录; 2)在location /path中,即路径包含指定内容,如“ localtion /imgs ”时, 配置alias虚拟目录。

    2024年02月09日
    浏览(42)
  • 十七、Docker之Cgroup资源配置

    其实在日常的工作中,我们一般都没有对docker容器进行资源限制,也就是默认情况下,可以使用宿主机的所有资源。但是如果你运行的服务有问题,就有可能对宿主机和宿主机上的其他业务造成影响,这还是有一定的风险。那么本文会给大家介绍一下如何对容器进行资源配置

    2024年02月16日
    浏览(48)
  • nginx配置代理多个前端资源

    log: 背景 两套不同的前端使用同一个后端服务,前端使用的Nginx代理的dist包 前端 vue+elementui 后端 Python+flask Nginx代理设置 1.进入Linux机器,whereis nginx 查看Nginx安装位置  2.进到Nginx配置文件下 3.vim nginx.conf  通过多个server管理多个端口前端资源代理 #前端一,端口8080访问就可以

    2023年04月09日
    浏览(41)
  • Hive调优之计算资源配置(一)

    计算资源的调整主要包括Yarn和MR。 1、Yarn配置说明   需要调整的Yarn参数均与CPU、内存等资源有关,核心配置参数如下 (1)yarn.nodemanager.resource.memory-mb   该参数的含义是,一个NodeManager节点分配给Container使用的内存。该参数的配置,取决于NodeManager所在节点的总内存容量

    2024年02月16日
    浏览(37)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包