割り当てと上限

このドキュメントでは、Cloud Composer に適用される割り当てとシステムの上限を示します。割り当ては、使用できるカウント可能な共有リソースの量を指定します。割り当ては、Cloud Composer などの Google Cloud サービスによって定義されます。システムの上限は、変更できない固定値です。

Google Cloud では、割り当てを使用して公平性を確保し、リソースの使用量と可用性の急増を抑えます。割り当ては、Google Cloud プロジェクトで使用できる Google Cloud リソースの量を制限します。割り当ては、ハードウェア、ソフトウェア、ネットワーク コンポーネントなど、さまざまなリソースタイプに適用されます。たとえば、割り当てによって、サービスへの API 呼び出しの数、プロジェクトで同時に使用されるロードバランサの数、作成可能なプロジェクトの数を制限できます。割り当てを適用することで、サービスの過負荷を防ぎ、Google Cloud ユーザーのコミュニティを保護します。割り当ては、自組織で使用している Google Cloud リソースの管理にも役立ちます。

Cloud Quotas システムは次のことを行います。

  • Google Cloud のプロダクトとサービスの消費量をモニタリングする
  • これらのリソースの消費量を制限する
  • 割り当て値の変更をリクエストする方法を提供する

ほとんどの場合、割り当ての許容量を超えるリソースを消費しようとすると、システムによってリソースへのアクセスがブロックされ、実行しようとしているタスクは失敗します。

割り当ては通常、Google Cloud プロジェクト レベルで適用されます。あるプロジェクトでリソースを使用しても、別のプロジェクトで使用可能な割り当てに影響することはありません。Google Cloud プロジェクト内では、すべてのアプリケーションと IP アドレスで割り当てが共有されます。

通常、割り当てを調整するには、Google Cloud コンソールを使用します。 詳細については、割り当ての調整をリクエストするをご覧ください。

Cloud Composer リソースにはシステムの上限もあります。システムの上限は変更できません。

Cloud Composer の割り当て

このセクションの割り当ては、Cloud Composer API と Cloud Composer API を利用するツールにのみ適用されます。

  • Google Cloud コンソールの Cloud Composer インターフェース
  • gcloud composer コマンドおよび gcloud beta composer コマンド
  • Cloud Composer REST API
  • Cloud Composer の RPC API
  • Terraform(Cloud Composer 環境でのオペレーション用)

このセクションの割り当ては、Airflow DAG で使用するサービスには適用されません。このようなサービスでは、独自の割り当てが使用されます。

Cloud Composer では、次のように API 割り当てが設定されています。

割り当て名 上限
プロジェクトあたりの読み込みリクエスト 1 分あたり 1,000 の割り当てユニット
プロジェクトあたりの書き込みリクエスト 1 日あたり 25,000 の割り当てユニット
プロジェクトあたりの書き込みリクエスト 1 分あたり 1,500 の割り当てユニット
プロジェクトあたりのスナップショット リクエストを保存する 1 日あたり 5,000 の割り当てユニット
プロジェクトあたりのスナップショット リクエストを保存する 1 分あたり 250 の割り当てユニット
プロジェクトあたり、環境あたりのスナップショット リクエストを保存する 1 日あたり 2,600 の割り当てユニット
プロジェクトあたりのスナップショット リクエストを読み込む 1 日あたり 2,500 の割り当てユニット
プロジェクトあたりのスナップショット リクエストを読み込む 1 分あたり 150 の割り当て
プロジェクトあたり、環境あたりのスナップショット リクエストを読み込む 1 日あたり 700 の割り当てユニット

Cloud Composer API 呼び出しは、割り当てユニットに以下の費用が発生します。

オペレーション 割り当て単位のコスト リクエストの種類
すべてのオペレーション 1 読み取り
environments.create 100 書き込み
environments.patch 100 書き込み
environments.delete 100 書き込み
environments.databaseFailover 100 書き込み
environments.restartWebServer 100 書き込み
environments.checkUpgrade 100 書き込み
environments.executeAirflowCommand 25 書き込み
environments.stopAirflowCommand 25 書き込み
environments.saveSnapshot 50 スナップショットを保存する
environments.loadSnapshot 50 スナップショットの読み込み

割り当ての計算例

  • 1 つの environments.create リクエストは、書き込みの割り当てから 100 割り当てユニットを消費します。

    書き込みリクエストには、次の 2 つの割り当てがあります。

    • プロジェクトごとの 1 日あたりの書き込みリクエスト数
    • プロジェクトごとの 1 分あたりの書き込みリクエスト数

    このオペレーションでは、各割り当てから 100 割り当てユニットを消費します。

    その後 environments.restartWebServer リクエストを実行すると、environments.restartWebServerenvironments.create リクエストと割り当てを共有するため、同じ割り当てからさらに 100 の割り当てユニットが消費されます。

  • 1 つの environments.saveSnapshot リクエストは、3 つの割り当てから 50 の割り当てユニットを消費します。

    • プロジェクトごとに 1 日あたりに行われたスナップショット リクエストを保存する
    • プロジェクトごとに 1 分あたりに行われたスナップショット リクエストを保存する
    • プロジェクト単位で、環境ごとに 1 日で行われたスナップショット リクエストを保存する

    これら 3 つの割り当ては、environments.saveSnapshot リクエストの最大数を制限します。制限する際の方法がそれぞれ異なります。

    プロジェクトごとに 1 日あたりに行われたスナップショット リクエストを保存する割り当ての上限は 2,500 割り当てユニットです。プロジェクトで 1 日あたり最大 50 件の environments.saveSnapshot リクエストを実行できます。

    プロジェクトごとに 1 分あたりに行われたスナップショット リクエストを保存する割り当て上限は 150 割り当てユニットです。1 分間に、プロジェクトで environments.saveSnapshot リクエストを実行できるのは最大で 3 件です。

    最後に、プロジェクト単位で、環境ごとに 1 日で行われたスナップショット リクエストを保存する割り当ての上限は 750 割り当てユニットです。1 つの環境で 1 日あたり最大 15 件の environments.saveSnapshot リクエストを実行できます。特定の環境ですべての割り当てユニットが消費された場合でも、プロジェクト内の他の環境に対して environments.saveSnapshot リクエストを実行できます。

他のサービスの割り当て

Cloud Composer は他の Google Cloud サービスを使用します。これらのサービスにはプロジェクト レベルの割り当てがあり、Cloud Composer を使用する場合に適用されます。

たとえば、Cloud Storage の割り当ては、プロジェクトの環境に関連付けられたすべてのバケットに適用されます。別の例として、環境のクラスタでは Google Kubernetes Engine が使用されるため、GKE の割り当ては、プロジェクト内の環境に関連付けられているすべてのクラスタに適用されます。

Cloud Composer で使用されるサービスの割り当て

Cloud Composer には以下のサービスが必要です。これらのサービスには独自の割り当て上限があります。

オプション サービスの割り当て

Google Cloud サービスで Airflow オペレーターを使用できます。DAG で使用するサービスには、そのサービスの割り当てが適用されます。