我使用以下设置在YARN群集(HDP 2.4)中使用Spark:
当我使用命令spark-submit --num-executors 30 --executor-cores 3 --executor-memory 7g --driver-cores 1 --driver-memory 1800m ...
运行我的spark应用程序时,YARN使用以下设置创建31个容器(每个执行程序进程一个+一个驱动程序进程):
我的问题:为什么spark-submit
参数--executor-cores 3
无效?
答案 0 :(得分:7)
好的,似乎与此处讨论的问题相同:yarn is not honouring yarn.nodemanager.resource.cpu-vcores解决方案对我也有用。
答案 1 :(得分:0)
使用Ambari时:
答案 2 :(得分:0)
用户界面可能会产生误导。如果在YARN中禁用了vcore强制,则每个容器仅假定一个内核,而实际上,如果您查看物理机的实际CPU使用率,则它可能正在使用所有内核。还要检查SparkUI上的核心使用情况,通常可以更好地了解实际的CPU使用情况。