In diesem Dokument wird beschrieben, wie Sie einen selbstverwalteten Slurm-Cluster konfigurieren und bereitstellen, der die Maschinentypen A4X Max, A4X, A4, A3 Ultra, A3 Mega oder A3 High verwendet. Weitere Informationen zu diesen beschleunigungsoptimierten Maschinentypen finden Sie unter GPU-Beschleuniger.
In diesem Dokument wird beschrieben, wie Sie mit dem Cluster Toolkit einen Slurm-Cluster erstellen. Cluster Toolkit ist ein Open-Source-Tool von Google, das die Konfiguration und Bereitstellung eines Clusters mithilfe von Blueprints vereinfacht. Sie haben die volle Kontrolle über Ihren Cluster, sind aber auch für die Verwaltung verantwortlich. Wenn Sie den Aufwand für die Verwaltung eines Clusters vermeiden und sich auf die Ausführung Ihrer Arbeitslast konzentrieren möchten, erstellen Sie einen vollständig verwalteten Cluster mit Cluster Director.
Beschränkungen
Je nach Maschinentyp, den die Compute Engine-Instanzen in Ihrem Cluster verwenden, gelten die folgenden Einschränkungen:
A4X Max
- Sie erhalten weder Rabatte für kontinuierliche Nutzung noch flexible Rabatte für zugesicherte Nutzung für Instanzen, die diesen Maschinentyp verwenden.
- Sie können Instanzen nur in bestimmten Regionen und Zonen erstellen.
- Sie können keinen nichtflüchtigen Speicher (regional oder zonal) verwenden. Sie können nur Google Cloud Hyperdisk verwenden.
- Dieser Maschinentyp ist nur auf der NVIDIA Grace-Plattform verfügbar.
- Änderungen des Maschinentyps werden für A4X Max nicht unterstützt. Wenn Sie zu diesem Maschinentyp wechseln oder ihn ändern möchten, müssen Sie eine neue Instanz erstellen.
- Sie können Windows-Betriebssysteme nicht auf diesem Maschinentyp ausführen. Eine Liste der unterstützten Linux-Betriebssysteme finden Sie unter Unterstützte Betriebssysteme für GPU-Instanzen.
- A4X Max-Instanzen unterstützen Folgendes nicht:
- Sie können Hyperdisk ML-Laufwerke, die vor dem 4. Februar 2026 erstellt wurden, nicht an A4X Max-Maschinentypen anhängen.
A4X
- Sie erhalten weder Rabatte für kontinuierliche Nutzung noch flexible Rabatte für zugesicherte Nutzung für Instanzen, die diesen Maschinentyp verwenden.
- Sie können Instanzen nur in bestimmten Regionen und Zonen erstellen.
- Sie können keinen nichtflüchtigen Speicher (regional oder zonal) verwenden. Sie können nur Google Cloud Hyperdisk verwenden.
- Dieser Maschinentyp ist nur auf der NVIDIA Grace-Plattform verfügbar.
- Änderungen des Maschinentyps werden für A4X nicht unterstützt. Wenn Sie zu diesem Maschinentyp wechseln oder ihn ändern möchten, müssen Sie eine neue Instanz erstellen.
- Sie können Windows-Betriebssysteme nicht auf diesem Maschinentyp ausführen. Eine Liste der unterstützten Linux-Betriebssysteme finden Sie unter Unterstützte Betriebssysteme für GPU-Instanzen.
- Wenn Sie bei A4X-Instanzen
ethtool -Szum Überwachen des GPU-Netzwerks verwenden, werden die Zähler für physische Ports, die auf_phyenden, nicht aktualisiert. Dies ist das erwartete Verhalten für Instanzen, die die MRDMA-VF-Architektur (Virtual Function) verwenden. Weitere Informationen finden Sie unter MRDMA-Funktionen und Netzwerkmonitoring-Tools. - A4X-Instanzen unterstützen Folgendes nicht:
- Sie können Hyperdisk ML-Laufwerke, die vor dem 4. Februar 2026 erstellt wurden, nicht an A4X-Maschinentypen anhängen.
A4
- Sie erhalten weder Rabatte für kontinuierliche Nutzung noch flexible Rabatte für zugesicherte Nutzung für Instanzen, die einen A4-Maschinentyp verwenden.
- Sie können einen A4-Maschinentyp nur in bestimmten Regionen und Zonen verwenden.
- Sie können keinen nichtflüchtigen Speicher (regional oder zonal) verwenden. Sie können nur Google Cloud Hyperdisk verwenden.
- Der A4-Maschinentyp ist nur auf der Emerald Rapids-CPU-Plattform verfügbar.
- Sie können den Maschinentyp einer Instanz nicht in einen A4-Maschinentyp oder von einem A4-Maschinentyp in einen anderen Maschinentyp ändern. Sie müssen eine neue Instanz mit diesem Maschinentyp erstellen.
- A4-Maschinentypen unterstützen keine einzelnen Mandanten.
- Sie können Windows-Betriebssysteme nicht auf einem A4-Maschinentyp ausführen.
- Wenn Sie bei A4-Instanzen
ethtool -Szum Überwachen des GPU-Netzwerks verwenden, werden die Zähler für physische Ports, die auf_phyenden, nicht aktualisiert. Dies ist das erwartete Verhalten für Instanzen, die die MRDMA-VF-Architektur (Virtual Function) verwenden. Weitere Informationen finden Sie unter MRDMA-Funktionen und Netzwerkmonitoring-Tools. - Sie können Hyperdisk ML-Laufwerke, die vor dem 4. Februar 2026 erstellt wurden, nicht an A4-Maschinentypen anhängen.
A3 Ultra
- Sie erhalten weder Rabatte für kontinuierliche Nutzung noch flexible Rabatte für zugesicherte Nutzung für Instanzen, die einen A3-Ultra-Maschinentyp verwenden.
- Sie können einen A3-Ultra-Maschinentyp nur in bestimmten Regionen und Zonen verwenden.
- Sie können keinen nichtflüchtigen Speicher (regional oder zonal) verwenden. Sie können nur Google Cloud Hyperdisk verwenden.
- Der A3 Ultra-Maschinentyp ist nur auf der Emerald Rapids-CPU-Plattform verfügbar.
- Änderungen des Maschinentyps werden für den A3 Ultra-Maschinentyp nicht unterstützt. Wenn Sie zu diesem Maschinentyp wechseln oder von diesem Maschinentyp zu einem anderen wechseln möchten, müssen Sie eine neue Instanz erstellen.
- Sie können Windows-Betriebssysteme nicht auf einem A3-Ultra-Maschinentyp ausführen.
- A3 Ultra-Maschinentypen unterstützen keine einzelnen Mandanten.
- Wenn Sie bei A3 Ultra-Instanzen
ethtool -Szum Überwachen des GPU-Netzwerks verwenden, werden die Zähler für physische Ports, die auf_phyenden, nicht aktualisiert. Dies ist das erwartete Verhalten für Instanzen, die die MRDMA-VF-Architektur (Virtual Function) verwenden. Weitere Informationen finden Sie unter MRDMA-Funktionen und Netzwerkmonitoring-Tools.
A3 Mega
- Sie erhalten weder Rabatte für kontinuierliche Nutzung noch flexible Rabatte für zugesicherte Nutzung für Instanzen, die einen A3-Mega-Maschinentyp verwenden.
- Sie können einen A3-Mega-Maschinentyp nur in bestimmten Regionen und Zonen verwenden.
- Sie können keinen regionalen nichtflüchtigen Speicher auf einer Instanz verwenden, die einen A3-Mega-Maschinentyp verwendet.
- Der Maschinentyp „A3 Mega“ ist nur auf der Sapphire Rapids-CPU-Plattform verfügbar.
- Änderungen des Maschinentyps werden für den A3 Mega-Maschinentyp nicht unterstützt. Wenn Sie zu diesem Maschinentyp wechseln oder von diesem Maschinentyp zu einem anderen wechseln möchten, müssen Sie eine neue Instanz erstellen.
- Sie können Windows-Betriebssysteme nicht auf einem A3 Mega-Maschinentyp ausführen.
A3 High
- Sie erhalten weder Rabatte für kontinuierliche Nutzung noch flexible Rabatte für zugesicherte Nutzung für Instanzen, die einen A3 High-Maschinentyp verwenden.
- Sie können einen A3-High-Maschinentyp nur in bestimmten Regionen und Zonen verwenden.
- Sie können keinen regionalen nichtflüchtigen Speicher auf einer Instanz verwenden, die einen A3-High-Maschinentyp verwendet.
- Der Maschinentyp „A3 High“ ist nur auf der Sapphire Rapids-CPU-Plattform verfügbar.
- Änderungen des Maschinentyps werden für den Maschinentyp A3 High nicht unterstützt. Wenn Sie zu diesem Maschinentyp wechseln oder von diesem Maschinentyp zu einem anderen wechseln möchten, müssen Sie eine neue Instanz erstellen.
- Sie können Windows-Betriebssysteme nicht auf einem A3-High-Maschinentyp ausführen.
- Für die Maschinentypen
a3-highgpu-1g,a3-highgpu-2gunda3-highgpu-4gmüssen Sie Instanzen mit Spot-VMs oder Flex-Start-VMs erstellen. Eine detaillierte Anleitung zu diesen Optionen finden Sie hier:- Wenn Sie Spot-VMs erstellen möchten, legen Sie das Bereitstellungsmodell auf
SPOTfest, wenn Sie eine beschleunigungsoptimierte VM erstellen. - Sie haben folgende Möglichkeiten, Flex-Start-VMs zu erstellen:
- Erstellen Sie eine eigenständige VM und legen Sie das Bereitstellungsmodell auf
FLEX_STARTfest, wenn Sie eine beschleunigungsoptimierte VM erstellen. - Anfrage zur Größenanpassung in einer verwalteten Instanzgruppe (MIG) erstellen Eine Anleitung finden Sie unter MIG mit GPU-VMs erstellen.
- Erstellen Sie eine eigenständige VM und legen Sie das Bereitstellungsmodell auf
- Wenn Sie Spot-VMs erstellen möchten, legen Sie das Bereitstellungsmodell auf
- Sie können eine Confidential VM mit einem
a3-highgpu-1g-Maschinentyp nur in bestimmten Regionen und Zonen verwenden. Außerdem gelten alle Einschränkungen für Confidential VMs, die auf dem A3 High-Maschinentyp ausgeführt werden.
Hinweis
Führen Sie vor dem Erstellen eines Slurm-Clusters die folgenden Schritte aus, falls Sie dies noch nicht getan haben:
- Nutzungsoption auswählen: Die gewählte Nutzungsoption bestimmt, wie Sie GPU-Ressourcen erhalten und verwenden. Weitere Informationen finden Sie unter Nutzungsoption auswählen.
- Kapazität erhalten: Der Prozess zum Erhalten von Kapazität unterscheidet sich je nach Verbrauchsoption. Informationen zum Erhalten von Kapazität für die von Ihnen ausgewählte Nutzungsoption finden Sie unter Kapazitätsübersicht.
- Prüfen Sie, ob Sie genügend Filestore- oder Google Cloud Managed Lustre-Kontingent haben: Sie benötigen vor der Bereitstellung genügend Filestore- oder Managed Lustre-Kontingent in Ihrer Zielregion und -zone.
Das erforderliche Mindestkontingent hängt vom Speicherdienst und den Maschinentypen in Ihrem Cluster ab:
- Managed Lustre:
- A4X Max: Erfordert ein Kontingent von mindestens 18.000 GiB Speicherkapazität und 9 GB/s Durchsatz.
- A4X, A4, A3 Ultra, A3 Mega und A3 High: Erfordert ein Kontingent für die Speicherkapazität von mindestens 36.000 GiB und ein Kontingent für den Durchsatz von mindestens 18 GB/s.
- Filestore:
- A4X Max, A4X, A4, A3 Ultra und A3 Mega: Erfordert ein Mindestkontingent von 10 TiB (10.240 GiB) an HIGH_SCALE_SSD-Kapazität (zonal).
- A3 High: Erfordert ein Kontingent von mindestens 2,5 TiB (2.560 GiB) an BASIC_SSD-Kapazität (Standard).
Informationen zum Prüfen von Kontingenten oder zum Anfordern einer Kontingenterhöhung finden Sie hier:
- Informationen zum Prüfen des Kontingents in Ihrem Projekt finden Sie unter API-spezifische Kontingente aufrufen.
- Wenn Sie nicht genügend Kontingent haben, fordern Sie eine Erhöhung des Filestore-Kontingents an oder fordern Sie zusätzliches Managed Lustre-Kontingent an.
- Managed Lustre:
- Cluster Toolkit installieren: Zum Bereitstellen von Slurm-Clustern müssen Sie das Cluster Toolkit in Version
v1.62.0oder höher verwenden.Informationen zum Installieren des Cluster Toolkits finden Sie unter Cluster Toolkit einrichten.
Erforderliche Rollen
Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Bereitstellen eines Slurm-Clusters benötigen:
- Storage-Administrator (
roles/storage.admin) für Ihr Projekt - Compute Instance Admin (v1) (
roles/compute.instanceAdmin.v1) für Ihr Projekt - Dienstkontonutzer (
roles/iam.serviceAccountUser) für das Dienstkonto selbst -
So nutzen Sie eine Reservierung für ein Einzelprojekt:
Compute Instance Admin (v1) (
roles/compute.instanceAdmin.v1) für Ihr Projekt -
So nutzen Sie eine freigegebene Reservierung: Compute Instance Admin (v1) (
roles/compute.instanceAdmin.v1) sowohl für das Inhaberprojekt als auch für alle Nutzerprojekte, in denen Sie die Reservierung nutzen möchten
Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.
Sie können die erforderlichen Berechtigungen auch über benutzerdefinierte Rollen oder andere vordefinierte Rollen erhalten.
Storage-Bucket einrichten
Cluster-Blueprints verwenden Terraform-Module, um die Cloud-Infrastruktur bereitzustellen. Als Best Practice für die Arbeit mit Terraform empfiehlt es sich, den Status remote in einer versionsfähigen Datei zu speichern. Auf Google Cloudkönnen Sie einen Cloud Storage-Bucket mit aktivierter Versionsverwaltung erstellen.
Führen Sie die folgenden Befehle aus, um diesen Bucket zu erstellen und die Versionsverwaltung über die Befehlszeile zu aktivieren:
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
Ersetzen Sie Folgendes:
BUCKET_NAME: Ein Name für Ihren Cloud Storage-Bucket, der den Anforderungen für Bucket-Namen entspricht.PROJECT_ID: Ihre Projekt-ID.BUCKET_REGION: ein beliebiger verfügbarer Standort.
Cluster Toolkit installieren
Wenn Sie Slurm mit Google Cloudverwenden möchten, müssen Sie das Cluster Toolkit installieren. Für Linux und macOS empfehlen wir, das vordefinierte Bundle zu installieren.
Wechseln Sie nach der Installation des Cluster Toolkits in das Verzeichnis, das die Binärdatei gcluster enthält:
Wenn Sie das vordefinierte Bundle installiert haben, wechseln Sie in das Verzeichnis
gcluster-bundle:cd gcluster-bundle
Wenn Sie die Binärdatei aus der Quelle erstellt haben, wechseln Sie in das Verzeichnis
cluster-toolkit:cd cluster-toolkit
Für diese Clusterbereitstellung ist Cluster Toolkit
v1.62.0oder höher erforderlich. Prüfen Sie die installierte Version:./gcluster --version
Bereitstellungsdatei erstellen
Erstellen Sie eine Bereitstellungsdatei, mit der Sie den Cloud Storage-Bucket angeben, Namen für Ihr Netzwerk und Subnetzwerk festlegen und Bereitstellungsvariablen wie Projekt-ID, Region und Zone festlegen können.
Folgen Sie der Anleitung für den erforderlichen Maschinentyp und die Verbrauchsoption, um eine Bereitstellungsdatei zu erstellen.
A4X Max
Erstellen Sie mit einem Texteditor eine YAML-Datei mit dem Namen a4xmax-bm-slurm-deployment.yaml und fügen Sie den folgenden Inhalt hinzu.
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
Ersetzen Sie Folgendes:
BUCKET_NAME: Der Name Ihres Cloud Storage-Buckets, den Sie im vorherigen Abschnitt erstellt haben.DEPLOYMENT_NAME: Ein Name für Ihre Bereitstellung. Wenn Sie mehrere Cluster erstellen, müssen Sie für jeden einen eindeutigen Namen auswählen.PROJECT_ID: Ihre Projekt-ID.REGION: die Region, in der sich die reservierten Maschinen befinden.ZONE: die Zone, in der Sie den Cluster bereitstellen möchten. Wenn Sie eine reservierungsbasierte Verbrauchsoption verwenden, wurden die Regions- und Zoneninformationen von Ihrem Account-Management-Team bereitgestellt, als die Kapazität bereitgestellt wurde.NUMBER_OF_INSTANCES: die Anzahl der A4X Max-Bare-Metal-Instanzen in Ihrem Cluster. Sie können eine beliebige Anzahl von Instanzen angeben. A4X Max-Instanzen sind jedoch physisch über ein Multi-Knoten-NVLink-System in Gruppen von 18 Instanzen (72 GPUs) miteinander verbunden, um eine NVLink-Domain zu bilden.Für eine optimale Netzwerkleistung empfehlen wir, einen Wert anzugeben, der ein Vielfaches von 18 Instanzen ist (z. B. 18, 36 oder 54). Wenn Sie einen A4X Max-Cluster erstellen, wird mit dem A4X Max-Blueprint automatisch eine Richtlinie für kompakte Platzierung mit einer GPU-Topologie von
1x72für jede Gruppe von 18 Instanzen erstellt und angewendet.RESERVATION_NAME: der Name Ihrer Reservierung.
A4X
Erstellen Sie mit einem Texteditor eine YAML-Datei mit dem Namen a4xhigh-slurm-deployment.yaml und fügen Sie den folgenden Inhalt hinzu.
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_INSTANCES
a4x_reservation_name: RESERVATION_NAME
Ersetzen Sie Folgendes:
BUCKET_NAME: Der Name Ihres Cloud Storage-Buckets, den Sie im vorherigen Abschnitt erstellt haben.DEPLOYMENT_NAME: Ein Name für Ihre Bereitstellung. Wenn Sie mehrere Cluster erstellen, müssen Sie für jeden einen eindeutigen Namen auswählen.PROJECT_ID: Ihre Projekt-ID.REGION: die Region, in der sich die reservierten Maschinen befinden.ZONE: die Zone, in der Sie den Cluster bereitstellen möchten. Wenn Sie eine reservierungsbasierte Verbrauchsoption verwenden, wurden die Regions- und Zoneninformationen von Ihrem Account-Management-Team bereitgestellt, als die Kapazität bereitgestellt wurde.NUMBER_OF_INSTANCES: die Anzahl der A4X-Instanzen in Ihrem Cluster. Sie können eine beliebige Anzahl von Instanzen angeben. A4X-Instanzen sind jedoch physisch über ein NVLink-System mit mehreren Knoten in Gruppen von 18 Instanzen (72 GPUs) miteinander verbunden, um eine NVLink-Domain zu bilden.Für eine optimale Netzwerkleistung empfehlen wir, einen Wert anzugeben, der ein Vielfaches von 18 Instanzen ist (z. B. 18, 36 oder 54). Wenn Sie einen A4X-Cluster erstellen, wird durch den A4X-Blueprint automatisch eine Richtlinie für kompakte Platzierung mit einer GPU-Topologie von
1x72für jede Gruppe von 18 Instanzen erstellt und angewendet. Weitere Informationen zur A4X-Topologie finden Sie unter A4X-Grundlagen.RESERVATION_NAME: der Name Ihrer Reservierung.
A4
Die Parameter, die Sie Ihrer Bereitstellungsdatei hinzufügen müssen, hängen von der Nutzungsoption ab, die Sie für Ihre Bereitstellung verwenden. Wählen Sie den Tab aus, der dem Bereitstellungsmodell Ihrer Verbrauchsoption entspricht.
Reservierungsgebunden
Erstellen Sie mit einem Texteditor eine YAML-Datei mit dem Namen a4high-slurm-deployment.yaml und fügen Sie den folgenden Inhalt hinzu.
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_INSTANCES
a4h_reservation_name: RESERVATION_NAME
Ersetzen Sie Folgendes:
BUCKET_NAME: Der Name Ihres Cloud Storage-Buckets, den Sie im vorherigen Abschnitt erstellt haben.DEPLOYMENT_NAME: Ein Name für Ihre Bereitstellung. Wenn Sie mehrere Cluster erstellen, müssen Sie für jeden einen eindeutigen Namen auswählen.PROJECT_ID: Ihre Projekt-ID.REGION: die Region, in der sich die reservierten Maschinen befinden.ZONE: die Zone, in der Sie den Cluster bereitstellen möchten. Wenn Sie eine reservierungsbasierte Verbrauchsoption verwenden, wurden die Regions- und Zoneninformationen von Ihrem Account-Management-Team bereitgestellt, als die Kapazität bereitgestellt wurde.NUMBER_OF_INSTANCES: die Anzahl der Compute Engine-Instanzen, die Sie für den Cluster benötigen.RESERVATION_NAME: der Name Ihrer Reservierung.
Flex-Start
Erstellen Sie mit einem Texteditor eine YAML-Datei mit dem Namen a4high-slurm-deployment.yaml und fügen Sie den folgenden Inhalt hinzu.
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_INSTANCES
a4h_dws_flex_enabled: true
Ersetzen Sie Folgendes:
BUCKET_NAME: Der Name Ihres Cloud Storage-Buckets, den Sie im vorherigen Abschnitt erstellt haben.DEPLOYMENT_NAME: Ein Name für Ihre Bereitstellung. Wenn Sie mehrere Cluster erstellen, müssen Sie für jeden einen eindeutigen Namen auswählen.PROJECT_ID: Ihre Projekt-ID.REGION: die Region, in der Sie Ihren Cluster bereitstellen möchten.ZONE: die Zone, in der Sie Ihren Cluster bereitstellen möchten.NUMBER_OF_INSTANCES: die Anzahl der Compute Engine-Instanzen, die Sie für den Cluster benötigen.
Bei dieser Bereitstellung werden statische Rechenknoten bereitgestellt. Das bedeutet, dass der Cluster immer eine feste Anzahl von Knoten hat. Wenn Sie stattdessen das Autoscaling für Ihren Cluster aktivieren möchten, verwenden Sie die Datei examples/machine-learning/a4-highgpu-8g/a4high-slurm-blueprint.yaml und bearbeiten Sie die Werte von node_count_static und node_count_dynamic_max so, dass sie den folgenden Werten entsprechen:
node_count_static: 0
node_count_dynamic_max: $(vars.a4h_cluster_size)
Spot
Erstellen Sie mit einem Texteditor eine YAML-Datei mit dem Namen a4high-slurm-deployment.yaml und fügen Sie den folgenden Inhalt hinzu.
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_INSTANCES
a4h_enable_spot_vm: true
Ersetzen Sie Folgendes:
BUCKET_NAME: Der Name Ihres Cloud Storage-Buckets, den Sie im vorherigen Abschnitt erstellt haben.DEPLOYMENT_NAME: Ein Name für Ihre Bereitstellung. Wenn Sie mehrere Cluster erstellen, müssen Sie für jeden einen eindeutigen Namen auswählen.PROJECT_ID: Ihre Projekt-ID.REGION: die Region, in der Sie Ihren Cluster bereitstellen möchten.ZONE: die Zone, in der Sie Ihren Cluster bereitstellen möchten.NUMBER_OF_INSTANCES: die Anzahl der Compute Engine-Instanzen, die Sie für den Cluster benötigen.
A3 Ultra
Die Parameter, die Sie Ihrer Bereitstellungsdatei hinzufügen müssen, hängen von der Nutzungsoption ab, die Sie für Ihre Bereitstellung verwenden. Wählen Sie den Tab aus, der dem Bereitstellungsmodell Ihrer Verbrauchsoption entspricht.
Reservierungsgebunden
Erstellen Sie mit einem Texteditor eine YAML-Datei mit dem Namen a3ultra-slurm-deployment.yaml und fügen Sie den folgenden Inhalt hinzu.
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_INSTANCES
a3u_reservation_name: RESERVATION_NAME
Ersetzen Sie Folgendes:
BUCKET_NAME: Der Name Ihres Cloud Storage-Buckets, den Sie im vorherigen Abschnitt erstellt haben.DEPLOYMENT_NAME: Ein Name für Ihre Bereitstellung. Wenn Sie mehrere Cluster erstellen, müssen Sie für jeden einen eindeutigen Namen auswählen.PROJECT_ID: Ihre Projekt-ID.REGION: die Region, in der sich die reservierten Maschinen befinden.ZONE: die Zone, in der Sie den Cluster bereitstellen möchten. Wenn Sie eine reservierungsbasierte Verbrauchsoption verwenden, wurden die Regions- und Zoneninformationen von Ihrem Account-Management-Team bereitgestellt, als die Kapazität bereitgestellt wurde.NUMBER_OF_INSTANCES: die Anzahl der Compute Engine-Instanzen, die Sie für den Cluster benötigen.RESERVATION_NAME: der Name Ihrer Reservierung.
Flex-Start
Erstellen Sie mit einem Texteditor eine YAML-Datei mit dem Namen a3ultra-slurm-deployment.yaml und fügen Sie den folgenden Inhalt hinzu.
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_INSTANCES
a3u_dws_flex_enabled: true
Ersetzen Sie Folgendes:
BUCKET_NAME: Der Name Ihres Cloud Storage-Buckets, den Sie im vorherigen Abschnitt erstellt haben.DEPLOYMENT_NAME: Ein Name für Ihre Bereitstellung. Wenn Sie mehrere Cluster erstellen, müssen Sie für jeden einen eindeutigen Namen auswählen.PROJECT_ID: Ihre Projekt-ID.REGION: die Region, in der Sie Ihren Cluster bereitstellen möchten.ZONE: die Zone, in der Sie Ihren Cluster bereitstellen möchten.NUMBER_OF_INSTANCES: die Anzahl der Compute Engine-Instanzen, die Sie für den Cluster benötigen.
Bei dieser Bereitstellung werden statische Rechenknoten bereitgestellt. Das bedeutet, dass der Cluster immer eine feste Anzahl von Knoten hat. Wenn Sie stattdessen das Autoscaling für Ihren Cluster aktivieren möchten, verwenden Sie die Datei examples/machine-learning/a3-ultragpu-8g/a3ultra-slurm-blueprint.yaml und bearbeiten Sie die Werte von node_count_static und node_count_dynamic_max so, dass sie den folgenden Werten entsprechen:
node_count_static: 0
node_count_dynamic_max: $(vars.a3u_cluster_size)
Spot
Erstellen Sie mit einem Texteditor eine YAML-Datei mit dem Namen a3ultra-slurm-deployment.yaml und fügen Sie den folgenden Inhalt hinzu.
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_INSTANCES
a3u_enable_spot_vm: true
Ersetzen Sie Folgendes:
BUCKET_NAME: Der Name Ihres Cloud Storage-Buckets, den Sie im vorherigen Abschnitt erstellt haben.DEPLOYMENT_NAME: Ein Name für Ihre Bereitstellung. Wenn Sie mehrere Cluster erstellen, müssen Sie für jeden einen eindeutigen Namen auswählen.PROJECT_ID: Ihre Projekt-ID.REGION: die Region, in der Sie Ihren Cluster bereitstellen möchten.ZONE: die Zone, in der Sie Ihren Cluster bereitstellen möchten.NUMBER_OF_INSTANCES: die Anzahl der Compute Engine-Instanzen, die Sie für den Cluster benötigen.
A3 Mega
Die Parameter, die Sie Ihrer Bereitstellungsdatei hinzufügen müssen, hängen von der Nutzungsoption ab, die Sie für Ihre Bereitstellung verwenden. Wählen Sie den Tab aus, der dem Bereitstellungsmodell Ihrer Verbrauchsoption entspricht.
Reservierungsgebunden
Erstellen Sie eine YAML-Datei mit dem Namen a3mega-slurm-deployment.yaml und fügen Sie den folgenden Inhalt hinzu, um Ihre Bereitstellungsdatei zu erstellen.
terraform_backend_defaults:
type: gcs
configuration:
bucket: BUCKET_NAME
vars:
deployment_name: DEPLOYMENT_NAME
project_id: PROJECT_ID
region: REGION
zone: ZONE
network_name_system: SYSTEM_NETWORK_NAME
subnetwork_name_system: SYSTEM_SUBNET_NAME
slurm_cluster_name: CLUSTER_NAME
a3mega_cluster_size: NUMBER_OF_INSTANCES
a3mega_reservation_name: RESERVATION_NAME
a3mega_partition_name: PARTITION_NAME
Ersetzen Sie Folgendes:
BUCKET_NAME: Der Name Ihres Cloud Storage-Buckets, den Sie im vorherigen Abschnitt erstellt haben.DEPLOYMENT_NAME: Ein Name für Ihre Bereitstellung. Wenn Sie mehrere Cluster erstellen, müssen Sie für jeden einen eindeutigen Namen auswählen.PROJECT_ID: Ihre Projekt-ID.SYSTEM_NETWORK_NAME: der Name des VPC-Netzwerk, das für das Systemnetzwerk verwendet werden soll.SYSTEM_SUBNET_NAME: Der Name des Subnetzwerks, das für das Systemnetzwerk verwendet werden soll.CLUSTER_NAME: ein Name für Ihren Slurm-Cluster.REGION: die Region, in der sich die reservierten Maschinen befinden.ZONE: die Zone, in der Sie den Cluster bereitstellen möchten. Wenn Sie eine reservierungsbasierte Verbrauchsoption verwenden, wurden die Regions- und Zoneninformationen von Ihrem Account-Management-Team bereitgestellt, als die Kapazität bereitgestellt wurde.NUMBER_OF_INSTANCES: die Anzahl der Compute Engine-Instanzen, die Sie für den Cluster benötigen.RESERVATION_NAME: der Name Ihrer Reservierung.PARTITION_NAME: ein Name für die Slurm-Partition.
Flex-Start
Erstellen Sie eine YAML-Datei mit dem Namen a3mega-slurm-deployment.yaml und fügen Sie den folgenden Inhalt hinzu, um Ihre Bereitstellungsdatei zu erstellen.
terraform_backend_defaults:
type: gcs
configuration:
bucket: BUCKET_NAME
vars:
deployment_name: DEPLOYMENT_NAME
project_id: PROJECT_ID
region: REGION
zone: ZONE
network_name_system: SYSTEM_NETWORK_NAME
subnetwork_name_system: SYSTEM_SUBNET_NAME
slurm_cluster_name: CLUSTER_NAME
a3mega_cluster_size: NUMBER_OF_INSTANCES
a3mega_dws_flex_enabled: true
Ersetzen Sie Folgendes:
BUCKET_NAME: Der Name Ihres Cloud Storage-Buckets, den Sie im vorherigen Abschnitt erstellt haben.DEPLOYMENT_NAME: Ein Name für Ihre Bereitstellung. Wenn Sie mehrere Cluster erstellen, müssen Sie für jeden einen eindeutigen Namen auswählen.PROJECT_ID: Ihre Projekt-ID.SYSTEM_NETWORK_NAME: der Name des VPC-Netzwerk, das für das Systemnetzwerk verwendet werden soll.SYSTEM_SUBNET_NAME: Der Name des Subnetzwerks, das für das Systemnetzwerk verwendet werden soll.CLUSTER_NAME: ein Name für Ihren Slurm-Cluster.REGION: die Region, in der Sie Ihren Cluster bereitstellen möchten.ZONE: die Zone, in der Sie Ihren Cluster bereitstellen möchten.NUMBER_OF_INSTANCES: die Anzahl der Compute Engine-Instanzen, die Sie für den Cluster benötigen.
Bei dieser Bereitstellung werden statische Rechenknoten bereitgestellt. Das bedeutet, dass der Cluster immer eine feste Anzahl von Knoten hat. Wenn Sie stattdessen das Autoscaling für Ihren Cluster aktivieren möchten, verwenden Sie die Datei examples/machine-learning/a3-megagpu-8g/a3mega-slurm-blueprint.yaml und bearbeiten Sie die Werte von node_count_static und node_count_dynamic_max so, dass sie den folgenden Werten entsprechen:
node_count_static: 0
node_count_dynamic_max: $(vars.a3mega_cluster_size)
Spot
Erstellen Sie eine YAML-Datei mit dem Namen a3mega-slurm-deployment.yaml und fügen Sie den folgenden Inhalt hinzu, um Ihre Bereitstellungsdatei zu erstellen.
terraform_backend_defaults:
type: gcs
configuration:
bucket: BUCKET_NAME
vars:
deployment_name: DEPLOYMENT_NAME
project_id: PROJECT_ID
region: REGION
zone: ZONE
network_name_system: SYSTEM_NETWORK_NAME
subnetwork_name_system: SYSTEM_SUBNET_NAME
slurm_cluster_name: CLUSTER_NAME
a3mega_cluster_size: NUMBER_OF_INSTANCES
a3mega_enable_spot_vm: true
Ersetzen Sie Folgendes:
BUCKET_NAME: Der Name Ihres Cloud Storage-Buckets, den Sie im vorherigen Abschnitt erstellt haben.DEPLOYMENT_NAME: Ein Name für Ihre Bereitstellung. Wenn Sie mehrere Cluster erstellen, müssen Sie für jeden einen eindeutigen Namen auswählen.PROJECT_ID: Ihre Projekt-ID.SYSTEM_NETWORK_NAME: der Name des VPC-Netzwerk, das für das Systemnetzwerk verwendet werden soll.SYSTEM_SUBNET_NAME: Der Name des Subnetzwerks, das für das Systemnetzwerk verwendet werden soll.CLUSTER_NAME: ein Name für Ihren Slurm-Cluster.REGION: die Region, in der Sie Ihren Cluster bereitstellen möchten.ZONE: die Zone, in der Sie Ihren Cluster bereitstellen möchten.NUMBER_OF_INSTANCES: die Anzahl der Compute Engine-Instanzen, die Sie für den Cluster benötigen.
A3 High
Die Parameter, die Sie Ihrer Bereitstellungsdatei hinzufügen müssen, hängen von der Nutzungsoption ab, die Sie für Ihre Bereitstellung verwenden. Wählen Sie den Tab aus, der dem Bereitstellungsmodell Ihrer Verbrauchsoption entspricht.
Reservierungsgebunden
Erstellen Sie eine YAML-Datei mit dem Namen a3high-slurm-deployment.yaml und fügen Sie den folgenden Inhalt hinzu, um Ihre Bereitstellungsdatei zu erstellen.
terraform_backend_defaults:
type: gcs
configuration:
bucket: BUCKET_NAME
vars:
deployment_name: DEPLOYMENT_NAME
project_id: PROJECT_ID
region: REGION
zone: ZONE
tcpx_kernel_login: TCPX_KERNEL_LOGIN
tcpx_kernel_password: TCPX_KERNEL_PASSWORD
keyserver_ubuntu_key: KEYSERVER_UBUNTU_KEY
network_name_system: SYSTEM_NETWORK_NAME
subnetwork_name_system: SYSTEM_SUBNET_NAME
slurm_cluster_name: CLUSTER_NAME
a3_static_cluster_size: NUMBER_OF_INSTANCES
a3_reservation_name: RESERVATION_NAME
a3_partition_name: PARTITION_NAME
Ersetzen Sie Folgendes:
BUCKET_NAME: Der Name Ihres Cloud Storage-Buckets, den Sie im vorherigen Abschnitt erstellt haben.DEPLOYMENT_NAME: Ein Name für Ihre Bereitstellung. Wenn Sie mehrere Cluster erstellen, müssen Sie für jeden einen eindeutigen Namen auswählen.PROJECT_ID: Ihre Projekt-ID.TCPX_KERNEL_LOGIN,TCPX_KERNEL_PASSWORDundKEYSERVER_UBUNTU_KEY: die technischen Anmeldedaten für A3 High-optimierte Images. Diese Werte werden Ihnen von Ihrem Google Cloud-Account-Management-Team zur Verfügung gestellt. Weitere Informationen finden Sie unter Anmeldedaten für GPUDirect-TCPX abrufen.SYSTEM_NETWORK_NAME: der Name des VPC-Netzwerk, das für das Systemnetzwerk verwendet werden soll.SYSTEM_SUBNET_NAME: Der Name des Subnetzwerks, das für das Systemnetzwerk verwendet werden soll.CLUSTER_NAME: ein Name für Ihren Slurm-Cluster.REGION: die Region, in der sich die reservierten Maschinen befinden.ZONE: die Zone, in der Sie den Cluster bereitstellen möchten. Wenn Sie eine reservierungsbasierte Verbrauchsoption verwenden, wurden die Regions- und Zoneninformationen von Ihrem Account-Management-Team bereitgestellt, als die Kapazität bereitgestellt wurde.NUMBER_OF_INSTANCES: die Anzahl der Compute Engine-Instanzen, die Sie für den Cluster benötigen.RESERVATION_NAME: der Name Ihrer Reservierung.PARTITION_NAME: ein Name für die Slurm-Partition.
Flex-Start
Erstellen Sie eine YAML-Datei mit dem Namen a3high-slurm-deployment.yaml und fügen Sie den folgenden Inhalt hinzu, um Ihre Bereitstellungsdatei zu erstellen.
terraform_backend_defaults:
type: gcs
configuration:
bucket: BUCKET_NAME
vars:
deployment_name: DEPLOYMENT_NAME
project_id: PROJECT_ID
region: REGION
zone: ZONE
tcpx_kernel_login: TCPX_KERNEL_LOGIN
tcpx_kernel_password: TCPX_KERNEL_PASSWORD
keyserver_ubuntu_key: KEYSERVER_UBUNTU_KEY
network_name_system: SYSTEM_NETWORK_NAME
subnetwork_name_system: SYSTEM_SUBNET_NAME
slurm_cluster_name: CLUSTER_NAME
a3_static_cluster_size: NUMBER_OF_INSTANCES
a3_dws_flex_enabled: true
Ersetzen Sie Folgendes:
BUCKET_NAME: Der Name Ihres Cloud Storage-Buckets, den Sie im vorherigen Abschnitt erstellt haben.DEPLOYMENT_NAME: Ein Name für Ihre Bereitstellung. Wenn Sie mehrere Cluster erstellen, müssen Sie für jeden einen eindeutigen Namen auswählen.PROJECT_ID: Ihre Projekt-ID.TCPX_KERNEL_LOGIN,TCPX_KERNEL_PASSWORDundKEYSERVER_UBUNTU_KEY: die technischen Anmeldedaten für A3 High-optimierte Images. Diese Werte werden Ihnen von Ihrem Google Cloud-Account-Management-Team zur Verfügung gestellt. Weitere Informationen finden Sie unter Anmeldedaten für GPUDirect-TCPX abrufen.SYSTEM_NETWORK_NAME: der Name des VPC-Netzwerk, das für das Systemnetzwerk verwendet werden soll.SYSTEM_SUBNET_NAME: Der Name des Subnetzwerks, das für das Systemnetzwerk verwendet werden soll.CLUSTER_NAME: ein Name für Ihren Slurm-Cluster.REGION: die Region, in der Sie Ihren Cluster bereitstellen möchten.ZONE: die Zone, in der Sie Ihren Cluster bereitstellen möchten.NUMBER_OF_INSTANCES: die Anzahl der Compute Engine-Instanzen, die Sie für den Cluster benötigen.
Bei dieser Bereitstellung werden statische Rechenknoten bereitgestellt. Das bedeutet, dass der Cluster immer eine feste Anzahl von Knoten hat. Wenn Sie stattdessen das Autoscaling für Ihren Cluster aktivieren möchten, verwenden Sie die Datei examples/machine-learning/a3-highgpu-8g/a3high-slurm-blueprint.yaml und bearbeiten Sie die Werte von node_count_static und node_count_dynamic_max so, dass sie den folgenden Werten entsprechen:
node_count_static: 0
node_count_dynamic_max: $(vars.a3_static_cluster_size)
Spot
Erstellen Sie eine YAML-Datei mit dem Namen a3high-slurm-deployment.yaml und fügen Sie den folgenden Inhalt hinzu, um Ihre Bereitstellungsdatei zu erstellen.
terraform_backend_defaults:
type: gcs
configuration:
bucket: BUCKET_NAME
vars:
deployment_name: DEPLOYMENT_NAME
project_id: PROJECT_ID
region: REGION
zone: ZONE
tcpx_kernel_login: TCPX_KERNEL_LOGIN
tcpx_kernel_password: TCPX_KERNEL_PASSWORD
keyserver_ubuntu_key: KEYSERVER_UBUNTU_KEY
network_name_system: SYSTEM_NETWORK_NAME
subnetwork_name_system: SYSTEM_SUBNET_NAME
slurm_cluster_name: CLUSTER_NAME
a3_static_cluster_size: NUMBER_OF_INSTANCES
a3_enable_spot_vm: true
Ersetzen Sie Folgendes:
BUCKET_NAME: Der Name Ihres Cloud Storage-Buckets, den Sie im vorherigen Abschnitt erstellt haben.DEPLOYMENT_NAME: Ein Name für Ihre Bereitstellung. Wenn Sie mehrere Cluster erstellen, müssen Sie für jeden einen eindeutigen Namen auswählen.PROJECT_ID: Ihre Projekt-ID.TCPX_KERNEL_LOGIN,TCPX_KERNEL_PASSWORDundKEYSERVER_UBUNTU_KEY: die technischen Anmeldedaten für A3 High-optimierte Images. Diese Werte werden Ihnen von Ihrem Google Cloud-Account-Management-Team zur Verfügung gestellt. Weitere Informationen finden Sie unter Anmeldedaten für GPUDirect-TCPX abrufen.SYSTEM_NETWORK_NAME: der Name des VPC-Netzwerk, das für das Systemnetzwerk verwendet werden soll.SYSTEM_SUBNET_NAME: Der Name des Subnetzwerks, das für das Systemnetzwerk verwendet werden soll.CLUSTER_NAME: ein Name für Ihren Slurm-Cluster.REGION: die Region, in der Sie Ihren Cluster bereitstellen möchten.ZONE: die Zone, in der Sie Ihren Cluster bereitstellen möchten.NUMBER_OF_INSTANCES: die Anzahl der Compute Engine-Instanzen, die Sie für den Cluster benötigen.
Slurm-Cluster bereitstellen
Das Cluster Toolkit stellt den Cluster basierend auf der Bereitstellungsdatei, die Sie im vorherigen Schritt erstellt haben, und dem Standard-Cluster-Blueprint bereit. Informationen zu benutzerdefinierten Images oder zur Bereitstellung von Slurm mit einem benutzerdefinierten Betriebssystem-Image finden Sie unter Benutzerdefinierte Slurm-Images.
Wählen Sie zum Bereitstellen des Clusters eine der folgenden Optionen aus, um den Befehl gcluster deploy für Ihren Maschinentyp im Cluster Toolkit-Verzeichnis auszuführen. Dieser Schritt dauert etwa 20–30 Minuten.
A4X Max
Der A4X Max-Blueprint integriert Managed Lustre für leistungsstarken Speicher für Basisverzeichnisse (/home). Der Blueprint konfiguriert automatisch den Zugriff auf private Dienste (PSA), um Ihr VPC-Netzwerk mit Managed Lustre zu verbinden. Der Blueprint konfiguriert auch Lustre-Netzwerke (LNet) auf der primären Netzwerkschnittstelle eth0. Weitere Informationen finden Sie in der Übersicht zu Managed Lustre.
./gcluster deploy -d a4xmax-bm-slurm-deployment.yaml examples/machine-learning/a4x-maxgpu-4g-metal/a4xmax-bm-slurm-blueprint.yaml --auto-approve
A4X
Der A4X-Blueprint integriert Managed Lustre für leistungsstarken Home-Verzeichnisspeicher (/home). Der Blueprint konfiguriert automatisch den Zugriff auf private Dienste (PSA), um Ihr VPC-Netzwerk mit Managed Lustre zu verbinden.
Standardmäßig werden mit dem Cluster-Blueprint Compute-Instanzen bereitgestellt, die vordefinierte Advanced Compute Images verwenden. Diese Images sind mit speziellen Treibern und Software für die Ausführung Ihrer Arbeitslasten vorkonfiguriert, darunter NVIDIA-Treiber, CUDA, Netzwerk-Fabrics und Slurm-Agents. Dadurch ist bei der Bereitstellung keine manuelle Image-Erstellung erforderlich. Weitere Informationen zu den vordefinierten Softwarepaketen und Konfigurationstools, die Sie bereitstellen, finden Sie unter Übersicht über Advanced Compute Images.
./gcluster deploy -d a4xhigh-slurm-deployment.yaml examples/machine-learning/a4x-highgpu-4g/a4xhigh-slurm-blueprint.yaml --auto-approve
A4
Der A4-Blueprint integriert Managed Lustre für leistungsstarken Speicher für Basisverzeichnisse (/home). Der Blueprint konfiguriert automatisch den Zugriff auf private Dienste (PSA), um Ihr VPC-Netzwerk mit Managed Lustre zu verbinden.
Standardmäßig werden mit dem Cluster-Blueprint Compute-Instanzen bereitgestellt, die vordefinierte Advanced Compute Images verwenden. Diese Images sind mit speziellen Treibern und Software für die Ausführung Ihrer Arbeitslasten vorkonfiguriert, darunter NVIDIA-Treiber, CUDA, Netzwerk-Fabrics und Slurm-Agents. Dadurch ist bei der Bereitstellung keine manuelle Image-Erstellung erforderlich. Weitere Informationen zu den vordefinierten Softwarepaketen und Konfigurationstools, die Sie bereitstellen, finden Sie unter Übersicht über Advanced Compute Images.
./gcluster deploy -d a4high-slurm-deployment.yaml examples/machine-learning/a4-highgpu-8g/a4high-slurm-blueprint.yaml --auto-approve
A3 Ultra
Der A3 Ultra-Blueprint integriert Managed Lustre für leistungsstarken Speicher im Basisverzeichnis (/home). Der Blueprint konfiguriert automatisch den Zugriff auf private Dienste (PSA), um Ihr VPC-Netzwerk mit Managed Lustre zu verbinden.
Standardmäßig werden mit dem Cluster-Blueprint Compute-Instanzen bereitgestellt, die vordefinierte Advanced Compute Images verwenden. Diese Images sind mit speziellen Treibern und Software für die Ausführung Ihrer Arbeitslasten vorkonfiguriert, darunter NVIDIA-Treiber, CUDA, Netzwerk-Fabrics und Slurm-Agents. Dadurch ist bei der Bereitstellung keine manuelle Image-Erstellung erforderlich. Weitere Informationen zu den vordefinierten Softwarepaketen und Konfigurationstools, die Sie bereitstellen, finden Sie unter Übersicht über Advanced Compute Images.
./gcluster deploy -d a3ultra-slurm-deployment.yaml examples/machine-learning/a3-ultragpu-8g/a3ultra-slurm-blueprint.yaml --auto-approve
A3 Mega
Der A3 Mega-Blueprint integriert Managed Lustre für leistungsstarken Speicher im Basisverzeichnis (/home). Der Blueprint konfiguriert automatisch den privaten Dienstzugriff (PSA), um Ihr VPC-Netzwerk mit Managed Lustre zu verbinden.
./gcluster deploy -d a3mega-slurm-deployment.yaml examples/machine-learning/a3-megagpu-8g/a3mega-slurm-blueprint.yaml --auto-approve
A3 High
Der Blueprint für A3 High integriert Managed Lustre für leistungsstarken Speicher für Basisverzeichnisse (/home). Der Blueprint konfiguriert automatisch den Zugriff auf private Dienste (PSA), um Ihr VPC-Netzwerk mit Managed Lustre zu verbinden.
./gcluster deploy -d a3high-slurm-deployment.yaml examples/machine-learning/a3-highgpu-8g/a3high-slurm-blueprint.yaml --auto-approve
Verbindung zum Slurm-Cluster herstellen
Für den Zugriff auf Ihren Cluster müssen Sie sich beim Slurm-Login-Knoten anmelden. Wenn beim Versuch, eine Verbindung zu Ihrem Knoten herzustellen, Fehler auftreten, lesen Sie den Abschnitt SSH-Fehler beheben.
Wählen Sie eine der folgenden Optionen aus, um eine Verbindung zum Login-Knoten in Ihrem Cluster herzustellen:
Console
Rufen Sie in der Google Cloud Console die Seite VM-Instanzen auf.
Suchen Sie den Login-Knoten mit dem Namen
DEPLOYMENT_NAME-login-001.Klicken Sie in der Zeile des Knotens in der Spalte Verbinden auf SSH.
gcloud
Führen Sie die folgenden Schritte aus, um eine Verbindung zum Login-Knoten in Ihrem Cluster herzustellen:
Verwenden Sie den folgenden
gcloud compute instances list-Befehl, um den Login-Knoten zu identifizieren:gcloud compute instances list \ --filter="name ~ login" \ --format "value(name)" \ --zones=ZONEWenn in der Ausgabe mehrere Slurm-Cluster aufgeführt sind, können Sie Ihren Login-Knoten anhand des
DEPLOYMENT_NAMEidentifizieren, den Sie in den vorherigen Schritten angegeben haben.Verwenden Sie den Befehl
gcloud compute sshmit dem Flag--tunnel-through-iap, um eine Verbindung zum Login-Knoten herzustellen:gcloud compute ssh LOGIN_NODE \ --tunnel-through-iap \ --zone=ZONEErsetzen Sie Folgendes:
ZONE: die Zone, in der sich der Knoten befindet.LOGIN_NODE: der Name des Login-Knotens.
Netzwerkleistung im Slurm-Cluster testen
Wir empfehlen, die Funktionalität der bereitgestellten Cluster zu prüfen. Verwenden Sie dazu NCCL-Tests. Das sind NVIDIA Collective Communications Library (NCCL)-Tests, die für die Google-Umgebung optimiert sind.
Slurm-Cluster neu bereitstellen
Wenn Sie die Anzahl der Rechenknoten erhöhen oder neue Partitionen zu Ihrem Cluster hinzufügen müssen, müssen Sie möglicherweise die Konfigurationen für Ihren Slurm-Cluster aktualisieren, indem Sie ihn noch einmal bereitstellen. Wenn Sie Ihren Blueprint geändert haben, um benutzerdefinierte Images zu erstellen, können Sie den Prozess der erneuten Bereitstellung beschleunigen, indem Sie ein vorhandenes Image aus einer vorherigen Bereitstellung verwenden. Wenn Sie einen Cluster, der benutzerdefinierte Images verwendet, noch einmal bereitstellen, können Sie das Flag --only angeben, um das Erstellen neuer Images zu vermeiden.
So stellen Sie die Clusterinfrastruktur (cluster-env,cluster) noch einmal bereit, ohne Image-Building-Module auszuführen:
Wählen Sie je nach Maschinentyp, den Ihr Cluster verwendet, eine der folgenden Optionen aus, um Ihren Cluster und seine Infrastruktur noch einmal bereitzustellen:
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-Cluster löschen
Wenn Sie den Cluster löschen, löscht das Cluster Toolkit automatisch die Managed Lustre-Instanz und alle darauf gespeicherten Daten.
Führen Sie die folgenden Schritte aus, um den Slurm-Cluster zu löschen:
Trennen Sie die Verbindung zum Cluster, falls Sie dies noch nicht getan haben.
Bevor Sie den Befehl
destroyausführen, wechseln Sie zum Stammverzeichnis des Cluster Toolkit-Verzeichnisses.Führen Sie den Befehl
gcluster destroyaus, um den Cluster zu löschen:./gcluster destroy DEPLOYMENT_FOLDER --auto-approve
Ersetzen Sie
DEPLOYMENT_FOLDERdurch den Namen des Bereitstellungsordners.
Wenn das Cluster Toolkit Ihren Cluster löscht, sieht die Ausgabe in etwa so aus:
Destroy complete! Resources: DEPLOYMENT_NAME destroyed.