本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
自動化工作重試
您可將重試策略套用至任務和任務定義,讓失敗的任務自動重試。可能的失敗情況包括:
-
容器任務有任何的非零結束代碼
-
Amazon EC2 實例故障或終止
-
內部 AWS 服務錯誤或中斷
將工作提交至工作佇列並置於被視為嘗試的RUNNING
狀態時。根據預設,每個任務會嘗試一次移至 SUCCEEDED
或 FAILED
任務狀態。但是,工作定義和工作提交工作流程都可用於指定嘗試 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
態。如需詳細資訊,請參閱任務狀態。
注意
取消或終止的工作不會重試。此外,因為無效的工作定義而失敗的工作也不會重試。
如需詳細資訊,請參閱重試策略建立單一節點工作定義 、提交工作和已停止工作錯誤碼。