2016-08-18 25 views
4

我尝试在YARN-CLUSTER(2节点)运行星火应用但似乎那些2个节点的不平衡,因为只有1个节点工作但另一个不是。运行火花提交(只有1个节点工作)

我的脚本:

spark-submit --class org.apache.spark.examples.SparkPi 
--master yarn-cluster --deploy-mode cluster --num-executors 2 
--driver-memory 1G 
--executor-memory 1G 
--executor-cores 2 spark-examples-1.6.1-hadoop2.6.0.jar 1000 

我看到的是工作的我的节点之一,但另一个不是,所以这是不平衡的:

enter image description here 注:左边是namenode,并datanode是正确的...

任何想法?

回答

0

您正在运行作业yarn-cluster模式,在集群模式星火驱动程序运行在ApplicationMaster群集主机

尝试在yarn-client模式下运行它,在客户端模式星火驱动程序上运行,其中作业提交主机,这样你就可以看到控制台输出

spark-submit --verbose --class org.apache.spark.examples.SparkPi \ 
--master yarn \ 
--deploy-mode client \ 
--num-executors 2 \ 
--driver-memory 1G \ 
--executor-memory 1G \ 
--executor-cores 2 spark-examples-1.6.1-hadoop2.6.0.jar 10 
+0

但是我想在群集模式下运行它 – anunixercoder

+0

如果你只是想看到输出,你可以在纱线日志中使用“纱线日志-applicationId <纱线应用程序ID>”来看它。您还可以修改SparkPi并将输出存储在HDFS或某些数据库中。 – banjara

+0

如何找到applicationId? – anunixercoder

0

您可以检查哪个节点上执行从SPARK UI的推出

星火UI给人节点的详细信息,其中执行AR Ë推出

执行人是Spark的UI选项卡

enter image description here

1

的全部数据集可以是本地的节点之一,因此,它可能会试图兑现数据局部性。 你可以试试下面的配置同时发动火花提交

--conf “spark.locality.wait.node = 0”

同样为我工作。

相关问题