本頁面說明如何使用Google Cloud 控制台或 gcloud CLI 編輯 Filestore 執行個體。
建立 Filestore 執行個體後,您可以透過下列方式修改:
如要瞭解如何調整容量,請參閱「調整容量」。
某些規格 (例如執行個體的 IP 位址) 屬於不可變更的項目。
編輯執行個體的操作說明
Google Cloud 控制台
如要使用 Google Cloud 控制台編輯 Filestore 執行個體,請前往「編輯執行個體」頁面,編輯執行個體說明、管理以 IP 為依據的存取控管規則,以及調整檔案共用效能:
前往 Google Cloud 控制台的 Filestore 執行個體頁面。
按一下您要編輯之執行個體的執行個體 ID。
在「Instance details」(執行個體詳細資料) 頁面上,按一下「Edit」(編輯),前往「Edit instance」(編輯執行個體) 頁面。
視需要變更執行個體說明、依據 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 是 Google Cloud 專案的專案 ID,可包含 Filestore 執行個體。如果 Filestore 執行個體位於
gcloud預設專案中,可以略過這個旗標。您可以執行下列指令來設定預設專案:gcloud config set project project-idLOCATION 是 Filestore 執行個體所在的區域。如果是區域和企業版執行個體,請指定區域。 如果是其他執行個體,請指定區域。執行
gcloud filestore zones list指令,取得支援的可用區清單。如果 Filestore 執行個體位於gcloud預設區域,可以略過此標記。您可以執行下列指令來設定預設可用區:gcloud config set filestore/zone zonePERFORMANCE 是用來指定自訂效能設定的效能設定,與所選容量無關。
你只能使用下列其中一個選項:
max-iops-per-tb指定的每 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 位址範圍的設定:
- 可用區
- 區域
- 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 位址範圍的設定:
範例
以下範例會更新 nfs-server 執行個體,將檔案共用大小增加至 3 TiB。
gcloud filestore instances update nfs-server --zone=us-central1-c --file-share=name="vol1",capacity=3TiB
```
REST API
使用
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是用來指定自訂效能設定的效能設定。您只能使用其中一個選項。
iopsPerTB可啟用自訂效能,並根據執行個體容量調整使用者定義的 IOPS 速率。如要定義每 TiB 的 IOPS,請使用maxIopsPerTb欄位。fixedIops可啟用自訂效能,並設定固定的 IOPS 速率,不會隨著執行個體容量調整。如要定義固定 IOPS 值,請使用maxIops欄位。格式如下:
"performanceConfig": { "iopsPerTb" : { "maxIopsPerTb":17000 } }
CAPACITY是您要為執行個體分配的大小 (以 GiB 為單位)。例如:1024。SHARE_NAME是檔案共用區的名稱。例如:vol1。PROTECTION_REASON如果選擇使用deletionProtectionEnabled旗標,可以新增設定相關附註。如要新增附註,請使用選用的deletionProtectionReason旗標,並加入所選設定理由的說明。例如:「所有基因體學資料都必須遵守目前的組織政策。」詳情請參閱「防刪除功能」。
範例
以下範例會更新
nfs-server執行個體,將每 TiB 的 IOPS 比率調降至12000。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