我在集群模式下在YARN集群上运行Apache Spark应用程序(spark在此集群上有3个节点).
当应用程序运行时,Spark-UI显示2个执行程序(每个执行程序在不同的节点上运行)和驱动程序在第三个节点上运行.我希望应用程序使用更多的执行程序,所以我尝试将参数--num-executors添加到Spark-submit并将其设置为6.
spark-submit --driver-memory 3G --num-executors 6 --class main.Application --executor-memory 11G --master yarn-cluster myJar.jar <arg1> <arg2> <arg3> ...
但是,执行人数仍然是2.
在spark UI上我可以看到参数spark.executor.instances是6,正如我的意图,并且不知何故仍然只有2个执行器.
我甚至尝试从代码中设置此参数
sparkConf.set("spark.executor.instances", "6")
Run Code Online (Sandbox Code Playgroud)
再次,我可以看到参数设置为6,但仍然只有2个执行程序.
有谁知道为什么我不能增加执行人的数量?
yarn.nodemanager.resource.memory-mb在yarn-site.xml中是12g