インスタンスの編集

このページでは、Cloud Console または gcloud ツールを使用して Filestore インスタンスを編集する方法について説明します。

作成後、Filestore インスタンスは次の方法で変更できます。

  • 容量を増やす。
  • 容量を減らす(エンタープライズ および高スケール SSD インスタンスのみ)。
  • 説明を変更する。
  • IP ベースのアクセス制御ルールを管理する。
  • ラベルを管理する(詳細については、ラベルの管理をご覧ください)。

容量のスケーリング

Filestore を使用する場合は、Filestore インスタンスの使用率をモニタリングし、必要に応じて容量を調整することをおすすめします。たとえば、高スケール階層のインスタンスで割り当てられた容量が不要になった場合は、スケールダウンすることを検討してください。同様に、容量の上限に達している場合は、アプリケーションが破損しないように容量をスケールアップする必要があります。ファイル システムの i ノードが不足している場合は、容量も追加する必要があります。i ノードの使用状況を確認するには、次のコマンドを実行します。

df -i

コマンドから次のような結果が返されます。

Filesystem           Inodes  IUsed      IFree  IUse%  Mounted on
10.0.0.2:/vol1    134217728     13  134217715     1%  /mnt/test

ファイル共有に保存されるファイルごとに 1 つの i ノードが消費されます。ファイル システムで i ノードが不足すると、割り当てられた最大容量に達していなくても、ファイル共有にファイルをさらに保存できなくなります。i ノードを追加するには、容量を追加する必要があります。ただし、i ノードの上限に達することはめったにありません。多数の小さなファイルを保存する必要がある場合にのみ、問題になります。

サービス階層ごとのスケーリング時の動作の違い

インスタンスをスケーリングしても可用性は影響しません。また、インスタンスの実行中にも実行できます。次の表は、サービス階層に基づいてファイル共有容量をスケーリングする方法を示しています。

サービスティア 基本 HDD 基本 SSD 高スケール SSD エンタープライズ
スケーリングの方向 スケールアップのみ スケールアップのみ スケールアップとスケールダウン スケールアップとスケールダウン
スケーリング単位 1GiB 1GiB 2.5TiB 256GiB
最小容量 1TiB 2.5TiB 10TiB 1TiB
最大容量 63.9TiB 63.9TiB 100TiB 10TiB

高スケール SSD とエンタープライズ インスタンスの容量をスケーリングするには、基本階層インスタンスよりも時間がかかることがあります。実際に必要となる時間は、インスタンスに格納されているデータの量と Filestore インスタンスの負荷によって異なります。インスタンスの容量が不足しないように、事前にこれらのオペレーションを実行してください。

スケーリング オペレーションの実行中にオペレーションをキャンセルする、またはインスタンスに対してその他の編集を行うことはできませんが、読み取りオペレーションと書き込みオペレーションが中断されることはありません。また、エンタープライズおよび高スケール SSD インスタンスを、既存のファイルデータとメタデータの保存に必要な容量レベルよりも低い容量レベルにスケーリングすることはできません。このような操作を行うと、エラーになります。

インスタンスの編集手順

Cloud Console

Cloud Console を使用して Filestore インスタンスを編集するには、[インスタンスの編集] ページに移動し、インスタンスの説明の編集、IP ベースのアクセス制御ルールの管理、ファイル共有パフォーマンスのスケーリングを行います。

  1. Cloud Console で、Filestore インスタンス ページに移動します。

    Filestore インスタンス ページに移動

  2. 編集するインスタンスのインスタンス ID をクリックします。

  3. [インスタンスの詳細] ページで、[編集] をクリックして [インスタンスの編集] ページに移動します。

  4. 必要に応じて、インスタンスの説明、IP ベースのアクセス制御ルール、容量を変更します。詳細については、インスタンスの作成をご覧ください。

  5. [保存] をクリックします。

gcloud

始める前に

gcloud ツールを使用するには、Cloud SDK をインストールするか、Cloud Console に組み込まれている Cloud Shell を使用する必要があります。

Cloud Console に移動

インスタンスを編集する gcloud コマンド

Filestore インスタンスを編集するには、instances update コマンドを実行します。IP ベースのアクセス制御の構成ルールを更新する必要がある場合は、--flags-file フラグを使用して、JSON 構成ファイルを指定する必要があります。この方法を選択した場合、-- file-share フラグはすでに JSON 構成ファイルに含まれているため、使用する必要はありません。また、高スケール SSD インスタンスを更新する場合は、gcloud beta filestore instances update コマンドを使用する必要があります。

 gcloud [beta] filestore instances update instance-id
     --[project="project-id"]
     --[location=location]
     --[file-share=name="file-share-name",capacity=file-share-size]
     --[description="instance-description"]
     --[flags-file=file-name.json]

ここで

  • instance-id は、編集する Filestore インスタンスのインスタンス ID です。
  • project-id は、Filestore インスタンスを含む Cloud プロジェクトのプロジェクト ID です。Filestore インスタンスが gcloud デフォルト プロジェクトにある場合は、このフラグを省略できます。デフォルトのプロジェクトを設定するには、次のコマンドを実行します。

     gcloud config set project project-id
    
  • location は、Filestore インスタンスが存在するロケーションです。Enterprise インスタンスの場合は、リージョンを指定します。それ以外のインスタンスの場合は、ゾーンを指定します。サポートされているゾーンのリストを取得するには、gcloud filestore zones list コマンドを実行します。Filestore インスタンスが gcloud デフォルト ゾーンにある場合は、このフラグを省略できます。デフォルト ゾーンを設定するには、次のコマンドを実行します。

     gcloud config set filestore/zone zone
    
  • file-share-name は、Filestore インスタンスから提供されるファイル共有の名前です。インスタンスの作成後は、ファイル共有名を変更できません。

  • file-share-size は、ファイル共有に使用する新しいサイズです。GiB(デフォルト)または TiB を使用して、整数でファイル共有サイズを指定できます。

    使用可能な割り当てを確認するには、Cloud Console の [割り当て] ページに移動します。

    [割り当て] ページに移動

  • instance-description は、Filestore インスタンスの説明であり、省略可能です。

  • file-name は、IP ベースのアクセス制御用の json 構成ファイルの名前です。

    json 構成ファイルの例:

     {
    "--file-share":
      {
        "capacity": "4096",
        "name": "my_vol",
        "nfs-export-options": [
          {
            "access-mode": "READ_WRITE",
            "ip-ranges": [
              "10.0.0.0",
              "10.2.0.0"
            ],
            "squash-mode": "ROOT_SQUASH",
            "anon_uid": 1003,
            "anon_gid": 1003
          },
           {
            "access-mode": "READ_ONLY",
            "ip-ranges": [
              "10.0.1.0/28"
            ],
            "squash-mode": "NO_ROOT_SQUASH"
          }
        ],
      }
    }
    

    ここで

    • ip-rangesは、アクセスを許可する IP アドレスまたは範囲です。複数の IP アドレスまたは範囲を指定するには、カンマで区切ります。例: 10.0.1.0,10.0.2.0,...
    • access-mode は、IP アドレスが ip-range 内にあるクライアントに付与するアクセスレベルです。値は READ_WRITE または READ_ONLY のいずれかに設定できます。デフォルト値は READ_WRITE です。
    • squash-mode の値は ROOT_SQUASH または NO_ROOT_SQUASH に設定できます。ROOT_SQUASH では、IP アドレスが ip-range 内のクライアントへのルートレベル アクセスが排除され、NO_ROOT_SQUASH では、ルートアクセスが有効にされます。デフォルト値は NO_ROOT_SQUASH です。
    • anon_uid は、anon_uid にマッピングするユーザー ID の値です。デフォルト値は 65534 です。
    • anon_gid は、anon_gid にマッピングするグループ ID の値です。デフォルト値は 65534 です。

次の例では、ファイル共有サイズを 3 TiB に増やして nfs-server インスタンスを更新します。

 gcloud filestore instances update nfs-server --zone=us-central1-c --file-share=name="vol1",capacity=3TiB

次のステップ