割り当ての操作

Google Cloud では、割り当てを使用して、使用できる特定の共有 Google Cloud リソースの量を制限しています。各割り当ては、特定のサービスへの API 呼び出し、プロジェクトで同時に使用されるロードバランサの数、作成可能なプロジェクトの数など、特定のカウント可能なリソースを表します。

このドキュメントでは、既存の割り当て上限を確認して変更する方法、割り当ての引き上げをリクエストする方法、割り当て使用量のモニタリング方法など、プロジェクトの割り当てを扱う方法について説明します。

その他の API 使用状況の指標を確認する方法については、API 使用状況のモニタリングをご覧ください。

使ってみる

Google Cloud を初めて使用する場合は、アカウントを作成して、実際のシナリオでの Google プロダクトのパフォーマンスを評価してください。新規のお客様には、ワークロードの実行、テスト、デプロイができる無料クレジット $300 分を差し上げます。

無料で開始

割り当てについて

割り当てのモニタリングと管理を行う方法について学習する前に、Google Cloud の割り当てシステムの仕組みの基礎を理解しておくと役立ちます。このセクションでは、割り当てタイプ、割り当て上限、割り当ての増加リクエストなど、割り当てに関する主なコンセプトについて説明します。

割り当てが適用される理由

割り当てが適用される理由は次のようにさまざまです。

  • 予期しない使用量の急増とサービスの過負荷状態を回避することにより、Google Cloud ユーザーのコミュニティを保護する。
  • リソースの管理を支援する。たとえば、アプリケーションの開発とテストの際に、サービスの使用量に独自の上限を設定することで、高コストなリソースの使用による予期しない課金を防ぐことができます。

割り当てのタイプ

割り当てには次の 2 つのカテゴリがあります。

  • レート割り当ては、通常、API またはサービスに対するリクエストの数を制限するために使用されます。レート割り当ては、サービスに固有の時間間隔(1 日あたりの API リクエスト数など)の後にリセットされます。
  • 数量に基づく割り当ては、一定期間内にプロジェクトで使用される VM の数などの使用率がないリソースの使用を制限するために使用されます。数量に基づく割り当ては、時間が経過してもリセットされません。リソースを使用する必要がなくなったら、GKE クラスタを削除するなどして、リソースを明示的に解放する必要があります。

これらのカテゴリ内では、一部の割り当てはグローバルに対応しており、Google Cloud のあらゆる場所でのリソースの使用に適用されます。一方、その他の割り当てはリージョンまたはゾーンに限定され、特定の Google Cloud リージョン内のリソースの使用(両方の割り当てタイプ)、またはゾーン内のリソースの使用(数量に基づく割り当てのみ)に適用されます。たとえば、Google Cloud リージョンごとに作成できる Compute Engine VM インスタンスの数には個別の上限があります。

割り当てはプロジェクトごとに適用されます。ただし、作成できるプロジェクトの数はユーザー アカウントと請求先アカウントごとに適用されます。

割り当て情報の表示

Google Cloud の割り当てを表示して管理するには、いくつかの方法があります。

これらの方法の詳細については、以降で説明します。各プロダクトやサービスにも独自の割り当てと上限のページが用意されており、対象サービスの割り当てに関する固有の情報が記載されています(例: GKE の割り当てと上限のページ)。

割り当て上限について

多くのサービスには一部のリソースについてのデフォルトの割り当てが存在しますが、アプリケーションに適用される割り当て上限は、ユーザー、プロジェクトまたは組織に固有のものです。たとえば、無料トライアル アカウントを使用してプラットフォームを試用する場合は、一部のリソースの割り当てが、課金されているアカウントでの最小の割り当てと比較しても非常に低い場合があります。プロジェクトで課金を有効にすると、ほとんどのサービスの割り当てが増加します。Google Cloud の利用期間が長期化した場合にも、割り当てが増加する可能性があります。

プロジェクトで、特定のリソースが割り当てでの許容範囲を超えて必要な場合は、特定のサービスに対してより多くの割り当てをリクエストできます。割り当ての増加リクエストの仕組みについて詳しくは、割り当ての増加リクエストについてをご覧ください。特に高コストなリソースを使用するアプリケーションの開発やテストを行う際に使用量上限を設定する必要がある場合は、特定の割り当てについて独自の上限を追加することもできます。

一部の割り当ては、特定のユーザー向けには無制限です。この場合、そのリソースの使用量に上限はありません。

最後に、割り当てが少ない場合、デフォルト値から増やすことはできません。たとえば、使用量が増加するとアンチパターンを構成する場合や、リソースが非常に限られている場合などです。これらは通常、Cloud Functions でのこちらの例のように、関連するサービスの割り当てと上限のページに記載されています。

割り当ての不足

ほとんどの場合、割り当てが足りなくなった場合、アプリケーションのデプロイ、新しいプロジェクトの作成、API の呼び出しなどを実行しようとしているタスクは失敗し、割り当てエラーが発生します。リソースを解放するか(数量に基づく割り当ての場合)、期間をリセットするか(レートの割り当ての場合)、割り当ての増加をリクエストして付与されるまで、タスクは引き続き失敗します。

割り当てエラーがどのように表示されるかは、Google Cloud とのやり取りに使用するツールまたはクライアントによって異なります。割り当てエラーで、割り当てエラーの詳細を確認できます。

割り当てエラーを回避するには、モニタリングを設定して、割り当て上限に近づいたときに通知されるようにします。割り当てのモニタリングの詳細については、以降で記載する割り当て指標のモニタリングとアラートの設定をご覧ください。

割り当ての増加リクエストについて

ほとんどの割り当ての増加リクエストは、リソースの可用性、Google Cloud の使用時間などの要素を含む厳密な基準に基づいて評価されます。特定の基準を満たしていないリクエストは拒否されます。自動システムによる審査の評価基準は、すべてのお客様にとっての公平性を保証し、プロセスを操作しようとする試みを阻止するために開示されていません。場合によっては、割り当ての増加リクエストは審査担当者にエスカレーションされます。審査担当者は厳格な基準に従いますが、お客様独自の状況を考慮する場合もあります。

一部の割り当ての増加については、事前にお支払いを求められる場合があります。たとえば、有料のクラウド サービスを使用する追加のプロジェクトをリクエストした場合は、支払いを求められる可能性があります。このお支払いは、その後に発生するすべての請求に適用される可能性があり、アカウントにクレジットとして表示されます。

割り当ての増加リクエストは、Cloud カスタマーケアで処理されます(請求以外)。リクエストは通常、2~3 営業日以内に処理されます。リクエストが受領されるとメールが届きます。不明な点がある場合や、リクエストに関して追加の情報を送信することを必要とされる場合(増加リクエストが緊急を要する場合など)は、このメールに返信できます。次に、リクエストが処理された後に、割り当ての増加が承認されたか拒否されたかを通知するメールが届きます。このメールには発効日が記載されています(該当する場合)。

割り当ての増加をリクエストする方法については、割り当て上限の引き上げをリクエストするをご覧ください。

権限

プロジェクトの割り当てを表示する権限

Google Cloud Console でプロジェクトの割り当てを表示する、またはプログラムでプロジェクトの割り当てにアクセスするには、次の IAM 権限を付与されていることが必要です。

  • resourcemanager.projects.get
  • resourcemanager.folders.getフォルダ全体の割り当てを表示する場合)
  • resourcemanager.organizations.get組織全体の割り当てを表示する場合)
  • serviceusage.quotas.get

これらの権限がデフォルトで含まれているロールは、IAM 権限のリファレンスで確認できます。

プロジェクトの割り当てを変更する権限

プロジェクト、フォルダまたは組織レベルで割り当てを変更するには、次の権限を付与されていることが必要です。

この権限は、オーナー、編集者、割り当て管理者、Service Usage 管理者のロールにデフォルトで含まれています。

Cloud Console で割り当てを表示する

現在の割り当て上限は、Google Cloud Console の 2 つの異なるエリアで確認できます。

  • [割り当て] ページ。プロジェクトのすべての割り当て使用量と上限が一覧表示されます。
  • Cloud Console API ダッシュボード。特定の API の割り当て情報を一覧表示します。リソースの使用状況の推移に関する情報などが表示されます。

プロジェクトのすべての割り当てを表示する

プロジェクト内のすべてのリソースの割り当て使用量と上限を表示するには:

  1. Google Cloud Console で、[割り当て] ページに移動します。

    [割り当て] に移動

    このリストには、各サービスで使用できる割り当ての種類ごとに 1 つの項目が含まれています。

  2. 結果を並べ替え、フィルタリングすることで、必要な情報のみを表示できます。

    • 特定のプロパティを表示するには、 [表をフィルタリング] をクリックします。
    • リストをアルファベット順に並べ替えるには、[サービス]、[上限名]、[割り当てステータス] または [詳細] の各見出しの上にポインタを置きます。
    • デフォルトでは、過去 7 日間のピーク使用量に基づいて、最も多く使用されている割り当てが最初に表示されるようにリストがソートされます。これにより、超過するおそれがある上限を確認できます。使用頻度の低い順に表示するには、[割り当てステータス] の矢印を切り替えます。
    • 特定の割り当ての現在の使用量を確認するには、[詳細] 列で [すべての割り当て] をクリックします。

[割り当て] ページに表示される割り当て使用量の指標は次のように計算されます。

  • レート割り当て:
    • 1 日あたりのレートに基づく割り当ての場合、表示される数字は、現在の 24 時間の期間におけるその時点までの合計使用量を表します。
    • 1 分または 100 秒あたりの割り当ての場合、表示される数値は、過去 24 時間の平均使用量を表します。
  • 数量に基づく割り当て: ここに示されている数字は、プロジェクトで現在使用されているリソースの量(ロードバランサの数など)を表します。

特定のサービスの割り当ての詳細については、サービスごとのドキュメントをご覧ください。たとえば、Compute Engine の割り当てについては、リソースの割り当てをご覧ください。

API 固有の割り当てを表示する

使用量の推移など、特定の API の詳細な割り当て情報を表示するには、Cloud Console の API の割り当てページにアクセスします。API に応じて、これらの上限には、1 日あたりのリクエスト数、1 分あたりのリクエスト数、ユーザーごとの 1 分あたりのリクエスト数などがあります。一部の API では、プロジェクトで課金を有効にするまで、非常に低い上限が設定されています。

特定の API の現在の上限は、Cloud Console の 2 つの異なるエリアで確認できます。

  • すべてのプロジェクトの割り当てを表示するセクションで説明されている Cloud Console の [割り当て] ページ

  • Cloud Console の [API とサービス] の [ダッシュボード] ページ。このページでプロジェクトを選択し、API 名をクリックしてから [割り当て] をクリックします。[割り当て] ページに、API の割り当て名が表示されます。各割り当てを展開すると、詳細な使用状況の推移と現在の上限を確認できます。デフォルトでは、表示される制限は Google が課す上限です。使用量の上限を設定するセクションで説明されているように、使用量の上限を設定できます。Google から上限が課されていない割り当てについては、上限は [無制限] として表示されます。

    一部の割り当ては、API 固有の割り当てページに表示されません。たとえば、Compute Engine API に対するリクエストには API 固有の割り当てページがありますが、Compute Engine のコンピューティング リソースの使用量(数量に基づく割り当て)は含まれません。また、複数のロケーションでサービスを使用している場合、API 固有の割り当てページには、リージョンまたはゾーンの割り当ての上限と使用量は表示されません。ロケーションでフィルタリングできるプロジェクトの割り当て使用量の全一覧については、プロジェクトの [割り当て] ページをご覧ください。

作成できるプロジェクトの数を表示する

各ユーザー アカウント(サービス アカウントを含む)と請求先アカウントには、作成できるプロジェクトの数に上限があります。割り当ての中に残っているプロジェクト数が 30 個未満の場合は、[新しいプロジェクト] ページに、割り当てに残っているプロジェクトの数が表示されます。この割り当ての管理の詳細については、プロジェクトの割り当ての管理プロジェクトの割り当てリクエストをご覧ください。

Cloud Console を使用した割り当ての管理

リソースの使用状況に応じて、プロジェクトの割り当て上限に対して引き上げまたは引き下げの調整を行うことができます。このセクションでは、指定されている割り当て上限を変更する方法について説明します。割り当て上限を確認するには、[詳細] 列で [すべての割り当て] をクリックします。

割り当てのフィルタリング

特定のプロパティで割り当てのリストをフィルタリングするには:

  1. Google Cloud Console で [割り当て] ページに移動します。

    [割り当て] に移動

  2. [表をフィルタリング] をクリックして、特定のプロパティで割り当てをクエリします。

割り当て上限の引き上げをリクエストする

ほとんどの割り当ての増加は、以下の手順を使用して Google Cloud Console で直接リクエストできます。次の例外のいずれかが発生することがあります。

  • 場合によっては、Google Cloud Console によって、上限の引き上げをリクエストするための別のフォームにリダイレクトされます。フォームを送信すると、Google Cloud がメールでリクエストを承認します。
  • 一部の割り当ては、Google Cloud Console で更新できません。Console で割り当てを変更できない場合は、Cloud カスタマーケアに割り当ての増加をリクエストしてください。課金チームは割り当ての上限の引き上げを処理しません。

割り当ての増加のプロセスの詳細については、割り当ての増加リクエストについてをご覧ください。

Google Cloud Console から割り当ての上限の引き上げをリクエストするには:

  1. [割り当て] ページに移動します。

    [割り当て] に移動

  2. 次のように、変更する割り当てを選択します。

    1. 変更する割り当ての行で [すべての割り当て量] をクリックします。[QUOTA PANEL] で、[グローバル] チェックボックスをオンにします。
    2. また、[割り当てステータス] 列に [ 警告] が表示されている場合は、それをクリックします。[QUOTA PANEL] で、変更する割り当ての横にあるチェックボックスをクリックします。
  3. メインの [割り当て] ページで、[割り当てを編集] をクリックします。

  4. 右側に表示されるリクエスト フォームに次のように入力します。

    1. [新しい上限] フィールドに、リクエストする割り当ての引き上げを入力します。
    2. [リクエストの説明] フィールドに、リクエストの理由を入力します。今後の拡張プラン、リージョンまたはゾーンの範囲、追加の要件や依存関係などの情報を含めておくと便利です。
    3. [次へ] をクリックします。
    4. [連絡先情報] パネルの [電話] フィールドに電話番号を入力します。
    5. [完了] をクリックします。
  5. [リクエストを送信] をクリックします。

Google Cloud Console でリクエストを送信すると、Google Cloud からリクエストの承認メールが届きます。サポートが必要な場合は、このメールに返信してください。Cloud カスタマーケアでリクエストが処理され(通常は 2~3 営業日以内)、割り当ての増加が承認されたかどうかが通知されます。このメールには発効日が記載されています(該当する場合)。

使用量の上限を設定する

割り当ての上限を独自に設定することで、特定のリソースの使用量を制限できます。たとえば、無料枠の使用上限を超過した使用量について課金されるのを回避するために、1 日あたりの上限の設定をリクエストできます。割り当ての上限を設定するには、API 固有の割り当てページで上限を編集します。

  1. Google Cloud Console で、[割り当て] ページに移動します。

    [割り当て] に移動

  2. [表をフィルタリング] をクリックして、特定のプロパティで割り当てをクエリします。

  3. [すべての割り当て] をクリックして、上限を設定する使用量を参照します。

  4. 編集するプロパティを選択するにはチェックボックスをオンにします。

  5. [割り当てを編集] をクリックします。

  6. リクエスト フォームのすべての項目を入力します。

  7. 変更後の割り当ての上限を入力します。必要に応じて説明も入力します。

  8. [完了] をクリックします。

  9. [リクエストを送信] をクリックします。

このページに表示されていない割り当ての上限を設定する場合、または指定されている最大量よりも高い上限を設定する場合は、割り当ての増加をリクエストするの手順に沿って上限を編集してください。

gcloud コマンドライン ツールを使用した割り当ての管理(アルファ版)

gcloud コマンドライン ツールを使用して、現在の割り当てを取得し、該当する場合には、プロジェクトフォルダおよび組織レベルなど、一部の Google Cloud APIs とサービスの割り当て使用量の上限を設定できます。

このアプローチを使用するには、まず alpha コマンド コンポーネントを含む最新バージョンの Cloud SDK をインストール初期化している必要があります。Cloud Shell を使用して Google Cloud とインタラクションしている場合は、Cloud SDK がインストールされます。

特定のサービスについてプロジェクトへの割り当てを表示するには、次のコマンドを実行して、実際のプロジェクト ID とサービス名に置き換えます。

gcloud alpha services quota list \
    --service=SERVICE_NAME.googleapis.com \
    --consumer=projects/PROJECT_ID

組織の同じサービスの割り当ての詳細を表示するには:

gcloud alpha services quota list \
    --service=SERVICE_NAME.googleapis.com \
    --consumer=organizations/ORG_ID

gcloud quota コマンドとフラグの全一覧については、Cloud SDK リファレンスをご覧ください。

さらに、一部のサービスでは、gcloud quota のみでなく、割り当てとリソース使用量に関する情報に独自のコマンドラインからアクセスすることもできます。たとえば、Compute Engine では、gcloud compute を使用して割り当て情報にアクセスできます。

Service Usage API を使用した割り当ての管理

Service Usage API を使用すると、現在の割り当てを取得し、一部の Google Cloud APIs とサービスの割り当て使用量の上限を設定できます。Service Usage の詳細については、以下をご覧ください。

Service Usage API を使用して割り当ての増加をリクエストすることはできません。これを行う場合は、Cloud Console を使用する必要があります。

割り当て指標のモニタリングとアラートの設定

Cloud Monitoring API と UI を使用すると、割り当ての使用量、上限、エラーを詳細にモニタリングできます。これらの指標を使用してカスタム ダッシュボードとアラートを作成して、割り当ての使用量の推移をモニタリングし、割り当ての上限に近づいたときなどにアラートを受信できます。

Cloud Monitoring はさまざまな指標をサポートしています。これらの指標をフィルタや集計と組み合わせることで、割り当ての使用量についてより有用な分析情報を表示できます。たとえば、数量に基づく割り当ての使用状況の指標を Cloud TPU 名の quota_metric フィルタと組み合わせることができます。

Metrics Explorer を使用してモニタリング対象リソースの指標を表示する手順は次のとおりです。

  1. Google Cloud Console で、[Monitoring] ページに移動します。

    [Monitoring] に移動

  2. [Monitoring] のナビゲーション パネルで、 [Metrics Explorer] をクリックします。
  3. [Metric] タブが選択されていることを確認します。
  4. [Find resource type and metric] フィールドで、リソースと指標をメニューから選択するか、リソースと指標の名前を入力します。次の情報を使用して、フィールドに入力します。
    1. リソースとして、[Consumer Quota] を選択または入力します。
    2. 指標として、モニタリングする割り当ての種類に応じて、[Allocation quota usage] または [Rate quota usage] を選択または入力します。
  5. データの表示方法を変更するには、[Filter]、[Group By]、[Aggregator] の各メニューを使用します。たとえば、リソースラベルや指標ラベルごとにグループ化できます。詳しくは、指標の選択をご覧ください。

同様に、割り当て上限または超過エラーを表示するには、まずリソースタイプとして [Consumer Quota] を選択し、次に [Quota limit] または [Quota exceeded error] を選択します。

目的の割り当て使用量の情報が見つかったら、Cloud Monitoring を使用してカスタム ダッシュボードとアラートを作成し、モニタリングによって堅牢なアプリケーションを維持できます。詳細については、次のドキュメントをご覧ください。

割り当てに固有の一般的なアラート ポリシーの例については、割り当て指標の使用をご覧ください。

割り当て指標の詳細なリファレンスについては、Cloud Monitoring のリファレンス ガイドをご覧ください。

割り当て指標のサポートを確認する

すべてのサービスが Cloud Monitoring の割り当て指標をサポートしているわけではありません。サポートされているサービスに適用される割り当て指標を確認するには、グラフの作成時またはアラート ポリシーの作成時にリソースタイプとして [Consumer Quota] を選択します。割り当て指標をサポートしていないサービスは表示されません。

  • 割り当て指標をサポートしている一般的なサービスには、Compute Engine、Dataflow、Cloud Spanner、Pub/Sub、Cloud Vision、Speech-to-Text、Cloud Monitoring、Cloud Logging などがあります。

  • 割り当て指標をサポートしていない一般的なサービスには、App Engine、Cloud Storage、Cloud SQL などがあります。

割り当てのエラー

サービスの使用中にプロジェクトで割り当てを超過した場合は、サービスへのアクセス方法に基づいてエラーが返されます。

  • HTTP / REST リクエストで割り当てを超過した場合、Google Cloud は HTTP 429 TOO MANY REQUESTS ステータス コードを返します。
  • API リクエストで割り当てを超過した場合、Google Cloud は HTTP 413 REQUEST ENTITY TOO LARGE ステータス コードを返します。
  • gRPC を使用して割り当てを超過した場合、Google Cloud は ResourceExhausted エラーを返します。このエラーがどのように表示されるかは、サービスによって異なります。
  • gcloud コマンドライン ツールコマンドを使用して割り当てを超過した場合、gcloud ツールは割り当ての超過についてのエラー メッセージを出力するとともに、終了コード 1 を返します。

レート割り当ては、各サービスに固有の事前定義された時間間隔が経過するとリセットされます。詳細については、特定のサービスの割り当てに関するドキュメントをご覧ください。

今後エラーが発生した場合にアラートを受け取るようにするには、割り当て指標のモニタリングで説明されているように、特定の割り当てエラーに対するカスタム アラートを作成します。