Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache spark Spark Driver没有分配任何工作人员_Apache Spark_Sparkcore - Fatal编程技术网

Apache spark Spark Driver没有分配任何工作人员

Apache spark Spark Driver没有分配任何工作人员,apache-spark,sparkcore,Apache Spark,Sparkcore,我正在学习spark并尝试执行简单的wordcount应用程序。我正在使用 spark version 2.4.7-bin-hadoop.2.7 scala 2.12 java 8 具有1个主节点和2个工作节点的spark群集作为独立群集运行 spark配置是 spark.master spark://localhost:7077 spark.serializer org.apache.spark.serializer

我正在学习spark并尝试执行简单的wordcount应用程序。我正在使用

spark version 2.4.7-bin-hadoop.2.7
scala 2.12
java 8
具有1个主节点和2个工作节点的spark群集作为独立群集运行 spark配置是

 spark.master                     spark://localhost:7077
 spark.serializer                 org.apache.spark.serializer.KryoSerializer
 spark.driver.memory              500M
主启动脚本是
${SPARK\u HOME}/sbin/start master.sh

从机启动脚本是
${SPARK_HOME}/sbin/start-slave.shspark://localhost:7077  -C1米50米

我想在群集模式下启动驱动程序

${SPARK_HOME}/bin/spark-submit   --master spark://localhost:7077   --deploy-mode cluster   --driver-memory 500M  --driver-cores 8   --executor-memory 50M   --executor-cores 4  <absolut path to the jar file having code>
${SPARK\u HOME}/bin/SPARK submit--masterspark://localhost:7077   --部署模式群集--驱动程序内存500M--驱动程序核心8--执行器内存50M--执行器核心4

注意:已完成的驱动程序/应用程序是我必须杀死的

在阅读spark doc和查看博客后,我使用了上述参数

但在我提交作业驱动程序后,它不会运行。它总是将worker显示为none。我阅读了多个博客并查看了文档,以了解如何在集群模式下提交作业。我调整了spark submit的不同参数,但它没有执行。有趣的是,当我以客户机模式提交时,它是有效的


你能帮我解决这个问题吗?

看看你的工人和驱动程序的CPU和内存配置

您的应用程序需要500 Mb的RAM和一个CPU内核来运行驱动程序,需要50 Mb和一个内核来运行计算作业。因此,您需要550MB的RAM和两个内核。在群集模式下运行驱动程序时,这些资源由辅助程序提供。但是每个工人只允许使用一个CPU核心和50MB的RAM。因此,工人拥有的资源不足以执行您的驱动程序

您必须为Spark cluster分配工作所需的资源:

Worker Cores >= Driver Cores + Executor Cores
Worker Memory >= Driver Memory + Executor Memory
也许您必须增加驱动程序和执行程序的内存量。尝试使用1 Gb内存运行Worker,使用512 Mb的驱动程序
--驱动程序内存
--执行器内存
运行驱动程序