Spark执行器核心未在纱线资源管理器中显示

Non*_*one 1 hadoop-yarn apache-spark

纱线资源管理器未显示spark应用程序的总核心数.让我们说如果提交一个300个执行程序和执行程序核心为3的火花作业.那么火花作业所用的核心总数是900,但在纱线资源管理器中它只显示为300.

那么这只是一个显示错误还是Yarn没有看到600个内核的其余部分?

环境:HDP2.2调度程序:容量调度程序Spark:1.4.1

ban*_*ara 5

yarn.scheduler.capacity.resource计算器= org.apache.hadoop.yarn.util.resource.DominantResourceCalculator

capacity-scheduler.xml

YARN运行的容器多于分配的核心,因为默认使用DefaultResourceCalculator.它只考虑记忆.

public int computeAvailableContainers(Resource available, Resource required) {
// Only consider memory
return available.getMemory() / required.getMemory();
  }
Run Code Online (Sandbox Code Playgroud)

使用DominantResourceCalculator,它使用cpu和内存.

你可以在这里阅读更多关于DominantResourceCalculator的内容.