このページでは、Google Cloud コンソールまたは gcloud CLI を使用して Filestore インスタンスを編集する方法について説明します。
作成後、Filestore インスタンスは次の方法で変更できます。
- 容量を増やす
- 次のサービス階層の容量を減らす。
- ゾーン
- リージョン
- Enterprise
- パフォーマンスを構成する
- 説明を変更する
- IP ベースのアクセス制御ルールを管理する
- ラベルを管理する
- 詳細については、ラベルの管理をご覧ください。
容量のスケーリングの詳細については、容量をスケーリングするをご覧ください。
インスタンスの IP アドレスなど、特定の仕様は不変です。
インスタンスの編集手順
Google Cloud コンソール
Google Cloud コンソールを使用して Filestore インスタンスを編集するには、[インスタンスの編集] ページに移動し、インスタンスの説明の編集、IP ベースのアクセス制御ルールの管理、ファイル共有パフォーマンスのスケーリングを行います。
Google Cloud コンソールで、[Filestore インスタンス] ページに移動します。
編集するインスタンスのインスタンス ID をクリックします。
[インスタンスの詳細] ページで、[編集] をクリックして [インスタンスの編集] ページに移動します。
必要に応じて、インスタンスの説明、IP ベースのアクセス制御ルール、容量を変更します。詳細については、インスタンスの作成をご覧ください。
[保存] をクリックします。
gcloud
始める前に
gcloud CLI を使用するには、gcloud CLI をインストールするか、 Google Cloud コンソールに組み込まれている Cloud Shell を使用する必要があります。
インスタンスを編集するための gcloud
コマンド
Filestore インスタンスを編集するには、instances
update
コマンドを実行します。IP ベースのアクセス制御の構成ルールを更新する必要がある場合は、--flags-file
フラグを使用して、JSON 構成ファイルを指定する必要があります。この方法を選択した場合、--file-share
フラグはすでに JSON 構成ファイルに含まれているため、使用する必要はありません。
gcloud filestore instances update INSTANCE_ID
--[project="PROJECT_ID"]
--[location=LOCATION]
--[performance=PERFORMANCE] \
--[file-share=name="FILE_SHARE_NAME",CAPACITY=FILE_SHARE_SIZE]
--[description="DESCRIPTION"]
--[flags-file=FILE_NAME.json]
ここで
- INSTANCE_ID は、編集する Filestore インスタンスのインスタンス ID です。
PROJECT_ID は、Filestore インスタンスを含む Google Cloud プロジェクトのプロジェクト ID です。Filestore インスタンスが
gcloud
デフォルト プロジェクトにある場合は、このフラグを省略できます。デフォルトのプロジェクトを設定するには、次のコマンドを実行します。gcloud config set project project-id
LOCATION は、Filestore インスタンスが存在するロケーションです。リージョン インスタンスとエンタープライズ インスタンスの場合は、リージョンを指定します。その他のすべてのインスタンスの場合は、ゾーンを指定します。サポートされているゾーンのリストを取得するには、
gcloud filestore zones list
コマンドを実行します。Filestore インスタンスがgcloud
デフォルト ゾーンにある場合は、このフラグを省略できます。デフォルト ゾーンを設定するには、次のコマンドを実行します。gcloud config set filestore/zone zone
PERFORMANCE は、選択した容量とは別にカスタムのパフォーマンス設定を指定するために使用されるパフォーマンス構成です。
次のいずれかの方法のみを使用できます。
max-iops-per-tb
には、インスタンス容量に比例してスケーリングされる 1 TiB あたりの IOPS レートを指定します。max-iops
は、インスタンス容量に応じてスケーリングされない固定の IOPS レートを指定します。形式は次のとおりです。
--performance=max-iops-per-tb=17000
FILE_SHARE_NAME は、Filestore インスタンスから提供されるファイル共有の名前です。インスタンスの作成後は、ファイル共有名を変更できません。
FILE_SHARE_SIZE は、ファイル共有に使用する新しいサイズです。
GiB
(デフォルト)またはTiB
を使用して、整数でファイル共有サイズを指定できます。使用可能な割り当てを確認するには、 Google Cloud コンソールの [割り当て] ページに移動します。
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 アドレスまたは IP アドレス範囲を指定するには、カンマで区切ります。次のサービス階層だけが、重複する IP アドレス範囲の構成設定をサポートしています。
- ゾーン
- リージョン
- Enterprise
- 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
です。
- ip-rangesは、アクセスを許可する IP アドレスまたは範囲です。複数の IP アドレスまたは IP アドレス範囲を指定するには、カンマで区切ります。次のサービス階層だけが、重複する IP アドレス範囲の構成設定をサポートしています。
例
次の例では、ファイル共有サイズを 3 TiB
に増やして nfs-server
インスタンスを更新します。
gcloud filestore instances update nfs-server --zone=us-central1-c --file-share=name="vol1",capacity=3TiB
```
REST API
gcloud CLI のインストールと初期化を行います。これにより、
Authorization
ヘッダーのアクセス トークンを生成できます。cURL
を使用 して Filestore API を呼び出します。curl --request PATCH \ 'https://file.googleapis.com/v1/projects/PROJECT/locations/LOCATION/instances?instanceId=NAME?updateMask=performanceConfig%2CdeletionProtectionReason%2CdeletionProtectionEnabled&key=YOUR_API_KEY' \ --header "Authorization: Bearer $(gcloud auth print-access-token)" \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --data '{ "tier":"TIER", "networks":[ { "network":"NETWORK" } ], "performanceConfig": {"PERFORMANCE"} "fileShares":[ {"capacityGb":CAPACITY,"name":"SHARE_NAME"} ], "deletionProtectionEnabled": true, "deletionProtectionReason": "PROTECTION_REASON"}' \ --compressed
ここで
PROJECT
は、インスタンスが存在するプロジェクトの名前です。例:my-genomics-project
LOCATION
は、インスタンスが存在するロケーションです。たとえば、us-east1
やus-central1-a
です。NAME
は、作成するインスタンスの名前です。例:my-genomics-instance
PERFORMANCE
は、カスタム パフォーマンス設定の指定に使用されるパフォーマンス構成です。使用できるオプションは 1 つだけです。
iopsPerTB
を使用すると、インスタンス容量に応じてスケーリングされるユーザー定義の IOPS レートでカスタム パフォーマンスを有効にできます。1 TiB あたりの IOPS を定義するには、maxIopsPerTb
フィールドを使用します。fixedIops
を使用すると、インスタンスの容量に応じてスケーリングされない固定の IOPS レートでカスタム パフォーマンスを有効にできます。固定の IOPS 値を定義するには、maxIops
フィールドを使用します。形式は次のとおりです。
"performanceConfig": { "iopsPerTb" : { "maxIopsPerTb":17000 } }
CAPACITY
は、インスタンスに割り当てるサイズ(GiB)です。例:1024
SHARE_NAME
はファイル共有の名前です。 (例:vol1
)です。PROTECTION_REASON
deletionProtectionEnabled
フラグを使用する場合は、設定に関するメモを追加できます。メモを追加するには、オプションのdeletionProtectionReason
フラグを使用して、選択した設定の根拠の説明を含めます。たとえば、「すべてのゲノミクス データは、組織の現在のポリシーに準拠する必要があります」などです。詳細については、削除保護をご覧ください。
例
次の例では、1 TiB あたりの IOPS 比率を
12000
に減らしてnfs-server
インスタンスを更新します。curl --request PATCH \ 'https://file.googleapis.com/v1/projects/my-project/locations/us-central1/instances?instanceId=nfs-server?updateMask=performanceConfig%2CdeletionProtectionReason&key=12334fr232' \ --header "Authorization: Bearer $(gcloud auth print-access-token)" \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --data '{ "performanceConfig": { "iopsPerTb": { "maxIopsPerTb":12000 } }, "deletionProtectionReason":"Deletion+not+allowed"}' \ --compressed
次のステップ
- 別のインスタンスを作成する。
- Filestore ファイル共有を Compute Engine VM インスタンスにマウントする。
- Filestore CSI ドライバを使用して Filestore インスタンスにアクセスする。
- 容量をスケーリングする