ストレージ オプション


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

  • 永続ディスク ボリュームは、高性能で冗長なネットワーク ストレージを提供します。各 Persistent Disk ボリュームは、数百の物理ディスク間でストライプ化されます。
    • デフォルトでは、VM はゾーンの Persistent Disk を使用し、us-west1-c などの単一のゾーン内にあるボリュームにデータを保存します。
    • また、リージョン Persistent Disk ボリュームを作成することもできます。これにより、2 つのゾーンにあるディスク間でデータを同期的に複製し、ゾーンが利用できなくなった場合の保護を行います。
  • Google Cloud Hyperdisk ボリュームには、Compute Engine 用に最速の冗長ネットワーク ストレージが用意されており、構成可能なパフォーマンスとボリュームを動的にサイズ変更できます。
  • ローカル SSD は、VM と同じサーバーに直接接続された物理ドライブです。パフォーマンスを改善できますが、一時的なものです。
  • Cloud Storage バケットには、手頃な料金のオブジェクト ストレージが用意されています。
  • Filestore を VM とともに使用して、高パフォーマンスのファイル ストレージを作成することもできます。

各ストレージ オプションは、固有の価格とパフォーマンスの特性を備えています。費用比較については、ディスクの料金体系を参照してください。どのオプションを使用すればよいか不明な場合について、最も一般的であるのは、インスタンスに Persistent Disk ボリュームを追加するソリューションです。

はじめに

Compute Engine の各インスタンスには、デフォルトでオペレーティング システムを格納しているブートディスクが 1 つあります。ブートディスク データは通常、Persistent Disk ボリュームに保存されます。アプリケーションに追加のストレージ容量が必要な場合は、次のストレージ ボリュームのうち 1 つ以上をインスタンスにプロビジョニングできます。

各ストレージ オプションの詳細については、次の表をご覧ください。

標準
Persistent Disk
バランス
Persistent Disk
SSD
Persistent Disk
エクストリーム
Persistent Disk
Hyperdisk Extreme Hyperdisk Throughput ローカル SSD Cloud Storage バケット
ストレージの種類 効率的で高信頼性のブロック ストレージ 費用対効果に優れた信頼性の高いブロック ストレージ 高速かつ高信頼性のブロック ストレージ カスタマイズ可能な IOPS を備えた、最高水準のパフォーマンスを実現する Persistent Disk ブロック ストレージ オプション カスタマイズ可能な IOPS を備えた、最速のブロック ストレージ オプション カスタマイズ可能なスループットでコスト効率に優れたスループット指向のブロック ストレージ 高パフォーマンスのローカル ブロック ストレージ 手頃な料金のオブジェクト ストレージ
ディスク 1 つあたりの最小容量 ゾーン: 10 GiB
リージョン: 200 GiB
ゾーン: 10 GiB
リージョン: 10 GiB
ゾーン: 10 GiB
リージョン: 10 GiB
500 GiB 64 GiB 2 TiB 375 GiB なし
ディスク 1 つあたりの最大容量 64 TiB 64 TiB 64 TiB 64 TiB 64 TiB 32 TiB 375 GiB なし
容量の増分 1 GiB 1 GiB 1 GiB 1 GiB 1 GiB 1 GiB マシンタイプに応じて異なる なし
インスタンスあたりの最大容量 257 TiB* 257 TiB* 257 TiB* 257 TiB* 257 TiB* 257 TiB* 9 TiB ほぼ無制限
アクセス範囲 ゾーン ゾーン ゾーン ゾーン ゾーン ゾーン インスタンス グローバル
データ冗長性 ゾーン、マルチゾーン ゾーン、マルチゾーン ゾーン、マルチゾーン ゾーン ゾーン ゾーン なし リージョン、デュアルリージョン、マルチリージョン
保存時の暗号化
カスタム暗号鍵 いいえ
入門 エクストリーム Persistent Disk を追加する Hyperdisk を追加する ローカル SSD を追加する バケットの接続

* 1 つのディスクの最大サイズを超える論理ボリュームの作成を検討している場合は、論理ボリューム サイズがパフォーマンスに与える影響について確認してください。

ローカル SSD の容量の増加は、VM ごとに許可される SSD ディスク(パーティション)の数(マシンタイプごとに異なる)によって異なります。詳細については、有効な数のローカル SSD を選択するをご覧ください。

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

各ブロック ストレージ リソースのパフォーマンス特性はそれぞれ異なります。VM インスタンスの適切なブロック ストレージ タイプを決定する際は、ストレージのサイズとパフォーマンスの要件を考慮してください。

各ディスクタイプのパフォーマンスの上限については、以下をご覧ください。

マルチライター モードで作成された Persistent Disk ボリュームには、特定の IOPS とスループットの上限があります。詳細については、マルチライター モードの Persistent Disk のパフォーマンスをご覧ください。

Persistent Disk

Persistent Disk のボリュームは長期的なネットワーク ストレージ デバイスです。パソコンやサーバーの物理ディスクと同様に VM からアクセスできます。各 Persistent Disk 上のデータは、複数の物理ディスクに分散されます。Compute Engine は物理ディスクとデータ分散を管理して、冗長性を保証し、最善のパフォーマンスを確保します。

Persistent Disk ボリュームは、仮想マシン(VM)インスタンスとは独立して配置されるため、インスタンスを削除した後であっても、Persistent Disk ボリュームを切断または移動してデータを保持できます。Persistent Disk のパフォーマンスはサイズに合わせて自動的に向上するため、既存の Persistent Disk のボリュームのサイズを変更するか、VM に Persistent Disk のボリュームを追加して、パフォーマンスとストレージ容量の要件を満たすことができます。

Persistent Disk のタイプ

永続ディスクを構成するときに、次のいずれかのディスクタイプを選択できます。

  • バランス永続ディスクpd-balanced
    • パフォーマンス(pd-ssd)永続ディスクの代替
    • パフォーマンスと費用のバランス。大規模なものを除き、ほとんどの VM シェイプの場合、これらのディスクの最大 IOPS は SSD 永続ディスクと同じですが、GB あたりの IOPS は小さくなります。このディスクタイプは、ほとんどの汎用アプリケーションに適したパフォーマンスを標準永続ディスクとパフォーマンス(pd-ssd)永続ディスクの中間の価格で提供します。
    • ソリッド ステート ドライブ(SSD)によるバックアップ。
  • パフォーマンス(SSD)永続ディスクpd-ssd
    • 標準永続ディスクの場合よりも低いレイテンシと、より多くの IOPS を必要とするエンタープライズ アプリケーションや高性能データベースに適しています。
    • レイテンシが 10 ミリ秒未満となるよう設計されています。測定されるレイテンシはアプリケーション固有のものです。
    • ソリッド ステート ドライブ(SSD)によるバックアップ。
  • 標準永続ディスクpd-standard
    • 主に順次 I/O を使用する大規模なデータ処理ワークロードに適しています
    • 標準ハードディスク ドライブ(HDD)によるバックアップ。
  • エクストリーム永続ディスクpd-extreme
    • ランダム アクセス ワークロードとバルク スループットの両方に対応し、常に高パフォーマンスを発揮します
    • ハイエンド データベースのワークロード向けに設計。
    • ターゲット IOPS をプロビジョニング可能。
    • ソリッド ステート ドライブ(SSD)によるバックアップ。
    • 限られた数のマシンタイプでのみ使用できます。

Google Cloud コンソール でディスクを作成する場合、デフォルトのディスクタイプは pd-balanced です。gcloud CLI または Compute Engine API を使用してディスクを作成する場合、デフォルトのディスクタイプは pd-standard です。

マシンタイプのサポートについては、以下をご覧ください。

Persistent Disk の耐久性

ディスクの耐久性は、ハードウェアの障害、壊滅的なイベント、Google データセンターでの隔離方法とエンジニアリング プロセス、各ディスクタイプで使用される内部エンコードによって、通常の 1 年間に一般的なディスクでデータ損失が発生する可能性を表します。Persistent Disk のデータ損失が発生することは極めて稀ですが、これまで発生したケースを見ると、調整済みのハードウェアの故障、ソフトウェアのバグ、またはその 2 つが原因で発生しています。また、Google は、業界全体のサイレント データ破損のリスクを軽減するために多くの対策を講じています。お客様が誤ってディスクを削除した場合など、Google Cloud のユーザーによるエラーは、Persistent Disk の耐久性の対象外です。

リージョン永続ディスクでは、内部データのエンコードとレプリケーションにより、データ損失が生じるリスクはほとんどありません。リージョン Persistent Disk はゾーン Persistent Disk の 2 倍のレプリカを備えています。レプリカは、同じリージョン内の 2 つのゾーンに分散されます。これにより、高可用性を実現し、データセンター全体が消失して復元できない場合でも(ただし、この現象はこれまで発生したことはありません)、障害復旧に使用できます。長期間のサービス停止中にプライマリ ゾーンが使用不能になった場合は、2 番目のゾーンの追加レプリカに直ちにアクセスできます。

耐久性はディスクタイプごとに集計されたものであり、返金制度のあるサービスレベル契約(SLA)を表すものではありません。

以下の表は、ディスクタイプごとの耐久性を示しています。99.999% の耐久性とは、1,000 枚のディスクがあれば、100 年間 1 枚も失わずに済む可能性があるということです。

ゾーン標準 Persistent Disk ゾーンバランス Persistent Disk ゾーン SSD Persistent Disk ゾーン エクストリーム Persistent Disk リージョン標準 Persistent Disk リージョン バランス Persistent Disk リージョン SSD Persistent Disk
99.99% を上回る 99.999% を上回る 99.999% を上回る 99.9999% を上回る 99.999% を上回る 99.9999% を上回る 99.9999% を上回る

ゾーン Persistent Disk

使いやすさ

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

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

Persistent Disk ボリュームに追加の容量が必要な場合は、再パーティショニングしてフォーマットするのではなく、ディスクのサイズを変更します。

パフォーマンス

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

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

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

ブートデバイスの場合は、標準の Persistent Disk を使用してコストを削減できます。小規模な 10 GiB の Persistent Disk ボリュームは、基本的なブートおよびパッケージ管理のユースケースに適しています。ただし、ブートデバイスの一般的な使用で一貫したパフォーマンスを確保するには、ブートディスクとしてバランス Persistent Disk を使用します。

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

信頼性

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

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

マルチライター モード

マルチライター モードでは SSD Persistent Disk を同時に最大 2 個の N2 VM にアタッチできるため、両方の VM でディスクの読み取りと書き込みが可能になります。

マルチライター モードの Persistent Disk は、共有ブロック ストレージ機能を備えており、高可用性の共有ファイル システムとデータベースを構築するためのインフラストラクチャ基盤としての役割を果たします。これらの専用ファイル システムとデータベースは、SCSI Persistent Reservations などのツールを使用して、共有ブロック ストレージと連携し、VM 間のキャッシュの不整合を処理するように設計する必要があります。

ただし、マルチライター モードの Persistent Disk は通常直接使用しないでください。また、EXT4、XFS、NTFS などの多くのファイル システムは共有ブロック ストレージで使用するようには設計されていない点について留意する必要があります。VM 間で Persistent Disk を共有するためのベスト プラクティスについては、ベスト プラクティスをご覧ください。

フルマネージドのファイル ストレージが必要な場合は、Compute Engine VM に Filestore ファイル共有をマウントできます。

新しい Persistent Disk ボリュームでマルチライター モードを有効にするには、新しい Persistent Disk を作成し、gcloud CLI に --multi-writer フラグを指定するか、Compute Engine API に multiWriter プロパティを指定します。詳細については、VM 間での Persistent Disk ボリュームの共有をご覧ください。

Persistent Disk の暗号化

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

Persistent Disk ボリュームを削除すると、Google は暗号鍵を破棄し、データを回復不能にします。このプロセスは元に戻せません。

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

制限事項

  • 別のプロジェクトの VM に Persistent Disk ボリュームをアタッチすることはできません。

  • 最大 10 個の VM インスタンスにバランス Persistent Disk を読み取り専用モードでアタッチできます。

  • カスタム マシンタイプか、最小 1 vCPU の事前定義されたマシンタイプの場合、最大で 128 個の Persistent Disk ボリュームをアタッチできます。

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

  • ほとんどのインスタンスで最大 128 TiB のPersistent Disk と、最大 257 TiB のディスク容量を接続できます。VM の合計ディスク容量には、ブートディスクのサイズが含まれます。

  • 共有コア マシンタイプは 16 個の Persistent Disk ボリュームと合計 3 TiB の Persistent Disk スペースに制限されます。

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

リージョン Persistent Disk

リージョン Persistent Disk ボリュームのストレージ品質は、ゾーン Persistent Disk と同様です。ただし、リージョン Persistent Disk ボリュームを使用すると、同じリージョン内の 2 つのゾーン間で耐久性の高いデータ ストレージとデ