【发布时间】:2015-03-30 02:49:01
【问题描述】:
我正在使用 HDFS 以 Yarn-cluster 模式运行的 Hadoop 集群上以链的形式运行几个 Spark Streaming 作业(一个在前一个的输出文件夹中查找输入)。
job 1 --> reads from folder A outputs to folder A'
job 2 --> reads from folder A'outputs to folder B
job 3 --> reads from folder B outputs to folder C
...
当独立运行作业时,它们工作得很好。
但是当他们都在等待输入并且我在文件夹 A 中放置一个文件时,job1 将其状态从运行更改为接受失败。
使用本地 FS 时无法重现此错误,只有在集群上运行(使用 HDFS)时才能重现此错误
Client: Application report for application_1422006251277_0123 (state: FAILED)
INFO Client:
client token: N/A
diagnostics: Application application_1422006251277_0123 failed 2 times due to AM Container for appattempt_1422006251277_0123_000002 exited with exitCode: 15 due to: Exception from container-launch.
Container id: container_1422006251277_0123_02_000001
Exit code: 15
【问题讨论】:
-
你能在集群上运行job1,现在把2和3注释掉吗?这行得通吗?
-
是的,作业在集群上单独运行。
-
会不会是因为饥饿,即工作 2-4 也尝试消耗工作 1 的输入?也许一些代码会有所启发?
标签: hadoop hdfs apache-spark spark-streaming