2015-06-24 38 views
0

我想运行一个简单的spark程序,但是我受到一些错误的限制。 我的环境是: CentOS的:6.6 的Java:1.7.0_51 斯卡拉:2.10.4 星火:火花1.4.0彬hadoop2.6 Mesos:0.22.1用Zookeeper在Mesos上运行一个简单的Spark脚本

所有安装和节点up.Now我有一个Mesos主和Mesos从属节点。我的火花性质如下:

spark.app.id   20150624-185838-2885789888-5050-1291-0005 
spark.app.name   Spark shell 
spark.driver.host 192.168.1.172 
spark.driver.memory 512m 
spark.driver.port 46428 
spark.executor.id driver 
spark.executor.memory 512m 
spark.executor.uri http://192.168.1.172:8080/spark-1.4.0-bin-hadoop2.6.tgz 
spark.externalBlockStore.folderName spark-91aafe3b-01a8-4c86-ac3b-999e278807c5 
spark.fileserver.uri http://192.168.1.172:51240 
spark.jars 
spark.master   mesos://zk://192.168.1.172:2181/mesos 
spark.mesos.coarse true 
spark.repl.class.uri http://192.168.1.172:51600 
spark.scheduler.mode FIFO 

现在,当我开始的火花,它涉及到斯卡拉提示符(斯卡拉>)。 之后,我得到以下错误:mesos任务1现在是TASK_FAILED,因故障太多而被列入黑名单mesos slave值的是Spark安装在其上 如何解决此问题。

回答

0

您可以检查mesos从站日志/任务信息以获取更多关于该任务失败原因的输出信息。你可以看看:5050。

可能无关的问题:你真的有饲养员:

spark.master mesos://zk://192.168.1.172:2181/mesos 

运行(如你所说,你只能有一个主站)?

+1

这只是不断重复TASK_FAILED..5050启动并运行。我想增加主人,所以我保持zk。 BTW。这是有900 MB的内存可用,增加到2GB后,它看起来工作。所以可能的记忆是问题!谢谢.. – user3374023

1

只有900MB和spark.driver.memory = 512m,您将能够启动调度程序/ REPL,但您没有足够的内存用于spark.executor.memory = 512m,因此任何任务都将失败。要么增加虚拟机内存大小,要么减少驱动程序/执行程序内存需求将有助于避开这些内存限制。

+0

你的意思是512m提到的也适用于工人。这意味着900-512 = 388米,可能是原因? – user3374023

+0

driver.memory适用于驱动程序正在运行的位置,但除了您的任务所需的资源外,还需要executor.memory(也是512m)。执行者是执行任务的执行者。如果您在相同的单个从节点上运行驱动程序和执行程序/任务,则会导致内存不足。 – Adam