ジョブの状態 - AWS Batch

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

ジョブの状態

ジョブキューに AWS Batch ジョブを送信すると、ジョブは SUBMITTED状態になります。その後、以下の状態を経由して完了 (コード 0 で終了) または失敗 (0 以外のコードで終了) します。 AWS Batch ジョブの各状態は以下のとおりです。

SUBMITTED

キューに送信され、まだスケジューラによって評価されていないジョブです。スケジューラは、ジョブを評価し、他のジョブの正常な完了に依存するかどうか (未処理の依存関係があるかどうか) を判断します。依存関係がある場合、ジョブの状態は PENDING に移行します。依存関係がない場合、ジョブの状態は RUNNABLE に移行します。

PENDING

ジョブはキュー内にあり、別のジョブやリソースへの依存関係があるため、まだ実行できません。依存関係が満たされると、ジョブの状態は RUNNABLE に移行します。

RUNNABLE

ジョブはキュー内にあり、未処理の依存関係はありません。したがって、ホストにスケジューリングされる準備ができています。この状態のジョブは、ジョブのキューにマッピングされたコンピューティング環境のいずれかで十分なリソースが使用可能になり次第、開始されます。ただし、十分なリソースが使用不可の場合、この状態が無限に続くことがあります。

注記

ジョブが STARTING に進行しない場合は、トラブルーシューティングセクションのRUNNABLE 状態でジョブが止まるを参照してください。

STARTING

これらのジョブはホストにスケジュールされており、関連するコンテナ初期化操作が進行中です。コンテナイメージがプルされてコンテナが稼働状態になると、ジョブの状態は RUNNING に移行します。

イメージのプル期間、Amazon initContainer EKS の完了期間、Amazon ECS containerDependency解決期間は、STARTING 状態で発生します。ジョブのイメージをプルするのにかかる時間は、ジョブが STARTING 状態になるまでの時間と同等です。

例えば、ジョブのイメージをプルするのに 3 分かかる場合、ジョブは STARTING 状態になります。 initContainers が完了するまでに合計 10 分かかる場合、Amazon EKS ジョブは STARTING で 10 分間処理されます。Amazon containerDependencies ECS ジョブに Amazon ECS セットがある場合、すべてのコンテナ依存関係 (ランタイム) が解決されるまで、ジョブは STARTING になります。STARTINGはタイムアウトに含まれません。期間は RUNNING から始まります。詳細については、「ジョブの状態」を参照してください。

RUNNING

ジョブは、コンピューティング環境内の Amazon ECS コンテナインスタンスでコンテナジョブとして実行されています。ジョブのコンテナが終了すると、プロセス終了コードでジョブの正否が判定されます。終了コードの 0 は成功を示し、ゼロ以外の終了コードは失敗を示します。試行が失敗したジョブの再試行戦略に設定されている再試行回数が残っている場合は、ジョブの状態が RUNNABLE に移行します。詳細については、「ジョブの再試行の自動化」を参照してください。

注記

RUNNING ジョブのログは CloudWatch Logs で利用できます。ロググループは /aws/batch/job、ログストリーム名形式はfirst200CharsOfJobDefinitionName/default/ecs_task_idです。この形式は将来変わる可能性があります。

ジョブが RUNNINGステータスになったら、DescribeJobs APIを使用してログストリーム名をプログラムで取得できます。詳細については、「Amazon CloudWatch Logs ユーザーガイド」の「Word Logs に送信されたログデータの表示」を参照してください。 CloudWatch デフォルトでは、これらのログには有効期限はありません。ただし、保存期間を変更することは可能です。詳細については、「Amazon CloudWatch Logs ユーザーガイド」の「Word Logs でのログデータ保持の変更」を参照してください。 CloudWatch

SUCCEEDED

ジョブは、終了コード 0 で正常に完了しました。ジョブのSUCCEEDEDジョブ状態は、少なくとも 7 日間 AWS Batch に保持されます。

注記

SUCCEEDED ジョブのログは CloudWatch Logs で利用できます。ロググループは /aws/batch/job、ログストリーム名形式はfirst200CharsOfJobDefinitionName/default/ecs_task_idです。この形式は将来に変更される可能性があります。

ジョブが RUNNINGステータスになったら、DescribeJobs APIを使用してログストリーム名をプログラムで取得できます。詳細については、「Amazon CloudWatch Logs ユーザーガイド」の「Word Logs に送信されたログデータの表示」を参照してください。 CloudWatch デフォルトでは、これらのログの有効期限はありません。ただし、保存期間を変更することは可能です。詳細については、「Amazon CloudWatch Logs ユーザーガイド」の「Word Logs でのログデータ保持の変更」を参照してください。 CloudWatch

FAILED

ジョブのすべての使用可能な試行が失敗しました。FAILED のジョブの状態は、少なくとも7日間 AWS Batch に保存されます。

注記

FAILED ジョブのログは CloudWatch Logs で利用できます。ロググループは /aws/batch/job、ログストリーム名形式はfirst200CharsOfJobDefinitionName/default/ecs_task_idです。この形式は将来に変更される可能性があります。

ジョブが RUNNINGステータスになったら、DescribeJobs APIを使用してログストリームをプログラムで取得できます。詳細については、「Amazon CloudWatch Logs ユーザーガイド」の「Word Logs に送信されたログデータの表示」を参照してください。 CloudWatch デフォルトでは、これらのログには有効期限はありません。ただし、保存期間を変更することは可能です。詳細については、Amazon CloudWatch Logs ユーザーガイドの「Word Logs でのログデータ保持の変更 CloudWatch 」を参照してください。