翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
ジョブの再試行の自動化
ジョブおよびジョブ定義に再試行戦略を適用し、失敗したジョブを自動的に再試行できます。次の障害シナリオが考えられます。
-
コンテナジョブのゼロ以外の終了コード
-
Amazon EC2 インスタンスの障害または終了
-
AWS サービスの内部エラーまたは停止
ジョブがジョブキューに送信され、RUNNING
試行と見なされる状態になったとき。デフォルトでは、各ジョブは 1 回の試行で SUCCEEDED
または FAILED
のいずれかの状態に移行します。ただし、ジョブ定義とジョブ送信ワークフローの両方を使用して、1 ~ 10 回の再試行戦略を指定できます。を指定するとevaluateOnExit、最大 5 つの再試行戦略を含めることができます。を指定してもevaluateOnExit、どの再試行方法も一致しない場合、ジョブは再試行されます。終了と一致しないジョブの場合は、何らかの理由で終了する最後のエントリを追加してください。たとえば、evaluateOnExit
このオブジェクトには、アクションがの 2RETRY
つのエントリと、EXIT
アクションがの最後のエントリがあります。
"evaluateOnExit": [ { "action": "RETRY", "onReason": "AGENT" }, { "action": "RETRY", "onReason": "Task failed to start" }, { "action": "EXIT", "onReason": "*" } ]
ランタイムに、AWS_BATCH_JOB_ATTEMPT
環境変数がコンテナの対応するジョブ試行番号に設定されます。最初の試行には番号が付けられ1
、それ以降の試行には昇順で表示されます (2、3、4 など)。
たとえば、ジョブの試行が何らかの理由で失敗し、AWS_BATCH_JOB_ATTEMPT
再試行設定で指定された試行回数がその数より多いとします。その後、RUNNABLE
ジョブはステートに戻されます。詳細については、「ジョブの状態」を参照してください。
キャンセルまたは終了したジョブは再試行されません。また、ジョブ定義が無効であるために失敗したジョブは再試行されません。
詳細については、「再試行戦略」、「シングルノードのジョブ定義を作成する 」、および「ジョブを送信する」を参照してください。