自動化工作重試 - AWS Batch

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

自動化工作重試

您可將重試策略套用至任務和任務定義,讓失敗的任務自動重試。可能的失敗情況包括:

  • 容器任務有任何的非零結束代碼

  • Amazon EC2 實例故障或終止

  • 內部 AWS 服務錯誤或中斷

將工作提交至工作佇列並置於被視為嘗試的RUNNING狀態時。根據預設,每個任務會嘗試一次移至 SUCCEEDEDFAILED 任務狀態。但是,工作定義和工作提交工作流程都可用於指定嘗試 1 到 10 次之間的重試策略。如果evaluateOnExit已指定,則最多可包含 5 個重試策略。如果evaluateOnExit已指定,但沒有任何重試策略相符,則會重試工作。對於不符合要結束的工作,請新增因任何原因而結束的最終項目。例如,此evaluateOnExit物件有兩個項目,其中包含動作RETRY,最後一個動作為的項目EXIT

"evaluateOnExit": [ { "action": "RETRY", "onReason": "AGENT" }, { "action": "RETRY", "onStatusReason": "Task failed to start" }, { "action": "EXIT", "onReason": "*" } ]

在執行時間,AWS_BATCH_JOB_ATTEMPT 環境變數設為容器的對應任務嘗試次數。第一次嘗試會編號1,後續嘗試會以遞增順序排列 (例如,2、3、4)。

例如,假設工作嘗試因任何原因而失敗,且在重試組態中指定的嘗試次數大於AWS_BATCH_JOB_ATTEMPT數目。然後,將工作放回狀RUNNABLE態。如需詳細資訊,請參閱任務狀態

注意

取消或終止的工作不會重試。此外,因為無效的工作定義而失敗的工作也不會重試。

如需詳細資訊,請參閱重試策略建立單一節點工作定義 提交工作已停止工作錯誤碼