Yarn资源调度器的选择
Posted 一木呈
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Yarn资源调度器的选择相关的知识,希望对你有一定的参考价值。
现象:集群提交任务,运行极其缓慢,通过WEB监控页面,计算资源没有充分利用
分析:查看资源调度策略采用计算能力调度器Capacity Sheduler
运行的Mapreduce Job列表:
可以看到并行任务大部分处于accepted状态,提交队列是default,而资源调度器采用的是容量调度。
调度器的关键配置:
关键参数:
yarn.scheduler.capacity.maximum-applications
最多可同时处于等待和运行状态的应用程序数目
yarn.scheduler.capacity.maximum-am-resource-percent
集群中可用于运行application master的资源比例上限,这通常用于限制并发运行的应用程序数目。
yarn.scheduler.capacity.root.queues
root队列的所有子队列
yarn.scheduler.capacity.root.default.capacity
default队列的资源容量
yarn.scheduler.capacity.root.default.user-limit-factor
每个用户可使用的资源限制
yarn.scheduler.capacity.root.default.maximum-capacity
Default队列可使用的资源上限.
yarn.scheduler.capacity.root.default.state
Default队列的状态,可以是RUNNING或者STOPPED.
yarn.scheduler.capacity.root.default.acl_submit_application
限制哪些用户可向default队列中提交应用程序.
yarn.scheduler.capacity.root.default.acl_administer_queue
限制哪些用户可管理default队列中的应用程序,“*”表示任意用户
yarn.scheduler.capacity.node-locality-delay
调度器尝试调度一个rack-local container之前,最多跳过的调度机会,通常而言,该值被设置成集群中机架数目,默认情况下为-1,表示不启用该功能。
下面是队列分配的资源状态:
在单个队列只能有一个任务在运行,其他任务在等待。
对于独立使用的集群,我为公平调度更为合理;容量调度适合多租户大型集群。
修改集群调度器
调整之后的资源使用状况:
调整后资源 好像得到了充分利用。。。
以上是关于Yarn资源调度器的选择的主要内容,如果未能解决你的问题,请参考以下文章