エクストリーム永続ディスク


高性能で重要なアプリケーションの場合は、エクストリーム永続ディスクを使用してください。エクストリーム永続ディスクは最大 IOPS とスループットがより高いことが特徴で、IOPS と容量を個別にプロビジョニングできます。エクストリーム永続ディスクはすべてのゾーンで使用できます。

エクストリーム永続ディスクを作成する場合は、2,500~120,000 IOPS の範囲で必要な IOPS レベルを選択できます。このドキュメントでは、エクストリーム永続ディスクを使用するうえでの重要な制限、最大限のパフォーマンス レベルに到達するうえでの考慮事項、Google Cloud コンソール、gcloud CLI または REST を使用した IOPS のプロビジョニングの方法を説明します。

始める前に

  • まだ設定していない場合は、認証を設定します。認証とは、Google Cloud サービスと API にアクセスするために ID を確認するプロセスです。ローカル開発環境からコードまたはサンプルを実行するには、次のように Compute Engine に対する認証を行います。

    このページのサンプルをどのように使うかに応じて、タブを選択してください。

    コンソール

    Google Cloud コンソールを使用して Google Cloud サービスと API にアクセスする場合、認証を設定する必要はありません。

    gcloud

    1. Google Cloud CLI をインストールし、次のコマンドを実行して初期化します。

      gcloud init
    2. デフォルトのリージョンとゾーンを設定します

    REST

    このページの REST API サンプルをローカル開発環境で使用するには、gcloud CLI に指定した認証情報を使用します。

      Google Cloud CLI をインストールし、次のコマンドを実行して初期化します。

      gcloud init

マシンの形のサポート

エクストリーム永続ディスクの最大パフォーマンス レベルを達成するには、M2、M3、N2-64 あるいはそれ以上の、大規模なマシンタイプの仮想マシン(VM)インスタンスにエクストリーム永続ディスクをアタッチする必要があります。

その他のマシンタイプは本番環境でサポートされていません。サポートされていないマシンの形を使用して VM にエクストリーム永続ディスクをアタッチすることもできますが、ディスクのパフォーマンスは、プロビジョニングした IOPS の数か、SSD 永続ディスクの IOPS レベルのいずれか低いほうになります。

64 個または 80 個の vCPU を搭載した N2 VM の場合、上記のパフォーマンスの上限に到達するには Intel Ice Lake CPU プラットフォームが必要です。Intel Cascade Lake CPU プラットフォームを使用する N2 VM は、パフォーマンスが若干低くなります。詳細については、VM インスタンスの最小 CPU プラットフォームの設定をご覧ください。

次の表に、サポートされているマシンタイプのエクストリーム Persistent Disk のパフォーマンス上限を示します。

マシンタイプ vCPU 数 最大 IOPS 最大読み取りスループット(MB/秒) 最大書き込みスループット(MB/秒)
N2 Intel Cascade Lake では 64 または 80 120,000 2,200 2,200
Intel Ice Lake で 64 以上 120,000 4,000 3,000
M2 208 60,000 2,200 2,200
416 40,000 2,200 1,200
M3 64 以下 40,000 2,200 1,200
128 80,000 2,200 1,700

パフォーマンスの上限とワークロード パターン

エクストリーム永続ディスクで提供される最大パフォーマンス レベルを達成するには、次のワークロード パラメータを検討する必要があります。

  • I/O サイズ: IOPS の上限は、I/O サイズが 4 KB または 8 KB であることを前提としています。最大スループットの上限は 1 MB の I/O サイズを前提としています。
  • キューの長さ: キューの長さは永続ディスクに対する保留中のリクエストの数です。最大パフォーマンスの上限を達成するには、ワークロードの I/O サイズ、IOPS、レイテンシ感度に応じてキューの長さを調整する必要があります。最適なキューの長さはワークロードによって異なりますが、一般的には 128 より大きくする必要があります。
  • ワーキング セット サイズ: ワーキング セットのサイズは、短時間にアクセスされるディスクデータの量を表します。最適なパフォーマンスを達成するには、ワーキング セットのサイズを 1.5 TB 未満に制限します。
  • 他の永続ディスクの同時使用: エクストリーム永続ディスクは、VM ごとの最大 IOPS とスループットの上限を同じ VM にアタッチしている他の永続ディスクと共有します。エクストリーム永続ディスクのパフォーマンスをモニタリングする際には、同じ VM にアタッチしている他のディスクに送信する I/O リクエストを考慮する必要があります。

その他の制限

  • エクストリーム永続ディスクはゾーンのみで機能します。リージョンにエクストリーム永続ディスクは作成できません。
  • エクストリーム永続ディスクに複数の読み取り専用 VM インスタンスをアタッチすることはできません。
  • エクストリーム永続ディスクからイメージまたはマシンイメージを作成することはできません。
  • エクストリーム永続ディスクのクローンを作成することはできません。
  • エクストリーム Persistent Disk のサイズは、6 時間に 1 回のみ変更できます。

スループット

エクストリーム永続ディスクの場合、スループットは、I/O あたり 256 KB のスループットのレートでプロビジョニングする IOPS 数に応じてスケーリングされます。ただし、最終的にスループットには、エクストリーム ディスクがアタッチされている VM インスタンスの vCPU の数に依存するインスタンスごとの上限があります。

エクストリーム永続ディスクのスループットは全二重ではありません。このドキュメントに記載されている最大スループット制限は、読み取り / 書き込みスループットの合計に適用されます。

IOPS のプロビジョニング

ワークロードの要件に合わせて IOPS をプロビジョニングする手順は次のとおりです。

  1. ワークロードの IOPS 要件に確認してください。
  2. ワークロードのスループット要件を満たすために必要な IOPS を決定します。
    • 必要な IOPS = 1 秒あたりのスループット(KB)÷ 256
  3. プロビジョニングされた IOPS を 2 つの数値よりも大きくします。

Console

  1. 新しい永続ディスクを作成します。
  2. [ディスクタイプ] で [エクストリーム永続ディスク] を選択します。
  3. [プロビジョニングされた IOPS] で、目的の IOPS 上限を 2,500~120,000 IOPS の範囲から選択します。プロビジョニングされた IOPS に関連する費用が発生します。

gcloud

gcloud compute disks create コマンドを使用して新しいディスクを作成し、次のフラグを含めます。

gcloud compute disks create DISK_NAME \
  --size=DISK_SIZE \
  --type=pd-extreme \
  --provisioned-iops=IOPS_LIMIT

次のように置き換えます。

  • DISK_NAME: 新しいディスクの名前
  • DISK_SIZE: 新しいディスクのサイズ(GB)エクストリーム永続ディスクのデフォルトのディスクサイズは 1,000 GB です。
  • IOPS_LIMIT: 2,500~120,000 IOPS の範囲での最大 IOPS の上限。プロビジョニングされた IOPS に関連する費用が発生します。

REST

disks.insert メソッドを使用して新しいディスクを作成し、次のフラグを含めます。

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/disks

{
 "name": "DISK_NAME",
 "type": "zones/ZONE/diskTypes/pd-extreme"
 "provisionedIops": "IOPS_LIMIT"
}

次のように置き換えます。

  • PROJECT_ID: プロジェクト ID
  • ZONE: ディスクのターゲット ゾーン
  • DISK_NAME: ディスクの名前
  • IOPS_LIMIT: 2,500~120,000 IOPS の範囲での最大 IOPS の上限。プロビジョニングされた IOPS に関連する費用が発生します。

次のステップ