数量に基づく割り当て


このドキュメントでは、Compute Engine に適用される数量に基づく割り当てについて説明します。

数量に基づく割り当て

数量に基づく割り当てはリソースの割り当てとも呼ばれ、プロジェクトがアクセスできるリソースの数を定義します。Compute Engine では、さまざまな理由からリソースの使用量に数量に基づく割り当てが適用されます。たとえば、割り当てを行うことで予期しない使用量の急増を防ぎ、Google Cloud ユーザーのコミュニティを保護しています。Google Cloud には無料トライアルの割り当てもあり、無料トライアルで Google Cloud を利用するためにプロジェクトへの制限付きアクセスが提供されます。

割り当て量はすべてのプロジェクトで同じとは限りません。Google Cloud の使用量が多くなるに伴い、割り当てが引き上げられることがあります。使用量の大幅な増加が見込まれる場合は、事前に Google Cloud コンソールの [割り当て] ページから割り当ての調整をリクエストできます。

Compute Engine API でのレート制限に関する割り当ての詳細については、API 割り当てをご覧ください。

割り当てとリソースの可用性

数量に基づく割り当てとは、そのリソースタイプで作成できる最大リソース数のことですが、それだけのリソースが利用可能であることが条件となります。割り当てが適用されていても、そのリソースを常に利用できるわけではありません。あるリソースが利用できない場合、つまり選択したリージョンにはそのリソースが残っていない場合、リージョンまたはプロジェクトに割り当てが残っていても、その種類のリソースを新規作成することはできません。たとえば、us-central1 に外部 IP アドレスを作成できるだけの割り当てが残っていても、そのリージョンには利用可能な IP アドレスがないということもあります。

同様に、リージョンの割り当てが残っていても、特定のゾーンである種類のリソースが利用不可能ということもあります。たとえば、リージョン us-central1 で VM インスタンスを作成できるだけの割り当てが残っていても、ゾーン us-central1-a が枯渇している場合は、このゾーンでは VM インスタンスを作成できない場合があります。そのような場合は、同じリソースを別のゾーン(たとえば us-central1-f)で作成してみてください。ゾーンリソースが枯渇した場合の対応方法については、リソースの可用性のトラブルシューティングのドキュメントをご覧ください。

数量に基づく割り当て

必要となる VM インスタンスを計画する際は、作成できる VM インスタンス数に影響を与えるいくつかの割り当てを考慮する必要があります。

リージョン割り当てとグローバル割り当て

VM の割り当てはリージョン レベルで管理されます。VM インスタンス、インスタンス グループ、ディスクの割り当て、CPU は、ゾーンに関係なくリージョン内の VM が消費できます。たとえば、CPU 割り当てはリージョン割り当てであるため、上限や使用量はリージョンごとにカウントされます。us-central1 リージョン内の任意のゾーンで n2-standard-16 インスタンスを起動するには、us-central1 に少なくとも CPU 16 個分の割り当てが必要です。

ファイアウォール、ロードバランサ、ネットワーク、VPN を作成するには、ネットワーキングとロード バランシングの割り当てが必要です。これらの割り当ては、リージョンに依存しないグローバル割り当てです。グローバル割り当ては任意のリージョンで使用できます。たとえば、ロードバランサと HTTP(S) プロキシに割り当てられている使用 IP アドレスと静的外部 IP アドレスには、グローバル割り当てが消費されます。

VM インスタンス

VM インスタンスの割り当てはリージョン割り当てで、VM が実行されているかどうかに関係なく、特定のリージョンに存在できる VM インスタンスの数が制限されます。この割り当ては、Google Cloud Console の [割り当て] ページで確認できます。Compute Engine は、この割り当てを通常の CPU 割り当ての 10 倍に設定します。この割り当てをリクエストする必要はありません。VM インスタンスの割り当てを増やす必要がある場合は、追加の CPU 割り当てをリクエストしてください。CPU 割り当てを増やすと VM インスタンスの割り当ても増加します。この割り当ては、実行中の VM と実行されていない VM、および通常のインスタンスとプリエンプティブル インスタンスに適用されます。

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

    [割り当て] に移動

  2. [表のフィルタ] をクリックし、[サービス] を選択します。

  3. [Compute Engine API] を選択します。

  4. [割り当て: VM インスタンス] を選択します。

  5. リージョンごとの VM インスタンスの割り当てのリストを表示するには、[すべての割り当て量] をクリックします。リージョンの割り当ては、多いものから少ないものの順に一覧表示されます。

  6. 割り当てを変更するリージョンのチェックボックスをオンにします。

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

  8. フォームに入力します。

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

インスタンス グループ

インスタンス グループを使用するには、グループが使用するすべてのリソース(CPU 割り当てなど)とグループ リソース自体に利用可能な割り当てがある必要があります。作成するグループのタイプによって、以下のグループ リソース割り当てが適用されます。

サービスタイプ サービス割り当て
リージョン(マルチゾーン)マネージド インスタンス グループ Regional instance group managers
ゾーン(シングルゾーン)マネージド インスタンス グループ 以下の両方:
  • Instance group managers
  • Instance groups
非マネージド(シングルゾーン)インスタンス グループ Instance groups
リージョン(マルチゾーン)オートスケーラー Regional autoscalers
ゾーン(シングルゾーン)オートスケーラー Autoscalers

ディスク割り当て

次の Persistent Disk とローカル SSD の割り当ては、リージョンごとに適用されます。

  • Local SSD per machine family (GB)。この割り当ては、各 VM のマシンタイプに基づいてリージョン内の VM にアタッチできるローカル SSD ディスクの合計サイズです。ローカル SSD は高速なエフェメラル ディスクです。このディスクは、VM インスタンスの再起動に際して存続することが意図されていないため、スクラッチ、ローカル キャッシュや、フォールト トレランスに優れたジョブの処理に適しています。

    ローカル SSD ディスクは、マシンタイプに応じて 375 GiB または 3 TiB 単位で購入できます。マシンタイプによっては、単一の VM にアタッチできるローカル SSD ディスクの最大数もあります。ローカル SSD ディスクの最大数と各ローカル SSD ディスクのサイズによって、VM に割り当てることができるローカル SSD ディスク容量の合計量に上限が設定されます。gcloud CLI と API では、この上限を LOCAL_SSD_TOTAL_GB_PER_VM_FAMILY 割り当てと呼びます。

    A3 Ultra VM と A2 Ultra VM の場合、ローカル SSD が自動的に追加されるため、この割り当てをリクエストする必要はありません。ただし、他のアクセラレータ最適化 VM については、LOCAL_SSD_TOTAL_GB_PER_VM_FAMILY をリクエストする必要があります。

  • Persistent disk standard (GB)。この割り当ては、1 つのリージョン内に作成できる標準永続ディスクの合計サイズです。Persistent Disk のパフォーマンスの最適化で説明されているように、標準永続ディスクは SSD 永続ディスクやローカル SSD ディスクよりも IOPS とスループットが低くなります。これはストレージ用の耐久性に優れた大型のディスクやブートディスクとして使用する場合、またはログなどのシリアル書き込みプロセスに使用する場合に、コスト効率の高いディスクです。標準永続ディスクは耐久性に優れ、同じゾーン内の VM にアタッチするために無期限に利用できます。gcloud CLI と API では、この割り当てを DISKS_TOTAL_GB と呼びます。この割り当てはリージョン標準永続ディスクにも適用されますが、リージョン永続ディスクはリージョン内の 2 つのゾーンにレプリケートされるため、1 GiB あたりの割り当て量は 2 倍になります。

  • Persistent disk SSD (GB)。この割り当ては、1 つのリージョン内に作成できる SSD を基盤とする Persistent Disk ボリュームの合計サイズです。SSD を基盤とする Persistent Disk は、ブロック ストレージのパフォーマンスで説明されているように、標準永続ディスクよりも IOPS とスループットが高くなります。SSD を基盤とする Persistent Disk は、同じゾーン内の VM にアタッチするために無期限に利用できます。gcloud CLI と API では、この割り当てを SSD_TOTAL_GB と呼びます。この割り当ては、ローカル SSD ディスクの割り当てとは別のものです。この割り当ては、次のディスクタイプに適用されます。

    • ゾーン / リージョン SSD Persistent Disk
    • ゾーン / リージョン バランス Persistent Disk

    リージョン Persistent Disk はリージョン内の 2 つのゾーンにレプリケートされるため、1 GiB あたりの割り当て量は 2 倍になります。

ストレージ プールの割り当て

Hyperdisk ストレージ プールには次の割り当てがあり、単位は GB(1,000 MB)です。

  • Hyperdisk Balanced Storage Pools Advanced Capacity (GB): 高度な容量のプロビジョニングを使用してバランス Hyperdisk ストレージ プールで予約できるディスク容量の合計。gcloud CLI と API では、この割り当てを HDB_STORAGE_POOL_TOTAL_ADVANCED_CAPACITY と呼びます。

  • Hyperdisk Throughput Storage Pools Advanced Capacity (GB): 高度な容量のプロビジョニングを使用して Hyperdisk Throughput ストレージ プールで予約できるディスク容量の合計。gcloud CLI と API では、この割り当てを HDT_STORAGE_POOL_TOTAL_ADVANCED_CAPACITY と呼びます。

CPU 割り当て上限

CPU 割り当ては、リージョンのすべての VM インスタンスで利用できる仮想 CPU の合計数です。CPU 割り当ては、実行中の VM と VM 予約に適用されます。事前定義の VM とプリエンプティブル VM の両方でこの割り当てが消費されます。

Compute Engine システムと他のユーザーを保護するため、新しいアカウントとプロジェクトにもグローバル CPUs (All Regions) 割り当ても設定されます。この割り当てはすべてのリージョンに適用され、すべてのリージョンにある全 vCPU の合計として測定されます。

たとえば、us-central1 などの単一リージョンで 48 の vCPU があり、CPUs (All Regions) 割り当てで 32 の vCPU が残っている場合、us-central1 リージョンの割り当てが残っていても、同リージョンで利用できる vCPU の数は 32 になります。これは、CPU (All Regions) 割り当ての上限に達し、新しいインスタンスの起動前に既存のインスタンスの削除が必要になるためです。

E2 および N1 マシンタイプは、CPU 割り当てプールを共有します。特に明記されていない限り、他のすべてのマシンタイプには一意の個別の CPU 割り当てプールがあります。

VM で確約利用割引を利用する場合、確約利用割引を購入する前に、確約利用割引の割り当てを設定する必要があります。

マシンタイプ 割り当てプール CPU 割り当て名 コミット済み CPU 割り当て名
N1 共有プール CPUS Committed_CPUS
E2 共有プール CPUS Committed_CPUS
N2 個別プール N2_CPUS Committed_N2_CPUS
N2D 個別プール N2D_CPUS Committed_N2D_CPUS
T2D 個別プール T2D_CPUS Committed_T2D_CPUS
T2A 個別プール T2A_CPUS T2A では使用できない(該当なし)
Z3(プレビュー 個別プール CPUS_PER_VM_FAMILY Committed_Z3_CPUS
M1 個別プール M1_CPUS Committed_MEMORY-OPTIMIZED_CPUS
M2 個別プール M2_CPUS Committed_MEMORY-OPTIMIZED_CPUS
M3 個別プール M3_CPUS Committed_M3_CPUS
H3 個別プール CPUS_PER_VM_FAMILY Committed_H3_CPUS
C2 個別プール C2_CPUS Committed_C2_CPUS
C2D 個別プール C2D_CPUS Committed_C2D_CPUS
C3 個別プール C3_CPUS Committed_C3_CPUS
C3D 個別プール CPUS_PER_VM_FAMILY Committed_C3D_CPUS
A2* 個別プール A2_CPUS Committed_A2_CPUS
A3 A3 は該当なし A3 は該当なし A3 は該当なし
G2 G2 は該当なし G2 は該当なし G2 は該当なし
プリエンプティブル VM 共有プール PREEMPTIBLE_CPUS プリエンプティブル VM は該当なし

* A2 VM の場合、CPU 割り当てをリクエストする必要はありません。必要な NVIDIA A100 GPU 割り当てがある場合、これらの VM の作成に必要なものはそろっています。

A3 VM と G2 VM の場合、CPU 割り当ては該当しません。必要な NVIDIA H100 と L4 の GPU 割り当てがそれぞれある場合、これらの VM の作成に必要なものはそろっています。

GPU 割り当て

仮想 CPU 割り当てと同様に、GPU 割り当ては、リージョン内のすべての VM インスタンスの仮想 GPU の合計数を意味します。GPU 割り当ては、実行中の VM と VM 予約に適用されます。事前定義の VM とプリエンプティブル VM の両方でこの割り当てが消費されます。

プロジェクトで利用できる GPU が十分にあるかどうかは、[割り当て] ページで確認できます。必要に応じて割り当ての増加をリクエストしてください。また、新しいアカウントとプロジェクトには、すべてのリージョンに適用されるグローバルな GPU 割り当てが設定されます。

GPU 割り当てをリクエストするときは、各リージョンで作成する GPU モデルに対する割り当てに加え、すべてのリージョンにおけるすべてのタイプの GPU の合計数に対するグローバル割り当て(GPUs (all regions))もリクエストする必要があります。これらのリソースを使用するには、プリエンプティブル GPU 割り当てをリクエストします。

NVIDIA GPU 割り当て名 コミット済み GPU 割り当て名 仮想ワークステーション プリエンプティブル GPU プリエンプティブル GPU 仮想ワークステーション
H100 80GB GPUS_PER_GPU_FAMILY COMMITTED_NVIDIA_H100_GPUS なし PREEMPTIBLE_NVIDIA_H100_GPUS なし
A100 40GB NVIDIA_A100_GPUS COMMITTED_NVIDIA_A100_GPUS なし PREEMPTIBLE_NVIDIA_A100_GPUS なし
A100 80GB NVIDIA_A100_80GB_GPUS COMMITTED_NVIDIA_A100_80GB_GPUS なし PREEMPTIBLE_NVIDIA_A100_80GB_GPUS なし
L4 NVIDIA_L4_GPUS COMMITTED_NVIDIA_L4_GPUS NVIDIA_L4_VWS_GPUS PREEMPTIBLE_NVIDIA_L4_GPUS PREEMPTIBLE_NVIDIA_L4_VWS_GPUS
T4 NVIDIA_T4_GPUS COMMITTED_NVIDIA_T4_GPUS NVIDIA_T4_VWS_GPUS PREEMPTIBLE_NVIDIA_T4_GPUS PREEMPTIBLE_NVIDIA_T4_VWS_GPUS
V100 NVIDIA_V100_GPUS COMMITTED_NVIDIA_V100_GPUS なし PREEMPTIBLE_NVIDIA_V100_GPUS なし
P100 NVIDIA_P100_GPUS COMMITTED_NVIDIA_P100_GPUS NVIDIA_P100_VWS_GPUS PREEMPTIBLE_NVIDIA_P100_GPUS PREEMPTIBLE_NVIDIA_P100_VWS_GPUS
P4 NVIDIA_P4_GPUS COMMITTED_NVIDIA_P4_GPUS NVIDIA_P4_VWS_GPUS PREEMPTIBLE_NVIDIA_P4_GPUS PREEMPTIBLE_NVIDIA_P4_VWS_GPUS
K80 NVIDIA_K80_GPUS COMMITTED_NVIDIA_K80_GPUS なし PREEMPTIBLE_NVIDIA_K80_GPUS なし

プリエンプティブル リソースの数量に基づく割り当て

プリエンプティブル VM インスタンスに接続されているプリエンプティブル CPU または GPU、またはプリエンプティブル VM インスタンスに接続されているローカル SSD を利用するには、プロジェクトにそれぞれのリソースの割り当てが残っている必要があります。

Preemptible CPUsPreemptible GPUsPreemptible Local SSDs (GB) については特別なプリエンプティブル割り当てをリクエストできますが、プロジェクトにプリエンプティブル割り当てがなく、プリエンプティブル割り当てをリクエストしたことがない場合は、標準の割り当てを消費してプリエンプティブル リソースを起動できます。

Compute Engine によりあるリージョンでプリエンプティブル割り当てが付与された後は、すべてのプリエンプティブル インスタンスが自動的にプリエンプティブル割り当ての消費と見なされます。この割り当てが使い果たされると、これらのリソースに対するプリエンプティブル割り当てをリクエストする必要があります。

外部 IP アドレス

公共のインターネットから直接アクセスできる必要がある VM ごとに、十分な外部 IP アドレスが割り振られている必要があります。あるリージョンの VM に対する IPv4 アドレスには、そのリージョンの IP 割り当てを使用します。ロードバランサなどのグローバル ネットワーキング リソースに対する IPv4 アドレスには、グローバル IP 割り当てを使用します。Google Cloud では、お客様のニーズに応じて、いくつかの種類の IP アドレスを提供しています。費用については、外部 IP アドレス料金をご覧ください。割り当ての詳細については、割り当てと上限をご覧ください。

  • 使用中の外部 IP アドレス。リソースで使用されているエフェラメル IP アドレスと静的 IP アドレスの両方が含まれます。

  • 静的外部 IP アドレス: マシンを再起動しても保持するリソース用に予約される外部 IP アドレス。これらのアドレスを DNS とドメイン プロバイダ サービスに登録し、ユーザー フレンドリーなアドレスを指定できます。(例: www.example-site.com)。

  • 静的内部 IP アドレス: 静的内部 IP アドレスを使用すると、サブネットで構成された内部 IP 範囲から内部 IP アドレスを予約できます。必要に応じて、その予約済み内部アドレスをリソースに割り当てることができます。

割り当てのロールアウト

Google Cloud はリソースと API のデフォルト割り当てを変更することがあります。これらの変更は段階的に行われます。新しいデフォルト割り当てをロールアウトする間、Google Cloud コンソールに表示される割り当て上限は実際に使用できる割り当て上限を反映していないことがあります。

たとえば、Google Cloud がファイアウォール ルールのデフォルト割り当て上限を 200 から 300 に変更したとします。Google Cloud コンソールを使用して割り当てを表示すると、ロールアウトが完了するまでは実際の割り当てが 200 であっても、新しい割り当ての 300 が表示されることがあります。

進行中の割り当てのロールアウトについては、既知の問題をご覧ください。問題が記載されていない場合、割り当てのロールアウトは進行していません。

割り当てのロールアウトが進行中で、実際に使用可能な割り当て上限を確認するには、Google Cloud CLI を使用して割り当てを確認します。 利用可能分を超える割り当てが必要な場合は、割り当ての増加リクエストを送信します。

次のステップ