我已经设置了一个Spark独立群集,我可以使用spark-submit提交作业:
spark-submit \
--class blah.blah.MyClass \
--master spark://myaddress:6066 \
--executor-memory 8G \
--deploy-mode cluster \
--total-executor-cores 12 \
/path/to/jar/myjar.jar
问题是,当我同时发送多个作业时,比如说一次超过20个,前几个成功完成。所有其他人现在都在等待资源。我注意到所有可用内存已经转移到驱动程序,因此在驱动程序部分它们都在运行,但在正在运行的应用程序部分它们都处于WAITING状态。
如何首先告诉spark stand首先将内存分配给WAITING执行程序而不是SUBMITTED驱动程序?
谢谢
以下是我的spark-defaults.conf的摘录
spark.master spark://address:7077
spark.eventLog.enabled true
spark.eventLog.dir /path/tmp/sparkEventLog
spark.driver.memory 5g
spark.local.dir /path/tmp
spark.ui.port xxx