未开启安全的Yarn如何提高同时并发的任务数

  使用配置, 其他常见问题
内容纲要

概要说明


集群内提交的一些Map/Reduced任务会放到yarn上面执行,但是默认情况下,可以使用的资源有限。当有许多任务提交的时候,大部分任务就会处于Accepted状态。当集群资源较为富足,此时可以考虑调整参数使得并发度提高。

详细说明


调整的参数主要是全局参数:
yarn.scheduler.capacity.maximum-am-resource-percent(集群中用于运行应用程序ApplicationMaster的资源比例上限,该参数通常用于限制处于活动状态的应用程序数),以及队列级别的yarn.scheduler.capacity.root.maximum-am-resource-percentyarn.scheduler.capacity.xxx.maximum-am-resource-percent.

默认情况下这些值都是0.1.

此时如果提交了过多的任务,那么在yarn的8088页面,具体的application信息页面就会看到如下信息:
file
此时需要等待启动AM Container,调整了这些参数后,AM master就会有更多资源去启动对应的AM Container,从而加快处理M/R任务的速度。

此时提交多个任务到yarn上情况如下:
file
内存和core的使用率都很低,并发只有一个任务处于running状态。

操作步骤


1、确认当前yarn配置的默认值:

去yarn的配置参数页面搜索maximum-am-resource-percent:

file

2、更改该值为0.4:

file

3、添加默认队列default的自定义参数:

默认提交的任务是运行在root.default队列中的,所以需要添加一个yarn.scheduler.capacity.root.default.maximum-am-resource-percent:
file

4、页面上配置服务,重启yarn:

file

5、提交任务验证:

file
此时可以看到四个任务都是出于running状态,并且内存和使用的核数都得到了显著的提升。

这篇文章对您有帮助吗?

平均评分 0 / 5. 次数: 0

尚无评价,您可以第一个评哦!

非常抱歉,这篇文章对您没有帮助.

烦请您告诉我们您的建议与意见,以便我们改进,谢谢您。