Google Cloud では、割り当てを使用して、使用できる特定の共有 Google Cloud リソースの量を制限しています。各割り当ては、特定のサービスへの API 呼び出し、プロジェクトで同時に使用されるロードバランサの数、作成可能なプロジェクトの数など、特定のカウント可能なリソースを表します。
このページでは、既存の割り当て上限を確認して変更する方法、割り当ての増加をリクエストする方法、割り当て使用量のモニタリング方法など、プロジェクトの割り当てを扱う方法について説明します。
多くのサービスには、割り当てシステムとは無関係の上限が存在します。それらは、ファイルサイズの上限やデータベース スキーマの制限などの固定の制約であり、増減することはできません。これらは、関連するサービスの割り当てと上限のページ(Cloud Storage の割り当てと上限など)で確認できます。
次のリンクでは、リソースの使用量に関連する追加情報を確認できます。
- リソースの料金については、該当するサービスの料金ページをご覧ください(Cloud Storage の料金など)。
- その他の 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 の割り当て情報を一覧表示します。リソースの使用状況の推移に関する情報などが表示されます。
プロジェクトのすべての割り当てを表示する
プロジェクト内のすべてのリソースの割り当ての使用状況と上限を表示するには、次の手順を行います。
Google Cloud Console で、[割り当て] ページに移動します。
このページには、割り当てのリストが表示されます。
必要な情報に焦点を合わせるには、次のようにリストをフィルタして並べ替えます。
- リストをフィルタするには、[ フィルタ] フィールドに目的のプロパティと値を入力します。たとえば、BigQuery API の割り当てを表示するには、[サービス]、[BigQuery API] の順に選択します。
リストを並べ替えるには、並べ替えるキーの列見出しをクリックします。たとえば、割り当て名のアルファベット順に並べ替えるには、[割り当て] 列の見出しをクリックします。
デフォルトでは、最も使用されている割り当てが最初に表示されるようにリストが並べ替えられます。これは、超過する恐れのある上限を確認するのに役立ちます。
[割り当て] ページに表示される割り当て使用量の指標は次のように計算されます。
- レート割り当て:
- 1 日あたりのレートに基づく割り当ての場合、表示される数字は、現在の 24 時間の期間におけるその時点までの合計使用量を表します。
- 1 分または 100 秒あたりの割り当ての場合、[現在の使用率] 列に表示される数値は、過去 10 分間の平均使用状況を表します。
- 数量に基づく割り当て: ここに示されている数字は、プロジェクトで現在使用されているリソースの量(ロードバランサの数など)を表します。
特定のサービスの割り当ての詳細については、サービスごとのドキュメントをご覧ください。たとえば、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 を使用した割り当ての管理
リソースの使用状況に応じて、プロジェクトの割り当て上限に対して引き上げまたは引き下げの調整を行うことができます。このセクションでは、指定されている割り当て上限を変更する方法について説明します。割り当て上限を確認するには、[詳細] 列で [すべての割り当て] をクリックします。
割り当てのフィルタリング
特定のプロパティで割り当てのリストをフィルタリングするには:
Google Cloud Console で [割り当て] ページに移動します。
[表をフィルタリング] をクリックして、特定のプロパティで割り当てをクエリします。
割り当て上限の引き上げをリクエストする
ほとんどの割り当ての増加は Google Cloud Console でリクエストできます。
このタスクを Google Cloud Console で直接行う際の順を追ったガイダンスについては、[ガイドを表示] をクリックしてください。
このセクションの残りの部分では、[ガイドを表示] をクリックするのと同じプロセスを行います。
Google Cloud Console を使用して割り当ての上限の引き上げをリクエストするには:
[割り当て] ページに移動します。
[割り当て] ページの [上限名] 列で、増加させる割り当てを見つけます。
[フィルタ] 検索ボックスを使用して割り当て量を検索できます。
割り当ての左側にあるチェックボックスをオンにします。
[割り当てを編集] をクリックします。[割り当ての変更] フォームが表示されます。
[割り当ての変更] フォームで、[新しい上限] フィールドにプロジェクトに必要な追加割り当てを入力します。
フォームのその他のフィールドに入力して、[DONE] をクリックします。
[リクエストを送信] をクリックします。
上記の手順は、割り当て増加リクエストの大半に適用されますが、次のいずれかの例外が発生する可能性があります。
- 場合によっては、Google Cloud Console によって、上限の引き上げをリクエストするための別のフォームにリダイレクトされます。フォームを送信すると、Google Cloud がメールでリクエストを承認します。
- 一部の割り当ては、Google Cloud Console で更新できません。Console で割り当てを変更できない場合は、Cloud カスタマーケアに割り当ての増加をリクエストしてください。課金チームは割り当ての上限の引き上げを処理しません。
割り当ての増加リクエストに対して承認が必要な場合は、リクエストの受領確認メールを Google Cloud から受け取ることができます。サポートが必要な場合は、このメールに返信してください。Cloud カスタマーケアでリクエストが処理され(通常は 2~3 営業日以内)、割り当ての増加が承認されたかどうかが通知されます。このメールには発効日が記載されています(該当する場合)。
割り当ての増加のプロセスの詳細については、割り当ての増加リクエストについてをご覧ください。
使用量の上限を設定する
割り当ての上限を独自に設定することで、特定のリソースの使用量を制限できます。たとえば、無料枠の使用上限を超過した使用量について課金されるのを回避するために、1 日あたりの上限の設定をリクエストできます。割り当ての上限を設定するには、次の手順を行います。
Google Cloud Console で、[割り当て] ページに移動します。
上限となる割り当てを見つけるには、[
フィルタ] フィールドに適切なプロパティと値を入力します。たとえば、サブネットワークの割り当てを見つけるには、「Quota:Subnetworks」と入力します。上限とする割り当ての横にあるチェックボックスをクリックしてから、[
割り当てを編集] をクリックします。表示されたリクエスト フォームに、設定する新しい上限を入力します。
[リクエストを送信] をクリックします。
割り当てによる使用量の上限は、すべてのサービスに適用されるわけではありません。詳細については、特定のサービスの割り当てページをご覧ください。
Google Cloud CLI で割り当てを管理する(アルファ版)
Google Cloud CLI を使用して、一部の Google Cloud APIs とサービスについて、現在の割り当てと割り当て上限の使用量を取得できます。たとえば、プロジェクト レベル、フォルダレベル、組織レベル(利用可能な場合)の割り当ての情報を確認できます。
この方法を利用するには、まずアルファ版のコマンド コンポーネントを含む最新バージョンの Google Cloud CLI をインストールして、初期化している必要があります。Cloud Shell を使用して Google Cloud を操作している場合は、Google Cloud CLI がインストールされています。
特定のサービスについてプロジェクトへの割り当てを表示するには、次のコマンドを実行して、実際のプロジェクト 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
コマンドとフラグの詳細なリストについては、Google Cloud CLI リファレンスをご覧ください。
さらに、一部のサービスでは、gcloud quota
のみでなく、割り当てとリソース使用量に関する情報に独自のコマンドラインからアクセスすることもできます。たとえば、Compute Engine では、gcloud compute
を使用して割り当て情報にアクセスできます。
Service Usage API を使用した割り当ての管理
Service Usage API を使用すると、現在の割り当てを取得し、一部の Google Cloud APIs とサービスの割り当て使用量の上限を設定できます。Service Usage の詳細については、以下をご覧ください。
- 概要については、Service Usage とはをご覧ください。
- API リファレンスについては、API とリファレンスをご覧ください。
- 使用ガイドについては、入門ガイドをご覧ください。
Service Usage API を使用して割り当ての増加をリクエストすることはできません。これを行う場合は、Cloud Console を使用する必要があります。
割り当て指標のモニタリングとアラートの設定
Cloud Monitoring API と UI を使用すると、割り当ての使用量、上限、エラーを詳細にモニタリングできます。これらの指標を使用してカスタム ダッシュボードとアラートを作成して、割り当ての使用量の推移をモニタリングし、割り当ての上限に近づいたときなどにアラートを受信できます。
Cloud Monitoring はさまざまな指標をサポートしています。これらの指標をフィルタや集計と組み合わせることで、割り当ての使用量についてより有用な分析情報を表示できます。たとえば、数量に基づく割り当ての使用状況の指標を Cloud TPU 名の quota_metric
フィルタと組み合わせることができます。
Metrics Explorer を使用してモニタリング対象リソースの指標を表示する手順は次のとおりです。
- Google Cloud Console で、Monitoring の [Metrics Explorer] ページに移動します。
- ツールバーで [エクスプローラ] タブを選択します。
- [CONFIGURATION] タブを選択します。
- [指標を選択] メニューを開き、フィルタバーに「
quota usage
」と入力し、サブメニューを使用して特定のリソースタイプと指標を選択します。- [ACTIVE RESOURCES] メニューで、[Consumer Quota] を選択します。
- [ACTIVE METRIC CATEGORIES] メニューで、[Quota] を選択します。
- [ACTIVE METRICS] メニューで、[Allocation quota usage] または [Rate quota usage] を選択します。
- [適用] をクリックします。
- 省略可: データの表示方法を構成するには、フィルタを追加し、[Group By]、[Aggregator]、グラフタイプの各メニューを使用します。たとえば、リソースラベルや指標ラベルごとにグループ化できます。詳細については、Metrics Explorer 使用時の指標の選択をご覧ください。
- 省略可: グラフの設定を変更します。
- 割り当てと、1 日に 1 つのサンプルを報告するその他の指標については、期間を 1 週間以上に設定し、プロットタイプを [積み上げ棒グラフ] に設定します。
- 分布値の指標の場合、プロットタイプをヒートマップ グラフに設定します。
同様に、割り当て上限または超過エラーを表示するには、まずリソースタイプとして [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
エラーを返します。このエラーがどのように表示されるかは、サービスによって異なります。 - Google Cloud CLI コマンドを使用して割り当てを超過した場合、gcloud CLI は割り当て超過のエラー メッセージを出力するとともに、終了コード
1
を返します。
レート割り当ては、各サービスに固有の事前定義された時間間隔が経過するとリセットされます。詳細については、特定のサービスの割り当てに関するドキュメントをご覧ください。
今後エラーが発生した場合にアラートを受け取るようにするには、割り当て指標のモニタリングで説明されているように、特定の割り当てエラーに対するカスタム アラートを作成します。