割り当てと上限

Batch は、割り当てとシステム上限を使用して、公平なリソース割り当てを維持し、サービスの過負荷を防ぎ、リソースの使用を管理します。

割り当てとシステム上限は類似していますが、次の点で異なります。

  • 割り当てにはデフォルト値がありますが、通常は調整をリクエストできます。
  • システムの上限は固定値で、変更できません。

Batch ジョブは Compute Engine リソースで実行されるため、Batch にも Compute Engine の割り当てと上限が適用されます。バッチジョブが他の Google Cloud サービスも使用している場合は、それらのサービスの割り当ても適用されます。割り当てまたは上限を超えようとすると、エラーが返されます。詳細については、Cloud Quotas のドキュメントをご覧ください。

Batch には、他の Google Cloud サービスの割り当てと上限に加えて、次の割り当てと上限があり、これらは変更できません。

レートに基づく割り当て

バッチ リクエストには次の上限が適用されます。これらの上限は Google Cloud コンソールなどで割り当てとして表示されますが、引き上げることはできません。

上限 値
1 リージョン 1 分あたりのエージェント リクエスト数 30,000
1 分、1 リージョンあたりの変更リクエスト数 6,000
1 リージョン 1 分あたりの読み取りリクエスト数 15,000

ジョブの上限

Batch ジョブには次の上限が適用されます。

上限 値
タスクグループあたりのタスク数 100,000
ジョブあたりの並列タスク数 5,000
シングルゾーン ジョブあたりの同時実行 VM 数1 2,000
マルチゾーン ジョブあたりの同時実行 VM 数1 4,000
ジョブ定義のサイズ2 1 MB
自動障害が発生するまでの待機時間(QUEUED ジョブ状態の期間) 2 日
自動障害が発生するまでの実行時間(RUNNING ジョブ状態の期間)3 14 日

1 ここでのシングルゾーン ジョブとマルチゾーン ジョブという用語は、ジョブの VM に対して許可されているゾーン数を表します。ジョブのロケーションのゾーンとは異なる場合があります。詳細については、Batch のロケーションをご覧ください。

2 たとえば、jobs.create メソッドへの REST リクエストまたは gcloud CLI --config ファイルのサイズ。この制限を回避するには、タスクを複数のジョブに分割します。たとえば、依存関係のあるジョブをスケジュールする方法(プレビュー版)をご覧ください。

3 この上限には次の例外があります。

  • ジョブの provisioningModel フィールドを FLEX_START に設定すると、自動失敗までの最大実行時間は 7 日になります。
  • ジョブが A3 シリーズのマシンタイプを使用し、reservation フィールドを NO_RESERVATION に設定し、provisioningModel が未定義または STANDARD に設定されている場合、自動失敗までの最大実行時間は 7 日になります。
  • 必要に応じて、タイムアウトを使用して、ジョブの自動失敗までの最大実行時間を短縮できます。