9

我刚刚发现使用 Amazon 的 Elastic Map Reduce,我可以指定一个步骤来选择三个 ActionOnFailure 选项之一:

  • TERMINATE_JOB_FLOW
  • CANCEL_AND_WAIT
  • 继续

TERMINATE_JOB_FLOW 是默认值且显而易见 - 它会在步骤失败时关闭整个集群。

CANCEL_AND_WAIT 和 CONTINUE 有什么区别?在我看来,两者都将保持集群运行,并在添加时简单地继续下一步。

4

1 回答 1

13

假设您已经启动了一个集群并添加了以下 3 个步骤:

  • 第1步
  • 第2步
  • 第三步

现在,如果Step1ActionOnFailure 为CANCEL_AND_WAIT,那么如果 失败Step1,它将取消所有剩余的步骤,集群将进入一个Waiting状态。而且我猜如果您使用--stay-alive选项启动集群,那么这是默认行为。

如果Step1ActionOnFailure 为CONTINUE,则在 失败的情况下Step1,它将继续执行Step2

如果Step1ActionOnFailure 为TERMINATE_JOB_FLOW,那么在失败的情况下Step1,它会按照您提到的那样关闭集群。

于 2013-03-08T19:45:12.113 回答