取消步驟 - Amazon EMR

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

取消步驟

您可以從 AWS Management Console、或 Amazon EMR API 取消擱置中 AWS CLI和執行中的步驟。

注意

我們已重新設計 Amazon EMR 主控台,可讓您更輕鬆地使用。請參閱 Amazon EMR 控制台 以了解新舊主控台體驗之間的差異。

New console
使用新主控台取消步驟
  1. 登入並開啟 Amazon EMR 主控台 AWS Management Console,網址為 https://console.aws.amazon.com/emr

  2. 在左側導覽窗格中的 EMR on EC2 下,選擇叢集,然後選取您要更新的叢集。

  3. 在叢集詳細資訊頁面的步驟索引標籤中,選取您要取消之步驟旁邊的核取方塊。選擇動作下拉式功能表,然後選取取消步驟

  4. 取消步驟對話方塊中,選擇取消步驟並等待其結束,或取消步驟並強制其結束。然後選擇 Confirm (確認)。

  5. 步驟資料表中的步驟狀態會變為 CANCELLED

Old console
使用舊主控台取消步驟
  1. 導覽至新的 Amazon EMR 主控台,然後從側邊導覽選取切換至舊主控台。如需有關切換至舊主控台時預期情況的詳細資訊,請參閱使用舊主控台

  2. Cluster Details (叢集詳細資料) 頁面上,展開 Steps (步驟) 區段。

  3. 對於要取消的每個步驟,請從 Steps (步驟) 清單選取步驟。然後選擇 Cancel step (取消步驟)

  4. Cancel step (取消步驟) 對話方塊,保留預設選項 Cancel the step and wait for it to exit (取消步驟並等待它結束)。如果您要立即結束步驟,不等候任何處理序完成,請選擇 Cancel the step and force it to exit (取消步驟並強制它結束)

  5. 選擇 Cancel step (取消步驟)

CLI
若要使用取消 AWS CLI
  • 使用 aws emr cancel-steps 命令,指定要取消的叢集和步驟。以下範例示範取消兩個步驟的 AWS 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 訊號傳送至步驟子程序及其所有子代程序;不過,非同步程序不受影響。