所需的执行程序内存超过此群集的最大阈值

时间:2019-06-20 13:02:23

标签: apache-spark hadoop

我正在8节点集群上运行Spark,并将yarn作为资源管理器。我每个节点有64GB内存,并将执行程序内存设置为25GB,但是出现错误: Required executor memory (25600MB) is above the max threshold (16500 MB) of this cluster! Please check the values of 'yarn.scheduler.maximum-allocation-mb' and/or 'yarn.nodemanager.resource.memory-mb'. 我将yarn.scheduler.maximum-allocation-mbyarn.nodemanager.resource.memory-mb设置为25600,但没有任何变化。 enter image description here

1 个答案:

答案 0 :(得分:2)

执行器内存只是内存的堆部分。您仍然必须运行JVM,并在容器内分配内存的非堆部分,并使其适合YARN。请参阅桑迪·里扎(Sandy Ryza)的How-to: Tune Your Apache Spark Jobs (Part 2)中的图片。 enter image description here

如果您要使用25 GB的执行器内存,建议将yarn.scheduler.maximum-allocation-mbyarn.nodemanager.resource.memory-mb提高到42GB之类的水平。