ストレージ オプション

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

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

はじめに

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

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

Google Cloud Platform 提供のストレージ オプションに加えて、代替ストレージ ソリューションをインスタンスにデプロイできます。

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

ゾーン標準
永続ディスク
リージョン
永続
ディスク
ゾーン
SSD 永続ディスク
リージョン
SSD 永続
ディスク
ローカル SSD(SCSI) ローカル SSD(NVMe)
最大持続 IOPS
読み取り IOPS/GB 0.75 0.75 30 30 266.7 453.3
書き込み IOPS/GB 1.5 1.5 30 30 186.7 240
読み取り IOPS/インスタンス 3,000 3,000 15,000~60,000* 15,000~60,000* 400,000 680,000
書き込み IOPS/インスタンス 15,000 15,000 15,000~30,000* 15,000~30,000* 280,000 360,000
最大持続スループット(MB/秒)
読み取りスループット/GB 0.12 0.12 0.48 0.48 1.04 1.77
書き込みスループット/GB 0.12 0.12 0.48 0.48 0.73 0.94
インスタンスごとの読み取りスループット 240 240 240~1,200* 240~1,200* 1,560 2,650
インスタンスごとの書き込みスループット 76~240** 38~200** 76~400* 38~200* 1,090 1,400

* SSD 永続ディスクでは、vCPU の数が多いほど、インスタンスで達成できる IOPS とスループットのパフォーマンスが高くなります。詳しくは、SSD 永続ディスクのパフォーマンスの限界をご覧ください。

** SSD および標準永続ディスクでは、vCPU の数が多いほど、インスタンスで達成できるスループットのパフォーマンスが高くなります。詳しくは、書き込みスループットの下りネットワーク上限をご覧ください。

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

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

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

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

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

使いやすさ

Compute Engine はほとんどのディスク管理タスクを自動的に処理するので、デベロッパーはパーティショニング、冗長ディスクアレイ、サブボリューム管理などについて考える必要はありません。必要であればこれらの手法を永続ディスクに適用できますが、単一ファイル システムとパーティション テーブルなしで永続ディスクをフォーマットすれば、時間を節約し、最高のパフォーマンスを実現できます。データを複数の固有ボリュームに分ける必要がある場合は、既存のディスクを複数のパーティションに分割するのではなく、追加ディスクを作成します。

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

パフォーマンス

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

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

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

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

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

信頼性

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

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

永続ディスクの暗号化

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

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

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

上限

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

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

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

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

  • ほとんどのインスタンスは、最大 64 TB の永続ディスク合計容量を使用できます。 共有コア マシンタイプは、合計 3 TB の永続ディスク容量に制限されています。1 つのインスタンスの永続ディスクの合計容量には、ブート永続ディスクのサイズが含まれます。

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

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

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

万一ゾーンが停止した場合でも、force-attach コマンドを使用して、リージョン永続ディスク上で実行されているワークロードを別のゾーンにフェイルオーバーできます。force-attach コマンドを実行すると、使用できないためにリージョン永続ディスクを元の VM から切り離すことができない場合でも、このディスクをスタンバイ VM インスタンスに接続できます。

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

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

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

パフォーマンス

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

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

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

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

信頼性

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

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

上限

ローカル SSD

ローカル SSD は、仮想マシンのインスタンスをホストするサーバーに物理的に接続されます。標準永続ディスクまたは SSD 永続ディスクよりローカル SSD の方が高スループットで低レイテンシです。ローカル SSD に格納されたデータが保持されるのは、インスタンスが停止または削除されるまでのみです。各ローカル SSD のサイズは 375 GB ですが、インスタンスごとに最大 8 個のローカル SSD 端末を接続して、3 TB の合計ローカル SSD ストレージ容量を利用できます。

高速のスクラッチ ディスクまたはキャッシュが必要であり、インスタンス メモリを使用するのが望ましくない場合は、ローカル SSD でインスタンスを作成します。また、ワークロード自体が複数のインスタンスに複製されるときも、ローカル SSD を使用します。

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

パフォーマンス

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

ローカル SSD のパフォーマンスは、インターフェースの選択に大きく依存します。ローカル SSD は、SCSI および NVMe の両方のインターフェースで利用できます。NVMe を選択する場合は、特別な NVMe 対応のイメージを使用して、最善のパフォーマンスを実現する必要があります。詳しくは、ディスク インターフェース タイプの選択に関する記事をご覧ください。

ローカル SSD の暗号化

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

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

ローカル SSD に格納されたデータが保持されるのは、インスタンスが停止または削除されるまでのみです。

ローカル SSD 上のデータは、ライブ移行イベントの間も存続します。Compute Engine は、ローカル SSD を使用するインスタンスを移行する場合、短時間のパフォーマンス低下のみで、ローカル SSD から新しいインスタンスにデータをコピーします。

上限

  • 最大 8 個の 375 GB ローカル SSD パーティションを使用してインスタンスを作成でき、各インスタンスは 3 TB のローカル SSD 容量を利用できます。

  • ローカル SSD のパフォーマンスは、保存容量の合計が 1.5 TB に達するまで向上します。1.5 TB を超えると、スループットと IOPS は向上しなくなります。

  • 共有コア マシンタイプのインスタンスに、ローカル SSD デバイスを接続することはできません。

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

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

インスタンスの実行が開始されてから 1 分以内にインスタンスがプリエンプトされた場合、Compute Engine ではローカル SSD に対する課金は行いません。

ローカル SSD の詳細については、ローカル SSD のドキュメントをご覧ください。

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

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

Google Cloud Storage バケット

Google Cloud Storage バケットは、仮想マシン インスタンスに対する最も柔軟で、スケーラブルで、長期的なストレージ オプションです。永続ディスクローカル SSD が低レイテンシであることを必要としないアプリケーションの場合は、データを Cloud Storage バケットに格納できます。

レイテンシとスループットの優先度が低く、複数のインスタンスまたはゾーンの間でデータを簡単に共有する必要があるときは、インスタンスを Cloud Storage バケットに接続します。

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

パフォーマンス

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

Regional Storage クラスのパフォーマンスは永続ディスクに匹敵しますが、レイテンシは高く、スループット特定は安定しません。Multi-Regional Storage クラスの場合、マルチリージョンの 2 つ以上のロケーションにデータが保存され、冗長性が維持されます。

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

信頼性

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

柔軟性

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

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

Cloud Storage の暗号化

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

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

次のステップ

このページは役立ちましたか?評価をお願いいたします。

フィードバックを送信...

Compute Engine ドキュメント