在向 Amazon EMR 集群提交工作时取消步骤 - Amazon EMR
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

在向 Amazon EMR 集群提交工作时取消步骤

向集群提交工作时,您可以从 Amazon Web Services Management Console Amazon CLI、或 Amazon EMR 取消待处理和正在运行的步骤。API。

Console
使用控制台取消步骤
  1. 登录 Amazon Web Services Management Console,然后通过 https://console.aws.amazon.com/em r 打开亚马逊EMR控制台。

  2. EC2在左侧导航窗格的 “开” 下EMR,选择 Clusters,然后选择要更新的集群。

  3. 在集群详细信息页面的 Steps(步骤)选项卡上,选中要取消的步骤旁边的复选框。选择 Actions(操作)下拉菜单,然后选择 Cancel steps(取消步骤)。

  4. Cancel the step(取消步骤)对话框中,选择取消步骤并等待退出,或者取消步骤并强制退出。然后,选择 Confirm(确认)

  5. Steps(步骤)表中的步骤状态更改为 CANCELLED

CLI
要使用取消订阅 Amazon CLI
  • 使用 aws emr cancel-steps 命令指定集群和要取消的步骤。以下示例演示了用于取消两个步骤的 Amazon CLI 命令。

    aws emr cancel-steps --cluster-id j-2QUAXXXXXXXXX \ --step-ids s-3M8DXXXXXXXXX s-3M8DXXXXXXXXX \ --step-cancellation-option SEND_INTERRUPT

在 Amazon EMR 版本 5.28.0 中,您可以选择以下两个取消选项之一作为取消步骤时的StepCancellationOption参数。

  • SEND_INTERRUPT– 这是默认选项。收到步骤取消请求后,EMR会向步骤发送SIGTERM信号。在步骤逻辑中添加SIGTERM信号处理程序以捕获此信号并终止后代步骤进程,或者等待它们完成。

  • TERMINATE_PROCESS— 选择此选项后,EMR会向该步骤及其所有后代进程发送信号,该SIGKILL信号会立即终止它们。

取消步骤的注意事项
  • 取消正在运行的步骤或待处理步骤将从活动步骤计数中删除该步骤。

  • 假设没有更改 stepConcurrencyLevel,取消正在运行的步骤并不允许待处理步骤开始运行。

  • 取消正在运行的步骤不会触发步骤 ActionOnFailure

  • 对于 EMR 5.32.0 及更高版本,SEND_INTERRUPT StepCancellationOption向步骤子进程发送SIGTERM信号。您应该注意此信号并正常进行清除和关闭。TERMINATE_PROCESS StepCancellationOption 向步骤子进程及其所有后代进程发送 SIGKILL 信号;但是,异步进程不受影响。