Oozie spark-submit, `--driver-cores`参数不起作用。

问题描述 投票:0回答:1

我正在做火花提交从ozie。--driver-cores 选项不工作。例如,如果我提供了 --driver-cores 4,yarn仍然为驱动创建1个vCore容器。

Spark Opts in oozie:

<master>yarn-cluster</master>
<spark-opts>--queue testQueue --num-executors 4 --driver-cores 4 
                ...
            </spark-opts>

我也试过其他配置键,比如 --conf spark.driver.cores=4--conf spark.yarn.am.cores=4,甚至这些都没有工作。

任何指针将是有帮助的。谢谢你

java apache-spark hadoop yarn oozie
1个回答
0
投票

如果你指定了这个选项, 你的程序就会使用4个核心. 这是毫无疑问的。你看错了。

所以在资源管理器页面,如果你在默认设置中 DefaultResourceCalculator它只计算内存的使用量,而对于vCore的使用量,它总是显示1,因为它不计算。而对于vCore的使用量,它总是显示1,因为它不计算它。

如果你能把资源管理器类改为 DominantResourceCalculator那么它将显示实际的核心使用情况。

只需将此属性添加到yarn-site.xml中,并且 重启纱线

yarn.scheduler.capacity.resource-calculator: org.apache.hadoop.yarn.util.resource.DominantResourceCalculator

你也可以通过进入Spark历史服务器UI来验证这个理论。

在改变任何东西之前提交一个spark作业,在spark UI中找到该作业。进入 执行人 的部分,你会看到spark使用的所有执行器和它的 配置.

© www.soinside.com 2019 - 2024. All rights reserved.