杀死 oozie 协调器并没有杀死后续的 spark 作业

Killing oozie coordinator is not killing the subsequent spark job

当我试图终止从 oozie 作业调用的 spark 作业时,它没有被终止。 它只是显示工作流作业已被终止。 然后我通过这个命令检查了工作流日志

oozie job --ozie oozieurl -log workflowID

它在日志中显示了这个错误。

org.apache.oozie.command.CommandException: E0800: Action it is not running its in [KILLED] state, action [0006849-180819131048313-oozie-oozi-W@MysparkApplication]
        at org.apache.oozie.command.wf.CompletedActionXCommand.eagerVerifyPrecondition(CompletedActionXCommand.java:92)
        at org.apache.oozie.command.XCommand.call(XCommand.java:258)
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        at org.apache.oozie.service.CallableQueueService$CallableWrapper.run(CallableQueueService.java:178)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at java.lang.Thread.run(Thread.java:748)

我是做错了什么,还是我们无法终止从 oozie 协调器在 yarn 中启动的 spark 应用程序的限制。

Oozie 协调器以特定的时间表运行 oozie 工作流。当协调器调用 oozie 工作流时,它会在集群上提交 spark 作业。

这里的协调器和oozie工作流只做作业的跟踪,即作业是运行还是被杀死等

现在,如果您终止 oozie 工作流或协调器,它会确保不会调用工作流中的下一步。但是它不会触及现有的 spark 作业。这是设计使然。

如果要终止 spark 作业,您需要使用以下命令在集群中手动终止 spark 作业

yarn application -kill <applicationId>