ストレージ オプション

Compute Engine には、インスタンス向けに複数のストレージ オプションが用意されています。ストレージ オプションによって、料金と性能特性が異なります。

どのオプションを使用すればよいかわからない場合、最も一般的なのは、インスタンスに永続ディスクを追加するソリューションです。

はじめに

Compute Engine の各インスタンスには、デフォルトでオペレーティング システムを格納しているブート永続ディスクが 1 つあります。アプリに追加のストレージ容量が必要な場合は、1 つ以上の追加のストレージ オプションをインスタンスに追加できます。費用比較については、ディスクの料金体系を参照してください。

ゾーン標準
永続
ディスク
リージョン標準
永続
ディスク
ゾーン
SSD
永続
ディスク
リージョン
SSD
永続
ディスク
ローカル
SSD
Cloud Storage バケット
ストレージの種類 効率的で高信頼性のブロック ストレージ リージョン内の 2 つのゾーンにわたる同期レプリケーションによる効率的かつ高信頼性のブロック ストレージ 高速かつ高信頼性のブロック ストレージ リージョン内の 2 つのゾーンにわたる同期レプリケーションによる高速かつ高信頼性のブロック ストレージ 高パフォーマンスのローカル ブロック ストレージ 手頃な料金のオブジェクト ストレージ
ディスク 1 つあたりの最小容量 10 GB 200 GB 10 GB 10 GB 375 GB なし
ディスク 1 つあたりの最大容量 64 TB 64 TB 64 TB 64 TB 375 GB なし
容量の増分 1 GB 1 GB 1 GB 1 GB 375 GB なし
インスタンスあたりの最大容量 257 TB* 257 TB* 257 TB* 257 TB* 3 TB
(ベータ版では 9 TB)
ほぼ無制限
アクセス範囲 ゾーン ゾーン ゾーン ゾーン インスタンス グローバル
データ冗長性 ゾーン マルチゾーン ゾーン マルチゾーン なし リージョン、デュアルリージョン、マルチリージョン
保存時の暗号化
カスタム暗号鍵 ×
マシンタイプのサポート すべてのマシンタイプ すべてのマシンタイプ ほとんどのマシンタイプ ほとんどのマシンタイプ ほとんどのマシンタイプ すべてのマシンタイプ
入門 標準永続ディスクの追加 リージョン標準永続ディスクの追加 SSD 永続ディスクの追加 リージョン SSD 永続ディスクの追加 ローカル SSD の追加 バケットの接続

* 64 TB を超える論理ボリュームの作成を検討している場合は、大容量論理ボリュームのパフォーマンスをご覧ください。

Google Cloud が提供するストレージ オプション以外にも次のようなストレージ ソリューションをインスタンスにデプロイできます。

ブロック ストレージ リソースにはさまざまなパフォーマンス特性があります。インスタンスに対応するブロック ストレージの適切なタイプとサイズを決定するときは、ストレージのサイズとパフォーマンスの要件を検討します。

ゾーン
標準
永続ディスク
リージョン
標準
永続ディスク
ゾーン
SSD
永続ディスク
リージョン
SSD
永続ディスク
ローカル SSD(SCSI) ローカル SSD(NVMe)
最大持続 IOPS
読み取り IOPS/GB 0.75 0.75 30 30
書き込み IOPS/GB 1.5 1.5 30 30
読み取り IOPS/インスタンス 7,500* 3,000* 15,000~100,000* 15,000~100,000* 900,000(ベータ版) 2,400,000(ベータ版)
書き込み IOPS/インスタンス 15,000* 15,000* 15,000~30,000* 15,000~30,000* 800,000(ベータ版) 1,200,000(ベータ版)
最大持続スループット(MB/秒)
読み取りスループット/GB 0.12 0.12 0.48 0.48
書き込みスループット/GB 0.12 0.12 0.48 0.48
読み取りスループット/インスタンス 240~1,200* 240~1,200* 240~1,200* 240~1,200* 9,360(ベータ版) 9,360(ベータ版)
書き込みスループット/インスタンス 76~400** 38~200** 204~800* 102~400* 4,680(ベータ版) 4,680(ベータ版)
* 永続ディスクの IOPS とスループット パフォーマンスは、ディスクサイズ、インスタンスの vCPU 数、I/O ブロックサイズなどの要因によって決まります。
** 永続ディスクは、インスタンスの vCPU の数が多いほど、スループット パフォーマンスが高くなります。書き込みスループットの下り(外向き)ネットワークの上限をご覧ください。

ゾーン永続ディスク(標準と SSD)

永続ディスクは耐久性のあるネットワーク ストレージ デバイスであり、パソコンやサーバーの物理ディスクと同じようにインスタンスからアクセスできます。永続ディスク上のデータは、複数の物理ディスクに分散されます。Compute Engine は物理ディスクとデータ分散を管理して、冗長性を保証し、最善のパフォーマンスを確保します。標準永続ディスクは、標準のハードディスク ドライブ(HDD)によって構成されています。SSD 永続ディスクは、ソリッド ステート ドライブ(SSD)によって構成されています。

永続ディスクは仮想マシン(VM)インスタンスとは独立して存在するため、インスタンスを削除した後であっても、永続ディスクを接続解除または移動してデータを保持できます。永続ディスクのパフォーマンスはサイズに合わせて自動的に向上するので、既存の永続ディスクのサイズを変更するか、またはインスタンスに永続ディスクを追加して、パフォーマンスとストレージ容量の要件を満たすことができます。

パフォーマンス特性が安定した高信頼性で低価格のストレージが必要な場合は、永続ディスクをインスタンスに追加します。

永続ディスクをインスタンスに追加する

使いやすさ

Compute Engine はほとんどのディスク管理タスクを自動的に処理するので、デベロッパーはパーティショニング、冗長ディスクアレイ、サブボリューム管理などについて考える必要はありません。一般的に、より大きい論理ボリュームを作成する必要はありませんが、必要に応じて、追加で接続する永続ディスク容量をインスタンスあたり 257 TB に拡張し、永続ディスクに適用できます。パーティション分割テーブルなしで、1 つのファイル システムで永続ディスクをフォーマットすることで、時間を節約して最適なパフォーマンスを得ることができます。

データを複数の固有ボリュームに分ける必要がある場合は、既存のディスクを複数のパーティションに分割するのではなく、追加ディスクを作成します。

永続ディスクの容量を増やす必要がある場合は、再パーティショニングしてフォーマットするのではなく、ディスクのサイズを変更し、単一のファイル システムのサイズを変更します。

パフォーマンス

永続ディスクのパフォーマンスは予測可能であり、インスタンスのプロビジョニングされた vCPU の上限に達するまで、プロビジョニングされた容量に比例してスケールします。パフォーマンスのスケーリングの上限と最適化について詳しくは、ブロック ストレージのパフォーマンスをご覧ください。

標準 HDD 永続ディスクは、順次読み取り / 書き込みオペレーションの処理には効率的かつ経済的な選択肢ですが、1 秒あたりのランダム入出力オペレーション(IOPS)量が多い処理には不向きです。大量のランダム IOPS が必要なアプリケーションでは、SSD 永続ディスクを使用してください。SSD 永続ディスクは、レイテンシが 10 ミリ秒未満となるよう設計されています。観測されるレイテンシはアプリケーション固有です。

Compute Engine は、永続ディスクのパフォーマンスとスケーリングを自動的に最適化します。最高のパフォーマンスを得るために、複数のディスクをストライプ化したり、ディスクのプリウォームを行ったりする必要はありません。より多くのディスク容量やより高いパフォーマンスが必要な場合は、ディスクのサイズを変更して、さらに vCPU を追加することで、ストレージ容量、スループット、および IOPS を増やします。永続ディスクのパフォーマンスは、インスタンスに接続された永続ディスクの合計容量と、インスタンスが保持する vCPU の数に基づきます。

ブートデバイスの場合は、標準永続ディスクを使用してコストを削減できます。小規模な 10 GB の永続ディスクは、基本的なブートおよびパッケージ管理のユースケースで役立ちます。ただし、ブートデバイスの一般的な使用で一貫したパフォーマンスを確保するには、ブートディスクとして SSD 永続ディスクを使用するか、サイズが少なくとも 200 GB の標準永続ディスクを使用してください。

永続ディスクへの書き込みオペレーションを行うたびに、インスタンスの累積ネットワーク下りトラフィックが増加します。つまり、永続ディスクの書き込みオペレーションは、インスタンスに対する下りネットワークの上限によって制限されます。

信頼性

永続ディスクには冗長性が組み込まれており、機器の故障からデータを保護し、データセンターのメンテナンス中でもデータの可用性を保証します。永続ディスクのすべてのオペレーションでチェックサムが計算されるため、読み取ったデータは書き込んだデータと必ず一致します。

さらに、永続ディスクのスナップショットを作成して、ユーザーエラーによりデータが失われるのを防ぐことができます。スナップショットは増分なので、実行中のインスタンスに接続されているディスクのスナップショットを作成する場合であっても数分しかかかりません。

永続ディスクの暗号化

Compute Engine は、データがインスタンスから永続ディスクのストレージ領域に移動される前に、データを自動的に暗号化します。各永続ディスクは、システム定義の鍵か顧客指定の暗号鍵のいずれかで暗号化されたままになります。永続ディスクデータは複数の物理ディスクに分散されます。ユーザーはこれを制御できません。

永続ディスクを削除すると、Google は暗号鍵を破棄し、データを回復不能にします。このプロセスは元に戻せません。

データの暗号化に使用される暗号鍵を制御する必要がある場合は、顧客指定の暗号鍵でディスクを作成します。

上限

  • 別のプロジェクトのインスタンスにディスクを接続することはできません。

  • 共有コア マシンタイプのインスタンスは、永続ディスク数が最大で 16 個に制限されています。

  • カスタム マシンタイプか、最小 1 vCPU の事前定義されたマシンタイプの場合、最大で 128 個の永続ディスクを接続できます。

  • 各永続ディスクのサイズの上限は 64 TB なので、ディスクのアレイを管理して大きな論理ボリュームを作成する必要はありません。各インスタンスに接続できる永続ディスクの合計容量と個別の永続ディスクの数には上限があります。永続ディスクの上限は、事前定義されたマシンタイプカスタム マシンタイプで変わりません。

  • ほとんどのインスタンスで永続ディスクを最大 128 まで、また、最大 257 TB の永続ディスク領域まで接続できます。1 つのインスタンスの永続ディスクの合計容量には、ブート永続ディスクのサイズが含まれます。

  • 共有コア マシンタイプは 16 個の永続ディスクと 3 TB の合計永続ディスク スペースに制限されています。

64 TB を超える論理ボリュームを作成する場合は、特に考慮しなければならない場合があります。詳細は大容量論理ボリュームのパフォーマンスを参照してください。

リージョン永続ディスク(標準と SSD)

リージョン永続ディスクのストレージ品質は、ゾーン永続ディスク(標準と SSD)と同様です。ただし、リージョン永続ディスクには、同じリージョン内の 2 つのゾーン間でのデータの耐久性の高いストレージとレプリケーションが用意されています。Compute Engine で堅牢なシステムを設計する場合は、複数のゾーンでのリソースの高可用性を維持するために、リージョン永続ディスクを使用することを検討してください。リージョン永続ディスクは、アプリケーション レベルのレプリケーションを持たないワークロードに対して同期レプリケーションを提供します。

リージョン永続ディスクは、フェイルオーバー機能を備えた複数のゾーンにわたる冗長性が必要なワークロード用に設計されています。また、リージョン永続ディスクは、リージョン マネージド インスタンス グループと連携するように設計されています。リージョン永続ディスクは、高可用性を必要とする高性能データベースやエンタープライズ アプリのためのオプションです。

万一ゾーンが停止した場合、--force-attach(/sdk/gcloud/reference/compute/instances/attach-disk#--force-attach)フラグを attach-disk コマンドで使用することにより、リージョン永続ディスクで実行されているワークロードを別のゾーンにフェイルオーバーできます。--force-attach フラグを使用すると、元の VM が使用できないためにディスクをその VM から切断できない場合でも、リージョン永続ディスクをスタンバイ VM インスタンスに接続できます。

両方のレプリカが使用可能な場合、両方のレプリカで書き込み内容が永続化されたときに、書き込みの確認応答が VM に返されます。一方のレプリカが使用できない場合、正常なレプリカで書き込み内容が永続化されたときに、書き込みの確認応答が返されます。異常のあるレプリカが(Compute Engine により検出されて)バックアップされると、正常なレプリカと透過的に同期され、完全同期モードでオペレーションが再開されます。このオペレーションは VM に対して透過的です。

まれに両方のレプリカが同時に使用できなくなる場合や別のレプリカの同期中に正常なレプリカが使用できなくなる場合は、対応するディスクが使用不可となります。

リージョン永続ディスクをインスタンスに追加する

パフォーマンス

リージョン永続ディスクは、永続ディスクのスナップショットを使用する場合よりも低い復旧時点目標(RPO)復旧時間目標(RTO)を必要とするワークロード用に設計されています。

リージョン永続ディスクは、書き込みパフォーマンスが複数のゾーンにわたるデータ冗長性よりも重要でない場合のオプションです。

標準永続ディスクと同様に、リージョン永続ディスクは、より多くの vCPU を持つインスタンスでより高い IOPS とスループット パフォーマンスを達成できます。詳細については、SSD 永続ディスクのパフォーマンス上限を参照してください。

より多くのディスク容量またはより高いパフォーマンスが必要なときは、ディスクのサイズを変更して、容量、スループット、IOPS を増強できます。

信頼性

Compute Engine は、リージョン永続ディスクのデータを、ディスクの作成時に選択したゾーンに複製します。各レプリカのデータは、冗長性を確保するために、ゾーン内の複数の物理マシンに分散されます。

通常の永続ディスクと同様に、永続ディスクのスナップショットを作成して、ユーザーエラーによるデータの損失から保護できます。スナップショットは増分なので、実行中のインスタンスに接続されているディスクのスナップショットを作成する場合であっても数分しかかかりません。

上限

ローカル SSD

ローカル SSD は、VM インスタンスをホストするサーバーに物理的に接続されます。標準永続ディスクまたは SSD 永続ディスクよりローカル SSD の方が高スループットで低レイテンシです。ローカル SSD に格納されたデータが保持されるのは、インスタンスが停止されるかまたは削除されるまでだけです。各ローカル SSD のサイズは 375 GB ですが、1 つのインスタンスにつき最大 8 個のローカル SSD パーティションを接続でき、合計 3 TB のローカル SSD ストレージ領域になります。ベータ版では、1 つのインスタンスにつき最大 24 個のローカル SSD パーティションを接続でき、合計 9 TB のストレージ領域になります。

高速のスクラッチ ディスクまたはキャッシュが必要で、インスタンス メモリを使用したくない場合は、ローカル SSD でインスタンスを作成します。

ローカル SSD でインスタンスを作成する

パフォーマンス

ローカル SSD は、非常に高い IOPS と低いレイテンシを提供するように設計されています。永続ディスクとは異なり、ローカル SSD でのストライプ化はユーザー自身が管理する必要があります。複数のローカル SSD パーティションを単一の論理ボリュームに結合してインスタンスごとのローカル SSD のパフォーマンスを最大化するか、ローカル SSD パーティションを個別にフォーマットします。

ローカル SSD のパフォーマンスは、選択するインターフェースによって異なります。ローカル SSD は SCSI インターフェースと NVMe インターフェースの両方で使用できます。

次の表に、NVMe を使用する場合のローカル SSD の容量と推定パフォーマンスの概要を示します。16 個または 24 個のローカル SSD パーティションで最大パフォーマンス上限を達成するには、32 個以上の vCPU を持つ VM を使用します。

ストレージ容量 パーティション IOPS スループット
(MB/秒)
読み取り 書き込み 読み取り 書き込み
3 TB 8 680,000 360,000 2,650 1,400
6 TB(ベータ版) 16 1,600,000 800,000 6,240 3,120
9 TB(ベータ版) 24 2,400,000 1,200,000 9,360 4,680

詳細については、ローカル SSD のパフォーマンスローカル SSD のパフォーマンスの最適化をご覧ください。

ローカル SSD の暗号化

Compute Engine は、データがローカル SSD ストレージ スペースに書き込まれる際に、データを自動的に暗号化します。ローカル SSD では顧客指定の暗号鍵は使用できません。

ローカル SSD でのデータの永続性

ローカル SSD データの永続性を読んで、ローカル SSD のデータがどのようなイベントでは保持され、どのようなイベントでは回復不能になるかを理解してください。

一般的な制限事項

  • 1 つのインスタンスにつき 375 GB のローカル SSD パーティションを最大 8 個の合計 3 TB のローカル SSD 領域を使用するインスタンスを作成できます。

  • ベータ版では、16 個または 24 個のローカル SSD パーティションを使用し、それぞれ 6 TB または 9 TB のローカル SSD 領域のインスタンスを作成できます。これは、すべての N1 マシンタイプとカスタム マシンタイプのインスタンスで使用できます。IOPS の上限を達成するには、32 個以上の vCPU を持つ VM インスタンスを使用します。

  • 共有コア マシンタイプのインスタンスは、ローカル SSD パーティションを接続できません。

ローカル SSD とマシンタイプ

別段の注記がない限り、Compute Engine で使用できるほとんどのマシンタイプにローカル SSD を接続できます。ただし、各マシンタイプに対して接続できるローカル SSD の数には上限があります。たとえば、2 つの vCPU を持つ N2 マシンタイプを使用する場合、次の表に示すように、1、2、4、8 個のローカル SSD パーティションをその VM に接続できます。3、5、6、7、16、24 個のパーティションは接続できません。

N1 マシンタイプ 1 つの VM インスタンスにつき許可されるローカル SSD パーティションの数
すべての N1 マシンタイプ 1~8、16、24
N2 マシンタイプ
2~10 個の vCPU を備えたマシンタイプ(境界を含む) 1、2、4、8
12~20 個の vCPU を備えたマシンタイプ(境界を含む) 2、4、8
22~40 個の vCPU を備えたマシンタイプ(境界を含む) 4、8
42~80 個の vCPU を備えたマシンタイプ(境界を含む) 8
N2D マシンタイプ
2~16 個の vCPU を備えたマシンタイプ(境界を含む) 1、2、4、8
32 または 48 個の vCPU を備えたマシンタイプ 2、4、8
64 または 80 個の vCPU を備えたマシンタイプ 4、8
96~224 個の vCPU を備えたマシンタイプ(境界を含む) 8
C2 マシンタイプ
4 または 8 個の vCPU を備えたマシンタイプ 1、2、4、8
16 個の vCPU を備えたマシンタイプ 2、4、8
30 個の vCPU を備えたマシンタイプ 4、8
60 個の vCPU を備えたマシンタイプ 8

ローカル SSD とプリエンプティブル VM インスタンス

ローカル SSD を備えたプリエンプティブル VM インスタンスを起動できます。その場合、Compute Engine により、ローカル SSD の使用に対してプリエンプティブル料金が課金されます。プリエンプティブル インスタンスに接続されたローカル SSD は、通常のローカル SSD と同様に動作し、同じデータ永続性特性を持ち、インスタンスが存続する間接続されます。プリエンプティブル ローカル SSD には個別の割り当てをリクエストできますが、プリエンプティブル ローカル SSD を作成するときに、通常のローカル SSD 割り当ての使用を選択することもできます。

Compute Engine は、実行開始してから 1 分以内にインスタンスがプリエンプティブルになった場合、ローカル SSD に対して課金しません。

ローカル SSD の詳細については、ローカル SSD の追加を参照してください。

確約利用割引でローカル SSD を予約する

特定のゾーンでローカル SSD リソースを予約する方法については、ゾーンリソースの予約をご覧ください。ローカル SSD の確約利用料金には予約が必要です。

Cloud Storage バケット

Cloud Storage バケットは、VM インスタンスで利用できる最も柔軟性、スケーラビリティ、耐久性の高いストレージオプションです。永続ディスクローカル SSD の低レイテンシをアプリが必要としない場合、Cloud Storage バケットにデータを保存できます。

レイテンシやスループットが重要ではなく、複数のインスタンスやゾーン間でデータを簡単に共有する必要がある場合は、インスタンスを Cloud Storage バケットに接続できます。

インスタンスを Cloud Storage バケットに接続する

パフォーマンス

Cloud Storage バケットのパフォーマンスは、ストレージ クラスの選択と、インスタンスに対する相対的なバケットのロケーションに依存します。

インスタンスと同じロケーションで使用される Standard Storage クラスのパフォーマンスは、永続ディスクに匹敵しますが、レイテンシが高く、スループット特性は安定していません。マルチリージョンのロケーションで使用される Standard Storage クラスの場合、より大きなマルチリージョン ロケーション内の少なくとも 2 つのリージョンにデータが保存され、冗長性が維持されます。

Nearline Storage クラスと Coldline Storage クラスは、基本的に長期間のデータ アーカイブ用に使用します。Standard Storage クラスとは異なり、これらのアーカイブ クラスの保存期間は短く、読み取りでコストがかかります。したがって、頻繁にアクセスされないデータの長期保存に最適です。

信頼性

すべての Cloud Storage バケットには冗長性が組み込まれており、機器の障害からデータが保護され、データセンターのメンテナンス中でもデータの可用性が保証されます。すべての Cloud Storage オペレーションに対してチェックサムが計算され、読み込まれた内容が確実に書き込まれます。

柔軟性

永続ディスクとは異なり、Cloud Storage バケットはインスタンスが存在するゾーンに限定されません。また、バケットのデータを複数のインスタンスで同時に読み書きできます。たとえば、複数のゾーンのインスタンスを、データをそれぞれのゾーンの永続ディスクに複製するのではなく、同じバケット内のデータを読み書きするように設定できます。

さらに、ファイル システムとしてインスタンスに Cloud Storage バケットをマウントできます。マウントされたバケットは、ファイルの読み書きに関して永続ディスクと同じように機能します。ただし、Cloud Storage バケットは、POSIX ファイル システムと同じ書き込み制約がないため、ブートディスクとして使用できないオブジェクト ストアです。あるインスタンスがファイルにデータを書き込むことで、ストレージ オブジェクトに同時にデータを書き込んでいる他のインスタンスの重要なデータが上書きされる可能性があります。

Cloud Storage の暗号化

Compute Engine は、データがインスタンスから Cloud Storage バケットに移動される前に、データを自動的に暗号化します。バケットに書き込む前に、インスタンス上のファイルを暗号化する必要はありません。

永続ディスクと同じように、顧客指定の暗号鍵でバケットを暗号化できます。

次のステップ