建立 Managed Lustre 執行個體

Google Cloud Managed Lustre 執行個體是雲端中的完整 Lustre 檔案系統。可掛接至 Compute Engine VM 或 Google Kubernetes Engine (GKE) 叢集。您可以使用標準 POSIX 術語存取執行個體上的資料。

建立 Managed Lustre 執行個體時,必須定義下列屬性:

  • 執行個體的名稱,由 Google Cloud使用。
  • 檔案系統名稱,由 lfs 等用戶端工具使用。
  • 儲存空間容量 (以 GiB 為單位)。容量範圍為 9,000 GiB 至 84,016,000 GiB (80.1 PiB)。執行個體的大小上限取決於效能級別。
  • 效能級別。Managed Lustre 提供多種效能級別,從每 TiB 125 MB/秒到每 TiB 1000 MB/秒不等,以及動態級別,可根據資料存取模式最佳化效能,匯總總處理量為每 TiB 25 MB/秒。
  • 地點。為發揮最佳效能,請將執行個體放在與用戶端 VM 或 GKE 叢集相同的可用區。
  • 這個執行個體的虛擬私有雲網路。這個網路必須與 VM 或叢集使用的網路相同。

效能級別和儲存空間容量上限

Managed Lustre 提供 4 個固定效能級別和 1 個動態級別。效能級別會影響執行個體大小的上下限,以及可接受容量值之間的步距。執行個體建立後,即無法變更效能級別。

詳情請參閱「效能級別」。

執行個體建立後,您可以增加儲存空間容量,最多可達效能級別和步距允許的最大值。

容量計算工具

選取效能級別並輸入目標容量,即可找出最接近的有效大小。有效大小會根據級別的最小值和步距向上取整。

配額

專案設有處理量和容量配額,建立執行個體時會消耗這些配額。如果執行個體所在可用區和虛擬私有雲網路的配額不足,無法支援所選執行個體大小和效能級別,建立要求就會失敗。詳情請參閱「配額與限制」。

所需權限

如要建立新的 Managed Lustre 執行個體,您必須具備專案的 Managed Lustre 管理員 (roles/lustre.admin) IAM 權限。

詳情請參閱「使用 IAM 控管存取權」。

此外,您也必須啟用 Managed Lustre API。

建立執行個體

您可以透過下列介面建立新的 Managed Lustre 執行個體。

gcloud

如要建立新的 Managed Lustre 執行個體,請使用 gcloud lustre instances create 指令:

gcloud lustre instances create INSTANCE_ID \
  --per-unit-storage-throughput=PER_UNIT_STORAGE_THROUGHPUT \
  --capacity-gib=CAPACITY_GIB \
  --filesystem=FILESYSTEM \
  --location=LOCATION \
  --network=NETWORK_PATH

必須指定下列值:

  • INSTANCE_ID 是這個 Managed Lustre 執行個體的名稱。其必須:

    • 只能使用小寫英文字母、數字和連字號。
    • 並以英文字母開頭。
    • 長度介於 1 至 63 個字元之間。
    • 結尾須為數字或英文字母。
    • 在專案和位置中不得重複。
  • --per-unit-storage-throughput 是執行個體的處理量上限,以每 TiB 的 MBps 為單位。有效值為 0、125、250、500 和 1000。您選擇的處理量會影響執行個體的儲存空間容量上下限。

    如要指定動態層級,請將此值設為 0,並加入 --dynamic-tier-options-mode=DEFAULT_CACHE 旗標。例如:

    gcloud lustre instances create my-dynamic-tier-instance \
      --per-unit-storage-throughput=0 \
      --dynamic-tier-options-mode=DEFAULT_CACHE \
      ...
    
  • --capacity-gib 是執行個體的儲存空間容量,以 gibibyte (GiB) 為單位。允許的值取決於您指定的儲存空間處理量級別。詳情請參閱「效能級別和儲存空間容量上限」一節。

  • --filesystem 是要指派給這個 Lustre 檔案系統的名稱。用戶端指令會使用這個名稱,包括 mount 和 lfs。長度不得超過 8 個字元,只能包含英文字母和/或數字,且區分大小寫。

    建議您選擇的名稱,在虛擬私有雲中的所有 Managed Lustre 執行個體中不重複。這樣一來,您就能從單一 GKE 節點使用多個執行個體。

  • --location 必須是 Managed Lustre 支援的有效 Google Cloud 可用區。如需完整清單,請參閱「支援的位置」。

  • --network 是執行個體所屬虛擬私有雲網路的完整路徑,格式為 projects/PROJECT_ID/global/networks/NETWORK。請參閱「設定虛擬私有雲網路」。

  • --project 是您的 Google Cloud 專案 ID。

選用旗標如下:

  • --dynamic-tier-options-mode 指定這個執行個體的動態級別。將這個旗標的值設為 DEFAULT_CACHE,並設定 --per-unit-storage-throughput=0,即可啟用動態級別。

  • --kms-key-name 指定用於加密這個執行個體的客戶自行管理的加密金鑰。詳情請參閱「Managed Lustre 的客戶自行管理加密金鑰」。

  • --maintenance-policy-weekly-windows 和 --maintenance-policy-exclusion-window 定義這個執行個體的維護政策。詳情請參閱「維護事件和政策」。

  • --async (選用) 會以非同步方式執行指令。Google Cloud CLI 不會等待執行個體建立完成,而是會傳回作業 ID,可用於查詢指令狀態。

成功的要求會傳回作業 ID:

Create request issued for: [$INSTANCE_ID]
Waiting for operation [projects/$PROJECT_ID/locations/us-central1-a/operations/
operation-1234567890-609d21deae6f0-befaf0bc-867b1aa1] to complete...

建立執行個體所需的時間,取決於執行個體的容量。容量為 9,000 GiB 的執行個體約需 15 分鐘,容量為 84,016,000 GiB (80.1 PiB) 的執行個體則可能需要數小時。如要瞭解如何查看要求狀態,請參閱「查詢執行個體建立狀態」。

REST

如要使用 REST API 建立執行個體,請將要求傳送至下列端點:

POST https://lustre.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/instances?instanceId=INSTANCE_ID
Authorization: Bearer AUTH_TOKEN
{
  "filesystem": string,
  "perUnitStorageThroughput": int64,
  "capacityGib": int64,
  "network": string
}

必須指定下列值:

  • PROJECT_ID 是您的 Google Cloud 專案 ID。

  • ZONE 必須是 Managed Lustre 支援的有效 Google Cloud 可用區。如需完整清單,請參閱「支援的位置」。

  • INSTANCE_ID 是這個 Managed Lustre 執行個體的名稱。其必須:

    • 只能使用小寫英文字母、數字和連字號。
    • 並以英文字母開頭。
    • 長度介於 1 至 63 個字元之間。
    • 結尾須為數字或英文字母。
    • 在專案和位置中不得重複。
  • filesystem 是要指派給這個 Lustre 檔案系統的名稱。用戶端指令會使用這個名稱,包括 mount 和 lfs。長度不得超過 8 個字元,只能包含字母和/或數字,且區分大小寫。

    建議您選擇的檔案系統名稱,在虛擬私有雲中的所有 Managed Lustre 執行個體中不重複。這樣一來,您就能從單一 GKE 節點使用多個執行個體。

  • perUnitStorageThroughput 是執行個體的處理量上限,以每 TiB 的 MBps 為單位。有效值為 0、125、250、500 和 1000。您選擇的處理量會影響執行個體的儲存空間容量上下限。

    如要指定動態級別,請將此值設為 0,並加入 dynamicTierOptions 物件。例如:

    "perUnitStorageThroughput": 0,
    "dynamicTierOptions": {
      "mode": "DEFAULT_CACHE"
    }
    
  • capacityGib 是執行個體的儲存空間容量,以 gibibyte (GiB) 為單位。允許的值取決於您指定的儲存空間處理量級別。詳情請參閱「效能級別和儲存空間容量上限」一節。

  • network 是執行個體所屬虛擬私有雲網路的完整路徑,格式為 projects/PROJECT_ID/global/networks/NETWORK。請參閱「設定虛擬私有雲網路」。

以下為選用欄位:

  • dynamicTierOptions 會為這個執行個體啟用動態級別。dynamicTierOptions 物件中的 mode 欄位必須設為 DEFAULT_CACHE,且 perUnitStorageThroughput 必須為 0,才能啟用動態級別。

  • kmsKey 指定用於加密這個執行個體的客戶自行管理的加密金鑰。詳情請參閱「Managed Lustre 的客戶自行管理加密金鑰」。

API 支援執行個體的其他選填欄位。如需完整清單和說明,請參閱 Instance 資源參考文件。

Google Cloud 控制台

  1. 前往 Google Cloud 控制台的「Managed Lustre」頁面。

    前往「Managed Lustre」

  2. 點選「建立」。「Create an instance」(建立執行個體) 頁面隨即顯示。

  3. 輸入不重複的「Instance name」(執行個體名稱),並視需要輸入說明。 Google Cloud 會使用執行個體名稱來識別這個執行個體。

  4. 輸入檔案系統名稱。這是 lfs 等用戶端工具使用的名稱。長度不得超過 8 個字元,只能包含英文字母和/或數字,且區分大小寫。

  5. 選取要建立這個執行個體的區域和可用區。建議您將執行個體放在與 Compute Engine VM 或 Google Kubernetes Engine 叢集相同的區域和可用區,以便連線。

  6. 選取這個執行個體的效能級別。

  7. 指定執行個體的儲存空間容量 (以 GiB 為單位)。有效值取決於您選取的儲存空間處理量級別。詳情請參閱「效能級別和儲存空間容量上限」一節。

  8. 在「Encryption」(加密) 區段中,選取「Google-managed encryption key」(Google 代管的加密金鑰) 或「Cloud Key Management Service key」(Cloud Key Management Service 金鑰)。如要瞭解 Cloud Key Management Service 金鑰選項,請參閱「Managed Lustre 的客戶自行管理加密金鑰」。

  9. 選用:如要控管這個執行個體的維護時間,請展開「Maintenance policy」(維護政策) 區段,並設定維護期間或排除期間。詳情請參閱「維護事件和政策」。

  10. 選取您在「建立虛擬私有雲網路」中建立的「網路」。

頁面的「Summary」(摘要) 部分會更新,根據您的選擇顯示預估費用。

按一下「提交」繼續操作。執行個體建立程序需要 15 分鐘到 1 小時,具體時間取決於執行個體容量。

查詢執行個體建立狀態

您可以透過下列介面查詢建立要求的狀態。

gcloud

如要查詢建立作業的狀態,您可以取得作業或執行個體。

如要取得執行個體,請按照下列步驟操作:

gcloud lustre instances describe INSTANCE_NAME \
  --location=ZONE

建立狀態是 state 的值。

如要取得作業,請使用執行個體建立回應中的作業 ID。作業 ID 的格式如下:

  • operation-1234567890123-6127783ad26ea-88913969-02748053
gcloud lustre operations describe OPERATION_ID \
  --location=LOCATION

建立狀態是 done 的值。

建立執行個體後,對執行個體發出 GET 要求,會傳回類似下列的回應。

請記下 mountPoint 欄位中的 IP 位址和檔案系統名稱,掛接執行個體時會用到這些值。

capacityGib: '27000'
createTime: '2025-03-14T00:07:34.308574307Z'
filesystem: lustre-fs
mountPoint: 10.115.0.3@tcp:/testfs
name: projects/$PROJECT/locations/us-central1-a/instances/$INSTANCE_NAME
network: projects/$PROJECT/global/networks/default
state: ACTIVE
updateTime: '2025-03-14T00:15:37.101024263Z'

REST

如要查詢建立作業的狀態,請使用回應中的作業 ID。作業 ID 的格式如下:

  • operation-1234567890123-6127783ad26ea-88913969-02748053

向下列端點傳送要求:

GET https://lustre.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/operations/OPERATION_ID
Authorization: Bearer

如果成功,回應主體會包含 Operation 的執行個體。

Google Cloud 控制台

  1. 前往 Google Cloud 控制台的「Managed Lustre」頁面。

    前往「Managed Lustre」

  2. 在清單中按一下執行個體名稱。系統會顯示「Instance Details」(執行個體詳細資料) 頁面,其中包含執行個體建立要求的目前狀態。

疑難排解

IP 位址範圍已用盡

如果建立執行個體時發生 IP 位址範圍用盡錯誤:

FAILED_PRECONDITION: Invalid resource state for "NETWORK_RANGES_NOT_AVAILABLE": IP address range exhausted

或:

Private Service Access IP address range exhausted or does not exist.

請按照「設定私人服務存取權」中的操作說明,修改現有私人連線,新增 IP 位址範圍。

建議前置字串長度至少為 /20 (4096 個位址)。

網路尚未對等互連

如果執行個體建立失敗,並顯示網路對等互連錯誤:

INVALID_ARGUMENT: the network has not been peered with Google managed services.

如果 --network 中指定的虛擬私有雲網路,未透過私人服務存取權與 Google 代管服務對接,就會發生這項錯誤。

如要解決這個問題,請按照「建立及設定虛擬私有雲」中的操作說明,分配 IP 位址範圍並建立虛擬私有雲對接連線。

後續步驟