我已经设置了一个 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 个,前几个成功完成。所有其他人现在都在等待资源。我注意到所有可用内存都已分配给驱动程序,因此在驱动程序部分它们都在运行,但在运行应用程序部分它们都处于等待状态。
如何告诉 spark 独立首先将内存分配给 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