Spark Shell陷入YARN Accepted状态

时间:2015-09-18 18:34:33

标签: hadoop apache-spark yarn emr

在Yarn和EMR上运行Spark 1.3.1。当我运行spark-shell时,一切看起来都很正常,直到我开始看到INFO yarn.Client: Application report for application_1439330624449_1561 (state: ACCEPTED)之类的消息。这些消息是无休止地生成的,每秒一次。同时,我无法使用Spark shell。

我不明白为什么会这样。

3 个答案:

答案 0 :(得分:7)

从YARN看到(接近)无尽的接受消息一直是一个明确的信号,表明没有足够的集群资源可以为我的Spark作业/ shell分配。 YARN将继续尝试安排您的Spark应用程序,但如果在一定时间内没有足够的资源可用,它最终会超时。

您是否为spark-shell提供了覆盖所提供默认值的任何命令行选项?当我要求太多执行程序/核心/内存时,YARN将接受我的请求,但永远不会转换为正在运行的ApplicationMaster。

尝试运行没有选项的spark-shell(除了--master yarn之外),看看它是否超过了Accepted。

答案 1 :(得分:4)

意识到我在终端中遇到了几个流媒体工作,但我猜他们还在运行。我能够在UI中找到这些,显示YARN上所有正在运行的应用程序(我也无法执行Hive查询)。一旦我使用下面的命令杀死了作业,spark-shell就像往常一样开始。

yarn application -kill application_1428487296152_25597 

答案 2 :(得分:3)

我猜YARN没有足够的资源来运行工作。

请检查 https://www.cloudera.com/documentation/enterprise/5-3-x/topics/cdh_ig_yarn_tuning.html 用于计算您可以向YARN提供多少资源。

请检查由以下变量控制的核心数和RAM数量:

yarn.nodemanager.resource.cpu-vcores
yarn.nodemanager.resource.memory-mb

相关问题