本文是关于如何设置纱线上火花的资源调度。边肖觉得很实用,所以分享给大家学习。希望你看完这篇文章能有所收获。让我们和边肖一起看看。
最近发现一个问题,就是即使整个集群不忙的时候,一些节点也会充满纱上火花的任务。
而不是将任务平均分配给更多的节点。
我很困惑。
于是我开始全面调查。我没发现火花有什么问题。回头看纱。
原来我们的资源调度配置有问题。
财产
name yard . scheduler . capacity . resource-calculator/name
!-value org . Apache . Hadoop . yarn . util . resource . DefaultResourceCalculator/value-
value org . Apache . Hadoop . yard . util . resource . dominant resource calculator/value
描述
用于比较的资源计算器实现
调度程序中的资源。
默认情况下,默认资源计算器仅在以下情况下使用内存
支配资源计算者使用支配资源进行比较
内存、中央处理器等多维资源。
/描述
/property
这就是问题所在。默认调度器只关注节点的内存,根据内存分配任务。
因此,如果一个火花任务从纱线申请一个容器,纱线只注意几个点的记忆。
如果内存满足spark的要求,所有的容器都可以分配给一个节点,导致这个节点的负载很高。
例如,火花应用于10个1g内存的容器。然后纱发现两个节点各有5g空闲内存,但只有三个CPU空闲。
那么可能只有这两个节点会运行这10个容器,而不是将10个容器分配给10个节点。
然后,我们前面提到的情况出现了。内存足够,但cpu不足。结果,只有三个装有火花的容器在运转。另外两个要等。
这也符合我们之前看到的现象。
以上是如何设置纱线上火花的资源调度器。边肖认为,一些知识点可能会在我们的日常工作中看到或使用。我希望你能通过这篇文章学到更多的知识。更多详情请关注行业信息渠道。
内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/149956.html