サービス割り当てモデル

このページでは、Google Cloud のサービスの割り当て管理モデルについて説明します。この割り当てモデルを理解すると、Service Usage の割り当て管理機能を使用する場合に役立ちます。全般的な情報については、割り当ての操作をご覧ください。

サービスのコンシューマーとは、サービスの使用が課金されるプロジェクト、フォルダ、または組織のことです。

指標と制限

割り当て指標は、サービスによって定義されるエンティティであり、サービスの消費をカウントします。割り当て指標では、仮想マシンインスタンスなどの具体的なエンティティをカウントしたり、特定のタイプの API リクエストなどの一時的なエンティティをカウントしたりできます。

割り当て上限は、サービスによって定義されるエンティティであり、ユーザーに対して制限される割り当て指標の消費量を指定します。割り当て指標には、複数の割り当て上限を設定できます。割り当て上限には、レート上限と割り当て上限の 2 種類があります。レート上限は、1 分や 1 日など、指定された時間が経過するとリセットされます。数量に基づく割り当ては、時間が経過してもリセットされません。代わりに、リソースが使用されなくなった場合、明示的に解放する必要があります。

割り当てオーバーライド

各割り当て上限には、サービス オーナーによって設定された、すべてのコンシューマーに対するデフォルト値があります。このデフォルト値は、割り当てのオーバーライドで変更できます。

サービス所有者は、特定のコンシューマーに割り当てオーバーライドを適用して、そのコンシューマーのデフォルト値を置き換えることができます。これはプロデューサーオーバーライドと呼ばれます。たとえば、サービス所有者はプロデューサーオーバーライドを適用して、契約の一部として特定の顧客の割り当てを増やすことができます。

コンシューマーは、プロジェクト、フォルダ、または組織に割り当てのオーバーライドを適用して、サービスの使用量を制限できます。これはコンシューマー オーバーライドと呼ばれます。たとえば、予算の超過を防ぐために、コスト管理の手段として、コンシューマーが自分のプロジェクトにオーバーライドを適用できます。

使用するサービスにコンシューマー オーバーライドを適用するには、Service Usage API を使用します。

自分のサービスのコンシューマーにプロデューサーオーバーライドを適用するには、Service Consumer Management API を使用します。

割り当て制限の計算

次の式は、コンシューマーの割り当て制限を計算します。

if adminOverride is present,
  upperBound = adminOverride
else if producerOverride is present,
  upperBound = producerOverride
else
  upperBound = defaultLimit

if consumerOverride is present,
  quotaLimit = min(consumerOverride, upperBound)
else
  quotaLimit = upperBound

リージョン割り当てとゾーン割り当て

割り当て制限はグローバルにカウントされる場合と、各CloudリージョンまたはCloudゾーンで個別にカウントされる場合があります。

たとえば、1 分間あたり 100 件の API リクエストまでとするグローバル割り当て上限があるとします。us-central1 リージョンで 80 件の API リクエストが行われ、asia-northeast3 で 70 件のリクエストが作成された場合、150 件のリクエストはグローバルの上限にカウントされ、一部のリクエストは拒否されます。ただし、リージョンの上限の場合、各リージョンで 1 分あたり 100 リクエストという個別の割り当てが存在します。us-central1 の 80 件のリクエストは、そのリージョン内でのリクエスト数の上限である 100 件を超えておらず、asia-northeast3 内の 70 件のリクエストは、そのリージョン内でのリクエスト数の上限である 100 件を超えないため、リクエストは拒否されません。

割り当てのオーバーライドは、すべてのリージョンに一括で適用することも、特定のリージョンだけに適用することもできます。特定のリージョンにオーバーライドが適用されても、他のリージョンの有効な上限は影響を受けません。

同様に、割り当てによるオーバーライドはすべてのゾーンに一括で適用することも、特定のゾーンに適用することもできます。特定のゾーンにオーバーライドが適用されても、他のゾーンの有効な上限は影響を受けません。