View a markdown version of this page

容量が原因でジョブが RUNNABLE でスタックする - AWS Batch

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

容量が原因でジョブが RUNNABLE でスタックする

インスタンス容量不足

接続されているすべてのコンピューティング環境の容量不足エラー。リクエストされると、 AWS Batch は容量不足エラーが発生している Amazon EC2 インスタンスを検出します。ジョブを手動でキャンセルすると、後続のジョブがキューの先頭に移動できるようになります。

  • ジョブがスタックしているときの statusReason メッセージ: CAPACITY:INSUFFICIENT_INSTANCE_CAPACITY - Service cannot fulfill the capacity requested for instance type [instanceTypeName]

  • jobStateTimeLimitActions に使用される reason: CAPACITY:INSUFFICIENT_INSTANCE_CAPACITY

  • statusReason によってジョブがキャンセルされた後の メッセージjobStateTimeLimitActions: Canceled by JobStateTimeLimit action due to reason: CAPACITY:INSUFFICIENT_INSTANCE_CAPACITY

メモ:

  1. AWS Batch サービスロールには、この検出が機能するためのautoscaling:DescribeScalingActivitiesアクセス許可が必要です。のサービスにリンクされたロールの使用 AWS Batch のサービスにリンクされたロール (SLR) または AWS マネージドポリシー: AWSBatchServiceRole ポリシー の管理ポリシーを使用する場合、アクセス許可ポリシーが更新されるためアクションは必要ありません。

  2. SLR または管理ポリシーを使用する場合は、autoscaling:DescribeScalingActivitiesec2:DescribeSpotFleetRequestHistory のアクセス許可を追加して、RUNNABLE のときにブロックされたジョブキューイベントと更新されたジョブステータスを受信できるようにする必要があります。さらに、 AWS Batch では、ジョブキューで設定されていても jobStateTimeLimitActions パラメータを使用して cancellation アクションを実行するため、これらのアクセス許可が必要です。

  3. マルチノード並列 (MNP) ジョブの場合、アタッチされた高優先度の Amazon EC2 コンピューティング環境で insufficient capacity エラーが発生すると、優先度の低いコンピューティング環境でこのエラーが発生してもキューがブロックされます。