本文將說明如何設定及部署使用 A4X Max、A4X、A4、A3 Ultra、A3 Mega 或 A3 High 機型的 Slurm 叢集。如要進一步瞭解這些加速器最佳化機器類型,請參閱「GPU 機器類型」一文。
如要瞭解在 Google Cloud中建立 AI 適用的 Slurm 叢集的其他方法,請參閱下列內容:
如要使用代管 Slurm 環境,簡化叢集設定和管理作業,請參閱 Cluster Director。
如要在 Slurm 上部署兩個 A4 虛擬機器 (VM) 執行個體,請參閱建立 AI 適用的 Slurm 叢集快速入門導覽課程。
限制
視 Slurm 叢集中的 VM 所用機器系列而定,適用下列限制:
A4X Max
- 使用這類機型的執行個體無法享有續用折扣或彈性承諾使用折扣。
- 您只能在特定區域和可用區建立執行個體。
- 您無法使用永久磁碟 (區域或可用區)。只能使用 Google Cloud Hyperdisk。
- 這個機型僅適用於 NVIDIA Grace 平台。
- A4X Max 不支援變更機型。如要切換至或切換出這個機型,您必須建立新的執行個體。
- 您無法在這個機型上執行 Windows 作業系統。如需支援的 Linux 作業系統清單,請參閱 GPU 執行個體支援的作業系統。
- A4X Max 執行個體不支援下列項目:
- 2026 年 2 月 4 日前建立的 Hyperdisk ML 磁碟無法附加至 A4X Max 機器類型。
A4X
- 使用這類機型的執行個體無法享有續用折扣或彈性承諾使用折扣。
- 您只能在特定區域和可用區建立執行個體。
- 您無法使用永久磁碟 (區域或可用區)。只能使用 Google Cloud Hyperdisk。
- 這個機型僅適用於 NVIDIA Grace 平台。
- A4X 不支援變更機型。如要改用或切換這個機型,必須建立新的執行個體。
- 您無法在這個機型上執行 Windows 作業系統。如需支援的 Linux 作業系統清單,請參閱 GPU 執行個體支援的作業系統。
- 如果是 A4X 執行個體,使用
ethtool -S監控 GPU 網路時,結尾為_phy的實體連接埠計數器不會更新。如果執行個體使用 MRDMA 虛擬函式 (VF) 架構,這是預期行為。詳情請參閱「MRDMA functions and network monitoring tools」。 - A4X 執行個體不支援下列項目:
- 2026 年 2 月 4 日前建立的 Hyperdisk ML 磁碟無法附加至 A4X 機器類型。
A4
- 使用 A4 機型的執行個體無法享有續用折扣和彈性承諾使用折扣。
- A4 機型只能在特定區域和可用區使用。
- 您無法使用永久磁碟 (區域或可用區)。只能使用 Google Cloud Hyperdisk。
- A4 機型僅適用於 Emerald Rapids CPU 平台。
- 您無法將執行個體的機型變更為 A4 機型,也無法從 A4 機型變更為其他機型。您必須使用這個機型建立新的執行個體。
- A4 機器類型不支援單一租戶。
- 您無法在 A4 機型上執行 Windows 作業系統。
- 如果是 A4 執行個體,使用
ethtool -S監控 GPU 網路時,結尾為_phy的實體連接埠計數器不會更新。這是使用 MRDMA 虛擬函式 (VF) 架構的執行個體預期會發生的行為。詳情請參閱「MRDMA functions and network monitoring tools」。 - 您無法將 2026 年 2 月 4 日前建立的 Hyperdisk ML 磁碟連結至 A4 機器類型。
A3 Ultra
- 使用 A3 Ultra 機型的執行個體不適用續用折扣和彈性承諾使用折扣。
- A3 Ultra 機型僅適用於特定區域和可用區。
- 您無法使用永久磁碟 (區域或可用區)。只能使用 Google Cloud Hyperdisk。
- A3 Ultra 機型僅適用於 Emerald Rapids CPU 平台。
- A3 Ultra 機型不支援變更機型。如要改用或停用這類機器類型,必須建立新的執行個體。
- 您無法在 A3 Ultra 機型上執行 Windows 作業系統。
- A3 Ultra 機型不支援單一租戶。
- 如果是 A3 Ultra 執行個體,使用
ethtool -S監控 GPU 網路時,結尾為_phy的實體連接埠計數器不會更新。如果執行個體使用 MRDMA 虛擬函式 (VF) 架構,這是預期行為。詳情請參閱「MRDMA functions and network monitoring tools」。
A3 Mega
- 使用 A3 Mega 機型的執行個體無法享有續用折扣和彈性承諾使用折扣。
- A3 Mega 機型只能在特定區域和可用區使用。
- 如果執行個體使用 A3 Mega 機型,就無法使用區域永久磁碟。
- A3 Mega 機型僅適用於 Sapphire Rapids CPU 平台。
- A3 Mega 機型不支援變更機器類型。如要改用或停用這類機器類型,必須建立新的執行個體。
- 您無法在 A3 Mega 機型上執行 Windows 作業系統。
A3 High
- 使用 A3 High 機型 的執行個體不適用續用折扣和彈性承諾使用折扣。
- 您只能在特定區域和可用區使用 A3 High 機型。
- 您無法在採用 A3 High 機型的執行個體上使用區域永久磁碟。
- A3 High 機型僅適用於 Sapphire Rapids CPU 平台。
- A3 High 機型不支援變更機器類型。如要改用或停用這類機器類型,必須建立新的執行個體。
- 您無法在 A3 High 機型上執行 Windows 作業系統。
- 如要使用
a3-highgpu-1g、a3-highgpu-2g和a3-highgpu-4g機器類型,請使用 Spot VM 或彈性啟動 VM 建立執行個體。如需這些選項的詳細操作說明,請參閱下列文章:- 如要建立 Spot VM,請在建立加速器最佳化 VM 時,將佈建模式設為
SPOT。 - 如要建立彈性啟動 VM,請使用下列任一方法:
- 建立獨立 VM,並在建立加速器最佳化 VM 時,將佈建模式設為
FLEX_START。 - 在代管執行個體群組 (MIG) 中建立規模調整要求。如需操作說明,請參閱建立含 GPU VM 的 MIG。
- 建立獨立 VM,並在建立加速器最佳化 VM 時,將佈建模式設為
- 如要建立 Spot VM,請在建立加速器最佳化 VM 時,將佈建模式設為
- 您只能在有限的區域和可用區,搭配
a3-highgpu-1g機型使用機密 VM,且在 A3 High 機型上執行機密 VM 的所有限制均適用。
事前準備
建立 Slurm 叢集前,請先完成下列步驟 (如尚未完成):
- 選擇計費方案:您選擇的計費方案會決定如何取得及使用 GPU 資源。
詳情請參閱「選擇消耗量選項」。
- 取得容量:取得容量的程序會因消費選項而異。
如要瞭解如何取得所選用量方案的容量,請參閱容量總覽。
- 確認 Filestore 容量配額充足:部署前,目標區域必須有足夠的 Filestore 配額。所需最低容量取決於叢集中的機器類型:
- A4、A4X、A3 Ultra 和 A3 Mega:需要至少 10 TiB (10,240 GiB) 的 HIGH_SCALE_SSD (可用區) 容量。
- A3 High:至少需要 2.5 TiB (2,560 GiB) 的 BASIC_SSD (標準) 容量。
如要查看配額或申請提高配額,請參閱下列文章:
- 如要查看配額,請參閱「查看 API 專屬配額」一節。
- 如果配額不足,請申請提高配額。
- 安裝 Cluster Toolkit:如要佈建 Slurm 叢集,您必須使用 Cluster Toolkit
v1.62.0以上版本。如要安裝 Cluster Toolkit,請參閱「設定 Cluster Toolkit」。
在 Google Cloud 控制台中啟用 Cloud Shell。
Google Cloud 主控台底部會開啟一個 Cloud Shell 工作階段,並顯示指令列提示。Cloud Shell 是已安裝 Google Cloud CLI 的殼層環境,並已針對您目前的專案設定好相關值。工作階段可能要幾秒鐘的時間才能初始化。
必要的角色
如要完成本教學課程,您需要授予 Compute Engine 預設服務帳戶和使用者帳戶的 IAM 角色。
取得 Compute Engine 預設服務帳戶的必要角色
如要取得部署 Slurm 叢集所需的權限,請要求系統管理員授予您下列 IAM 角色:
-
Storage 物件檢視者 (
roles/storage.objectViewer) 專案 -
專案的「Compute 執行個體管理員 (v1)」 (
roles/compute.instanceAdmin.v1) -
服務帳戶使用者 (
roles/iam.serviceAccountUser) 服務帳戶本身
如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和組織的存取權」。
取得使用者帳戶的必要角色
如要取得建立 Cloud Storage bucket 所需的權限,請要求系統管理員授予您專案的「Storage 管理員 」(roles/storage.admin) IAM 角色。
設定儲存空間 bucket
叢集藍圖會使用 Terraform 模組佈建雲端基礎架構。使用 Terraform 時的最佳做法,是在已啟用版本的檔案中遠端儲存狀態。在 Google Cloud上,您可以建立已啟用版本管理的 Cloud Storage bucket。
如要透過 CLI 建立這個值區並啟用版本管理功能,請執行下列指令:
gcloud storage buckets create gs://BUCKET_NAME \
--project=PROJECT_ID \
--default-storage-class=STANDARD --location=BUCKET_REGION \
--uniform-bucket-level-access
gcloud storage buckets update gs://BUCKET_NAME --versioning
更改下列內容:
BUCKET_NAME:Cloud Storage bucket 的名稱,必須符合 bucket 命名規定。PROJECT_ID:您的專案 ID。BUCKET_REGION:任何可用位置。
安裝 Cluster Toolkit
如要在 Google Cloud中使用 Slurm,請先安裝 Cluster Toolkit。如果是 Linux 和 macOS,建議您安裝預先建構的套件。
安裝 Cluster Toolkit 後,請前往包含 gcluster 二進位檔的目錄:
如果您安裝的是預先建構的套件組合,請變更為
gcluster-bundle目錄:cd gcluster-bundle
如果從來源建構二進位檔,請變更為
cluster-toolkit:cd cluster-toolkit
部署這個叢集需要使用 Cluster Toolkit
v1.62.0以上版本。 查看目前安裝的版本:./gcluster --version
建立部署檔案
建立部署檔案,可用於指定 Cloud Storage bucket、設定網路和子網路的名稱,以及設定專案 ID、區域和可用區等部署變數。
如要建立部署作業檔案,請按照所需機型和用量選項的步驟操作。
A4X Max
如要建立部署檔案,請使用文字編輯器建立名為 a4xmax-bm-slurm-deployment.yaml 的 YAML 檔案,並新增下列內容。
terraform_backend_defaults:
type: gcs
configuration:
bucket: BUCKET_NAME
vars:
deployment_name: DEPLOYMENT_NAME
project_id: PROJECT_ID
region: REGION
zone: ZONE
a4x_max_cluster_size: NUMBER_OF_INSTANCES
a4x_max_reservation_name: RESERVATION_NAME
更改下列內容:
BUCKET_NAME:Cloud Storage bucket 的名稱,您已在上一個章節中建立。DEPLOYMENT_NAME:部署作業的名稱。如果建立多個叢集,請務必為每個叢集選取專屬名稱。PROJECT_ID:您的專案 ID。REGION:預留機器的區域。ZONE:您要佈建叢集的可用區。如果您使用以預訂為準的用量選項,帳戶團隊會在容量交付時提供區域和地帶資訊。NUMBER_OF_INSTANCES:叢集中的 A4X Max 裸機執行個體數量。您可以指定任意數量的執行個體。不過,A4X Max 執行個體會以 18 個執行個體 (72 個 GPU) 為一組,透過多節點 NVLink 系統實體互連,形成 NVLink 網域。為獲得最佳網路效能,建議您指定 18 個執行個體的倍數值 (例如 18、36 或 54)。建立 A4X Max 叢集時,A4X Max 藍圖會自動建立並套用密集配置政策,每個 18 個執行個體群組的 GPU 拓撲為
1x72。RESERVATION_NAME:預訂名稱。
A4X
如要建立部署檔案,請使用文字編輯器建立名為 a4xhigh-slurm-deployment.yaml 的 YAML 檔案,並新增下列內容。
terraform_backend_defaults:
type: gcs
configuration:
bucket: BUCKET_NAME
vars:
deployment_name: DEPLOYMENT_NAME
project_id: PROJECT_ID
region: REGION
zone: ZONE
a4x_cluster_size: NUMBER_OF_VMS
a4x_reservation_name: RESERVATION_NAME
更改下列內容:
BUCKET_NAME:Cloud Storage bucket 的名稱,您已在上一個章節中建立。DEPLOYMENT_NAME:部署作業的名稱。如果建立多個叢集,請務必為每個叢集選取專屬名稱。PROJECT_ID:您的專案 ID。REGION:預留機器的區域。ZONE:您要佈建叢集的可用區。如果您使用以預訂為準的用量選項,帳戶團隊會在容量交付時提供區域和地帶資訊。NUMBER_OF_VMS:叢集中的 A4X VM 數量。您可以指定任意數量的 VM。不過,A4X VM 會以 18 個 VM (72 個 GPU) 為一組,透過多節點 NVLink 系統實體互連,形成 NVLink 網域。為獲得最佳網路效能,建議您指定 18 部 VM 的倍數值 (例如 18、36 或 54)。建立 A4X 叢集時,A4X 藍圖會自動建立並套用密集配置政策,每個 18 個 VM 的群組都會採用
1x72GPU 拓撲。如要進一步瞭解 A4X 拓撲,請參閱「A4X 基礎知識」。RESERVATION_NAME:預訂名稱。
A4
您需要在部署檔案中加入的參數,取決於部署作業使用的用量選項。選取與用量選項的佈建模式對應的分頁。
取決於預留項目
如要建立部署檔案,請使用文字編輯器建立名為 a4high-slurm-deployment.yaml 的 YAML 檔案,並新增下列內容。
terraform_backend_defaults:
type: gcs
configuration:
bucket: BUCKET_NAME
vars:
deployment_name: DEPLOYMENT_NAME
project_id: PROJECT_ID
region: REGION
zone: ZONE
a4h_cluster_size: NUMBER_OF_VMS
a4h_reservation_name: RESERVATION_NAME
更改下列內容:
彈性啟動
如要建立部署檔案,請使用文字編輯器建立名為 a4high-slurm-deployment.yaml 的 YAML 檔案,並新增下列內容。
terraform_backend_defaults:
type: gcs
configuration:
bucket: BUCKET_NAME
vars:
deployment_name: DEPLOYMENT_NAME
project_id: PROJECT_ID
region: REGION
zone: ZONE
a4h_cluster_size: NUMBER_OF_VMS
a4h_dws_flex_enabled: true
更改下列內容:
BUCKET_NAME:Cloud Storage bucket 的名稱,您已在上一個章節中建立。DEPLOYMENT_NAME:部署作業的名稱。如果建立多個叢集,請務必為每個叢集選取專屬名稱。PROJECT_ID:您的專案 ID。REGION:要佈建叢集的區域。ZONE:要佈建叢集的可用區。NUMBER_OF_VMS:叢集所需的 VM 數量。
這項部署作業會佈建靜態運算節點,也就是說,叢集隨時都會有固定數量的節點。如要改為啟用叢集的自動調度資源功能,請使用 examples/machine-learning/a4-highgpu-8g/a4high-slurm-blueprint.yaml 檔案,並將 node_count_static 和 node_count_dynamic_max 的值編輯為下列值:
node_count_static: 0
node_count_dynamic_max: $(vars.a4h_cluster_size)
Spot
如要建立部署檔案,請使用文字編輯器建立名為 a4high-slurm-deployment.yaml 的 YAML 檔案,並新增下列內容。
terraform_backend_defaults:
type: gcs
configuration:
bucket: BUCKET_NAME
vars:
deployment_name: DEPLOYMENT_NAME
project_id: PROJECT_ID
region: REGION
zone: ZONE
a4h_cluster_size: NUMBER_OF_VMS
a4h_enable_spot_vm: true
更改下列內容:
BUCKET_NAME:Cloud Storage bucket 的名稱,您已在上一個章節中建立。DEPLOYMENT_NAME:部署作業的名稱。如果建立多個叢集,請務必為每個叢集選取專屬名稱。PROJECT_ID:您的專案 ID。REGION:要佈建叢集的區域。ZONE:要佈建叢集的可用區。NUMBER_OF_VMS:叢集所需的 VM 數量。
A3 Ultra
您需要在部署檔案中加入的參數,取決於部署作業使用的用量選項。選取與用量選項的佈建模式對應的分頁。
取決於預留項目
如要建立部署檔案,請使用文字編輯器建立名為 a3ultra-slurm-deployment.yaml 的 YAML 檔案,並新增下列內容。
terraform_backend_defaults:
type: gcs
configuration:
bucket: BUCKET_NAME
vars:
deployment_name: DEPLOYMENT_NAME
project_id: PROJECT_ID
region: REGION
zone: ZONE
a3u_cluster_size: NUMBER_OF_VMS
a3u_reservation_name: RESERVATION_NAME
更改下列內容:
彈性啟動
如要建立部署檔案,請使用文字編輯器建立名為 a3ultra-slurm-deployment.yaml 的 YAML 檔案,並新增下列內容。
terraform_backend_defaults:
type: gcs
configuration:
bucket: BUCKET_NAME
vars:
deployment_name: DEPLOYMENT_NAME
project_id: PROJECT_ID
region: REGION
zone: ZONE
a3u_cluster_size: NUMBER_OF_VMS
a3u_dws_flex_enabled: true
更改下列內容:
BUCKET_NAME:Cloud Storage bucket 的名稱,您已在上一個章節中建立。DEPLOYMENT_NAME:部署作業的名稱。如果建立多個叢集,請務必為每個叢集選取專屬名稱。PROJECT_ID:您的專案 ID。REGION:要佈建叢集的區域。ZONE:要佈建叢集的可用區。NUMBER_OF_VMS:叢集所需的 VM 數量。
這項部署作業會佈建靜態運算節點,也就是說,叢集隨時都會有固定數量的節點。如要改為啟用叢集的自動調度資源功能,請使用 examples/machine-learning/a3-ultragpu-8g/a3ultra-slurm-blueprint.yaml 檔案,並將 node_count_static 和 node_count_dynamic_max 的值編輯為下列值:
node_count_static: 0
node_count_dynamic_max: $(vars.a3u_cluster_size)
Spot
如要建立部署檔案,請使用文字編輯器建立名為 a3ultra-slurm-deployment.yaml 的 YAML 檔案,並新增下列內容。
terraform_backend_defaults:
type: gcs
configuration:
bucket: BUCKET_NAME
vars:
deployment_name: DEPLOYMENT_NAME
project_id: PROJECT_ID
region: REGION
zone: ZONE
a3u_cluster_size: NUMBER_OF_VMS
a3u_enable_spot_vm: true
更改下列內容:
BUCKET_NAME:Cloud Storage bucket 的名稱,您已在上一個章節中建立。DEPLOYMENT_NAME:部署作業的名稱。如果建立多個叢集,請務必為每個叢集選取專屬名稱。PROJECT_ID:您的專案 ID。REGION:要佈建叢集的區域。ZONE:要佈建叢集的可用區。NUMBER_OF_VMS:叢集所需的 VM 數量。
A3 Mega
您需要在部署檔案中加入的參數,取決於部署作業使用的用量選項。選取與用量選項的佈建模式對應的分頁。
取決於預留項目
如要建立部署檔案,請建立名為 a3mega-slurm-deployment.yaml 的 YAML 檔案,並加入下列內容。
terraform_backend_defaults:
type: gcs
configuration:
bucket: BUCKET_NAME
vars:
deployment_name: DEPLOYMENT_NAME
project_id: PROJECT_ID
region: REGION
zone: ZONE
a3m_cluster_size: NUMBER_OF_VMS
a3m_reservation_name: RESERVATION_NAME
更改下列內容:
彈性啟動
如要建立部署檔案,請建立名為 a3mega-slurm-deployment.yaml 的 YAML 檔案,並加入下列內容。
terraform_backend_defaults:
type: gcs
configuration:
bucket: BUCKET_NAME
vars:
deployment_name: DEPLOYMENT_NAME
project_id: PROJECT_ID
region: REGION
zone: ZONE
a3m_cluster_size: NUMBER_OF_VMS
a3m_dws_flex_enabled: true
更改下列內容:
BUCKET_NAME:Cloud Storage bucket 的名稱,您已在上一個章節中建立。DEPLOYMENT_NAME:部署作業的名稱。如果建立多個叢集,請務必為每個叢集選取專屬名稱。PROJECT_ID:您的專案 ID。REGION:要佈建叢集的區域。ZONE:要佈建叢集的可用區。NUMBER_OF_VMS:叢集所需的 VM 數量。
這項部署作業會佈建靜態運算節點,也就是說,叢集隨時都會有固定數量的節點。如要改為啟用叢集的自動調度資源功能,請使用 examples/machine-learning/a3-megagpu-8g/a3mega-slurm-blueprint.yaml 檔案,並將 node_count_static 和 node_count_dynamic_max 的值編輯為下列值:
node_count_static: 0
node_count_dynamic_max: $(vars.a3m_cluster_size)
Spot
如要建立部署檔案,請建立名為 a3mega-slurm-deployment.yaml 的 YAML 檔案,並加入下列內容。
terraform_backend_defaults:
type: gcs
configuration:
bucket: BUCKET_NAME
vars:
deployment_name: DEPLOYMENT_NAME
project_id: PROJECT_ID
region: REGION
zone: ZONE
a3m_cluster_size: NUMBER_OF_VMS
a3m_enable_spot_vm: true
更改下列內容:
BUCKET_NAME:Cloud Storage bucket 的名稱,您已在上一個章節中建立。DEPLOYMENT_NAME:部署作業的名稱。如果建立多個叢集,請務必為每個叢集選取專屬名稱。PROJECT_ID:您的專案 ID。REGION:要佈建叢集的區域。ZONE:要佈建叢集的可用區。NUMBER_OF_VMS:叢集所需的 VM 數量。
A3 High
您需要在部署檔案中加入的參數,取決於部署作業使用的用量選項。選取與用量選項的佈建模式對應的分頁。
取決於預留項目
如要建立部署檔案,請建立名為 a3high-slurm-deployment.yaml 的 YAML 檔案,並加入下列內容。
terraform_backend_defaults:
type: gcs
configuration:
bucket: BUCKET_NAME
vars:
deployment_name: DEPLOYMENT_NAME
project_id: PROJECT_ID
region: REGION
zone: ZONE
a3h_cluster_size: NUMBER_OF_VMS
a3h_reservation_name: RESERVATION_NAME
更改下列內容:
彈性啟動
如要建立部署檔案,請建立名為 a3high-slurm-deployment.yaml 的 YAML 檔案,並加入下列內容。
terraform_backend_defaults:
type: gcs
configuration:
bucket: BUCKET_NAME
vars:
deployment_name: DEPLOYMENT_NAME
project_id: PROJECT_ID
region: REGION
zone: ZONE
a3h_cluster_size: NUMBER_OF_VMS
a3h_dws_flex_enabled: true
更改下列內容:
BUCKET_NAME:Cloud Storage bucket 的名稱,您已在上一個章節中建立。DEPLOYMENT_NAME:部署作業的名稱。如果建立多個叢集,請務必為每個叢集選取專屬名稱。PROJECT_ID:您的專案 ID。REGION:要佈建叢集的區域。ZONE:要佈建叢集的可用區。NUMBER_OF_VMS:叢集所需的 VM 數量。
這項部署作業會佈建靜態運算節點,也就是說,叢集隨時都會有固定數量的節點。如要改為啟用叢集的自動調度資源功能,請使用 examples/machine-learning/a3-highgpu-8g/a3high-slurm-blueprint.yaml 檔案,並將 node_count_static 和 node_count_dynamic_max 的值編輯為下列值:
node_count_static: 0
node_count_dynamic_max: $(vars.a3h_cluster_size)
Spot
如要建立部署檔案,請建立名為 a3high-slurm-deployment.yaml 的 YAML 檔案,並加入下列內容。
terraform_backend_defaults:
type: gcs
configuration:
bucket: BUCKET_NAME
vars:
deployment_name: DEPLOYMENT_NAME
project_id: PROJECT_ID
region: REGION
zone: ZONE
a3h_cluster_size: NUMBER_OF_VMS
a3h_enable_spot_vm: true
更改下列內容:
BUCKET_NAME:Cloud Storage bucket 的名稱,您已在上一個章節中建立。DEPLOYMENT_NAME:部署作業的名稱。如果建立多個叢集,請務必為每個叢集選取專屬名稱。PROJECT_ID:您的專案 ID。REGION:要佈建叢集的區域。ZONE:要佈建叢集的可用區。NUMBER_OF_VMS:叢集所需的 VM 數量。
佈建 Slurm 叢集
Cluster Toolkit 會根據您在上一個步驟中建立的部署檔案和預設叢集藍圖,佈建叢集。如要進一步瞭解藍圖安裝的軟體 (包括 NVIDIA 驅動程式和 CUDA),請參閱 Slurm 自訂映像檔。
如要佈建叢集,請從 Cluster Toolkit 目錄執行適用於機型的指令。這個步驟大約需要 20 到 30 分鐘。
A4X Max
./gcluster deploy -d a4xmax-bm-slurm-deployment.yaml examples/machine-learning/a4x-maxgpu-4g-metal/a4xmax-bm-slurm-blueprint.yaml --auto-approve
A4X
./gcluster deploy -d a4xhigh-slurm-deployment.yaml examples/machine-learning/a4x-highgpu-4g/a4xhigh-slurm-blueprint.yaml --auto-approve
A4
./gcluster deploy -d a4high-slurm-deployment.yaml examples/machine-learning/a4-highgpu-8g/a4high-slurm-blueprint.yaml --auto-approve
A3 Ultra
./gcluster deploy -d a3ultra-slurm-deployment.yaml examples/machine-learning/a3-ultragpu-8g/a3ultra-slurm-blueprint.yaml --auto-approve
A3 Mega
./gcluster deploy -d a3mega-slurm-deployment.yaml examples/machine-learning/a3-megagpu-8g/a3mega-slurm-blueprint.yaml --auto-approve
A3 High
./gcluster deploy -d a3high-slurm-deployment.yaml examples/machine-learning/a3-highgpu-8g/a3high-slurm-blueprint.yaml --auto-approve
連線至 Slurm 叢集
如要存取叢集,請登入 Slurm 登入節點。如要登入,可以使用 Google Cloud 控制台或 Google Cloud CLI。
控制台
前往「Compute Engine」>「VM instances」(VM 執行個體) 頁面。
找出登入節點。名稱應採用「
DEPLOYMENT_NAME+login-001」格式。在登入節點的「連線」欄中,按一下「SSH」。
gcloud
如要連線至登入節點,請完成下列步驟:
使用
gcloud compute instances list指令找出登入節點。gcloud compute instances list \ --zones=
ZONE\ --filter="name ~ login" --format "value(name)"如果輸出內容列出多個 Slurm 叢集,您可以根據指定的
DEPLOYMENT_NAME找出登入節點。使用
gcloud compute ssh指令連線至登入節點。gcloud compute ssh LOGIN_NODE \ --zone=
ZONE--tunnel-through-iap更改下列內容:
ZONE:叢集 VM 所在的可用區。LOGIN_NODE:登入節點的名稱,也就是您在上一個步驟中識別的名稱。
測試 Slurm 叢集的網路效能
建議您驗證已佈建叢集的功能。如要執行這項操作,請使用 NCCL 測試,也就是針對 Google 環境最佳化的 NVIDIA Collective Communications Library (NCCL) 測試。
重新部署 Slurm 叢集
如要增加運算節點數量或在叢集中新增分割區,可能需要重新部署,藉此更新 Slurm 叢集的設定。使用先前部署作業的現有映像檔,可加快重新部署作業。如要避免在重新部署期間建立新映像檔,請指定 --only 標記。
如要使用現有映像檔重新部署叢集,請執行下列操作:
請針對所需機型執行指令:
A4X Max
./gcluster deploy -d a4xmax-bm-slurm-deployment.yaml examples/machine-learning/a4x-maxgpu-4g-metal/a4xmax-bm-slurm-blueprint.yaml --only cluster-env,cluster --auto-approve -w
A4X
./gcluster deploy -d a4xhigh-slurm-deployment.yaml examples/machine-learning/a4x-highgpu-4g/a4xhigh-slurm-blueprint.yaml --only cluster-env,cluster --auto-approve -w
A4
./gcluster deploy -d a4high-slurm-deployment.yaml examples/machine-learning/a4-highgpu-8g/a4high-slurm-blueprint.yaml --only cluster-env,cluster -w --auto-approve
A3 Ultra
./gcluster deploy -d a3ultra-slurm-deployment.yaml examples/machine-learning/a3-ultragpu-8g/a3ultra-slurm-blueprint.yaml --only cluster-env,cluster -w --auto-approve
A3 Mega
./gcluster deploy -d a3mega-slurm-deployment.yaml examples/machine-learning/a3-megagpu-8g/a3mega-slurm-blueprint.yaml --only cluster-env,cluster -w --auto-approve
A3 High
./gcluster deploy -d a3high-slurm-deployment.yaml examples/machine-learning/a3-highgpu-8g/a3high-slurm-blueprint.yaml --only cluster-env,cluster -w --auto-approve
這項指令僅適用於映像檔已存在的重新部署作業,只會重新部署叢集及其基礎架構。
刪除 Slurm 叢集
根據預設,A4X Max、A4X、A4 和 A3 Ultra 藍圖會在 Filestore 執行個體上,啟用防刪除功能。如要在刪除 Slurm 叢集時刪除 Filestore 執行個體,請先停用防刪除功能,再執行刪除指令。如需操作說明,請參閱「為現有執行個體設定或移除刪除保護措施」。
如果尚未中斷連線,請中斷與叢集的連線。
執行刪除指令前,請前往 Cluster Toolkit 目錄的根層級。根據預設,DEPLOYMENT_FOLDER 位於 Cluster Toolkit 目錄的根層級。
執行下列指令,即可刪除叢集:
./gcluster destroy DEPLOYMENT_FOLDER --auto-approve
更改下列內容:
DEPLOYMENT_FOLDER:部署資料夾的名稱。通常與 DEPLOYMENT_NAME 相同。
刪除作業完成後,畫面上會顯示類似如下的訊息:
Destroy complete! Resources: xx destroyed.
如要瞭解如何徹底刪除基礎架構,以及進階的手動部署說明,請參閱 Cluster Toolkit 目錄根層級的部署資料夾:DEPLOYMENT_FOLDER/instructions.txt