カスタム パフォーマンス

カスタム パフォーマンスを使用すると、指定された容量とは別に Filestore インスタンスのパフォーマンス設定を定義できます。つまり、ワークロードの要件に合わせて Filestore インスタンスを最適化し、容量のサイズを変更することなく、アプリケーションの需要に合わせてファイル共有をスケーリングできます。

Google Cloud コンソールを使用して Filestore ゾーン インスタンスとリージョン インスタンスを作成する場合、カスタム パフォーマンスはパフォーマンスを構成するためのデフォルトのメカニズムです。

読み取り / 書き込み IOPS

ファイル システム用に購入した IOPS の 100% を、読み取りオペレーションと書き込みオペレーションの組み合わせに使用できます。読み取りオペレーションと書き込みオペレーションの重みは異なります。読み取りオペレーションは購入した IOPS から 1 回のオペレーションを消費しますが、書き込みオペレーションは購入した IOPS から 3.33 IOPS を消費します。

たとえば、ファイル システムが購入した IOPS の 33% を読み取りオペレーションに使用している場合、購入した IOPS の最大 67% を書き込みオペレーションに同時に使用できます。この場合、購入した IOPS は書き込みごとに 3.33 の比率で使用されます。

カスタム パフォーマンスは、容量範囲やサービス階層(リージョンまたはゾーン)に関係なく、購入した IOPS 1,000 個あたり最大 100 個のクライアント接続をサポートします。

バックアップ オペレーションなど、複製されたデータから発生した IOPS は、ユーザーが購入した IOPS にはカウントされません。

IOPS の計算例

4,000 IOPS を購入したとします。

  • 読み取り IOPS に使用する場合は、最大 4,000 の読み取り IOPS にアクセスできます。
  • 書き込み IOPS に使用する場合は、最大 1,200 の書き込み IOPS にアクセスできます。
  • 書き込みオペレーションに 900 IOPS を使用する場合、IOPS 予算の 3,000 が実質的に使用され、読み取りオペレーションには 1,000 IOPS が残ります。

IOPS またはスループットを増やす必要がある場合は、購入した IOPS レートを増やすことができます。

カスタム パフォーマンスを構成する

すでにカスタム パフォーマンスをサポートしているゾーン インスタンスとリージョン インスタンスにカスタム パフォーマンスを設定できます。この機能は、基本階層ではサポートされていません。

カスタム パフォーマンス インスタンスの課金は、カスタム パフォーマンスが構成されていないインスタンスとは異なります。詳細については、Filestore の料金をご覧ください。

カスタム パフォーマンスを構成するには、次のオプションがあります。

  • IOPS がインスタンスのサイズに比例してスケーリングされる TiB あたりの IOPS 比率を設定します。
  • 固定 IOPS レートを設定します。インスタンス サイズに関係なく、レートは一定です。

Google Cloud コンソールでインスタンスを作成すると、カスタム パフォーマンスがデフォルトで有効になり、ワークロードとスケールに基づいてパフォーマンスを構成できます。特定の IOPS 値を指定しない場合は、推奨されるデフォルトのレートが使用されます。カスタム パフォーマンスをオプトアウトできますが、インスタンスの作成前にオプトアウトする必要があります。この設定は永続的であり、後で変更することはできません。

カスタム パフォーマンスの設定の詳細については、インスタンスの作成をご覧ください。

GKE のカスタム パフォーマンスの詳細については、Filestore CSI ドライバをご覧ください。

カスタム パフォーマンスのステータスを確認する

カスタム パフォーマンス ステータスを確認するには、次の手順に沿って操作します。

Google Cloud コンソール

  1. Google Cloud コンソールで [インスタンス] ページに移動します。

    [インスタンス] に移動

  2. [インスタンス ID] をクリックして、[インスタンスの詳細] ページを開きます。

  3. [概要] タブに移動し、[カスタム パフォーマンス] エントリを探します。

    • 対象外とは、特定のインスタンスでカスタム パフォーマンスがサポートされていないことを意味します。たとえば、基本階層のインスタンスを作成する場合や、この機能がリリースされる前にインスタンスが作成された場合などです。
    • [有効] は、このインスタンスでカスタム パフォーマンスがサポートされ、有効になっていることを意味します。
    • 「無効」は、カスタム パフォーマンスがサポートされているが、このインスタンスでは有効になっていないことを意味します。

gcloud

instances describe コマンドを実行して、Filestore インスタンスに関する情報を取得します。

    gcloud filestore instances describe INSTANCE_ID --project=PROJECT_ID --location=LOCATION

出力はインスタンスの設定によって異なる場合があります。出力例を次に示します。

    createTime: '2021-10-11T17:28:23.340943077Z'
    customPerformanceSupported: true
    fileShares:
    - capacityGb: '1024'
    name: vol1
    kmsKeyName: projects/example-project/locations/us-central1/keyRings/example-ring/cryptoKeys/example-key
    labels:
    key:val
    name: projects/yourproject/locations/us-central1/instances/nfs-server
    networks:
    - ipAddresses:
    - 10.0.0.2
    network: default
    reservedIpRange: 10.0.0.0/26
    performanceConfig:
      iopsPerTb:
        maxIopsPerTb: '17000'
    performanceLimits:
      maxIops: '17000'
      maxReadIops: '17000'
      maxReadThroughputBps: '417792000'
      maxWriteIops: '5100'
      maxWriteThroughputBps: '139264000'
    state: READY
    tier: REGIONAL
  • customPerformanceSupported パラメータが存在し、true に設定されている場合、このインスタンスでカスタム パフォーマンスがサポートされていることを意味します。フラグがない場合、カスタム パフォーマンスは対象外です。

  • performanceConfig パラメータが存在する場合、このインスタンスでカスタム パフォーマンスが有効になっていることを意味します。

REST API

  1. gcloud CLI のインストールと初期化を行います。これにより、Authorization ヘッダーのアクセス トークンを生成できます。

  2. cURL を使用して、Filestore API を呼び出します。

    curl -s \
      --header "Authorization: Bearer $(gcloud auth print-access-token)" \
      --header "Content-Type: application/json" \
      GET "https://file.googleapis.com/v1beta1/projects/PROJECT/locations/LOCATION/instances/INSTANCE_NAME"

    ここで

    • PROJECT は、インスタンスが配置されているプロジェクトの名前です。例: my-project
    • LOCATION は、インスタンスが存在するロケーションです。例: us-central1-a
    • INSTANCE_NAME は、表示するインスタンスの名前です。例: nfs-server

    カスタム パフォーマンスがサポートされていて、指定されたインスタンス用に構成されている場合、レスポンスには次のパラメータが含まれます。

     "customPerformanceSupported": true,
      "performanceConfig": {
        "fixedIops": {
          "maxIops": "9000"
        }
      },
      "performanceLimits": {
        "maxReadIops": "9000",
        "maxWriteIops": "2700",
        "maxReadThroughputBps": "221184000",
        "maxWriteThroughputBps": "73728000",
        "maxIops": "9000"
      }
    

カスタム パフォーマンス計算

次の表に、TiB あたりのプロビジョニングされた IOPS と割り当てられた容量に基づくパフォーマンスの計算を示します。計算はさまざまな容量範囲に基づいて行われ、TiB あたりの最小 IOPS 値と最大 IOPS 値に対して、読み取り IOPS、書き込み IOPS、読み取りスループット、書き込みスループットの値がどのように変化するかを示します。

詳細については、このドキュメントの読み取り / 書き込み IOPS をご覧ください。

リージョン ティアのカスタム パフォーマンスの例
1 TiB あたりのプロビジョニングされた IOPS 容量(GiB) 読み取り IOPS 書き込み IOPS 読み取りスループット(MiBps) 書き込みスループット(MiBps)
4,000 100 2,000* 600 47 16
600 2,344 703 55 19
1,024 4,000 1,200 94 32
10,239 39,996 11,999 940 320
17,000 100 2,000 600 47 16
600 9,961 2,988 234 80
1,024 17,000 5,100 400 136
10,239 169,983 50,995 3,995 1,360

* インスタンスが配置されているリージョンで小容量インスタンスを使用できる場合、リージョン インスタンスの容量の範囲は 100 GiB ~ 10,239 GiB です。それ以外の場合、範囲は 1 TiB ~ 9.75 TiB です。詳細については、小容量インスタンスをご覧ください。

カスタム パフォーマンスが有効になっていない場合のパフォーマンスの上限の詳細については、パフォーマンスの上限をご覧ください。

モニタリング

インスタンスの IOPS 使用状況をモニタリングするには、Metrics Explorer を使用して、read_ops_countwrite_ops_countmetadata_ops_count の各指標を表示します。

詳細については、インスタンスのモニタリングをご覧ください。

次のステップ