Übersicht über HPC-Cluster mit erweiterten Funktionen für die Clusterverwaltung

Um die Infrastruktur für eng gekoppelte Anwendungen zu erstellen, die über mehrere Knoten hinweg skaliert werden, können Sie einen Cluster von VM-Instanzen erstellen. In diesem Leitfaden finden Sie einen allgemeinen Überblick über die wichtigsten Überlegungen und Schritte zum Konfigurieren eines Clusters von VM-Instanzen für HPC-Arbeitslasten (Hochleistungs-Computing) mit dichter Ressourcenzuweisung.

Mit H4D unterstützt Compute Engine die Ausführung umfangreicher HPC-Arbeitslasten, indem ein gesamter Cluster von VM-Instanzen als einzelner Computer behandelt wird. Durch die topologiebewusste Platzierung von VMs können Sie auf viele Instanzen innerhalb eines einzelnen Netzwerk-Superblocks zugreifen und die Netzwerklatenz minimieren. Sie können auch Cloud RDMA auf diesen Instanzen konfigurieren, um die Leistung der Kommunikation zwischen Knoten zu maximieren. Dies ist für eng gekoppelte HPC-Arbeitslasten entscheidend.

Sie erstellen diese HPC-VM-Cluster mit H4D, indem Sie Kapazitätsblöcke anstelle einzelner Ressourcen reservieren. Wenn Sie Kapazitätsblöcke für Ihren Cluster verwenden, erhalten Sie erweiterte Clusterverwaltungsfunktionen.

HPC-Cluster mit H4D-Instanzen können mit oder ohne erweiterte Clusterverwaltungsfunktionen erstellt werden. Wenn Sie für Ihren H4D-HPC-Cluster keine erweiterten Funktionen zur Clusterverwaltung benötigen oder HPC-Cluster mit einer anderen Maschinenreihe als H4D erstellen möchten, folgen Sie der Anleitung zum Erstellen von HPC-Instanzen oder -Clustern:

Clusterterminologie

Bei der Arbeit mit Kapazitätsblöcken werden die folgenden Begriffe verwendet:

Blöcke
Mehrere Unterblöcke sind über ein nicht blockierendes Fabric miteinander verbunden, was eine Verbindung mit hoher Bandbreite ermöglicht. Jede CPU im Block ist mit maximal zwei Netzwerk-Hops erreichbar. Das System stellt Orchestratoren Block- und Unterblockmetadaten zur Verfügung, um eine optimale Jobzuweisung zu ermöglichen.
Cluster
Mehrere Blöcke werden miteinander verbunden, um einen Cluster zu bilden, der auf Tausende von CPUs skaliert werden kann, um umfangreiche HPC-Arbeitslasten auszuführen. Jeder Cluster ist global eindeutig. Die Kommunikation zwischen verschiedenen Blöcken fügt nur einen zusätzlichen Hop hinzu, wodurch die hohe Leistung und Vorhersagbarkeit auch bei einer massiven Skalierung beibehalten werden. Metadaten auf Clusterebene sind auch für Orchestratoren für die intelligente, groß angelegte Jobzuweisung verfügbar.
Cluster Toolkit
Ein von Google angebotenes Open-Source-Tool, das die Konfiguration und Bereitstellung für Cluster vereinfacht, die entweder Slurm oder Google Kubernetes Engine verwenden. Sie verwenden vordefinierte Blueprints, um einen Bereitstellungsordner zu erstellen, der auf dem Blueprint basiert. Sie können Blueprints oder den Bereitstellungsordner ändern, um Bereitstellungen und Ihren Software-Stack anzupassen. Anschließend verwenden Sie Terraform oder Packer, um die vom Cluster Toolkit generierten Befehle auszuführen und den Cluster bereitzustellen.
Dichte Bereitstellung
Eine Ressourcenanfrage, bei der die Ressourcen Ihrer Compute-Instanz physisch nahe beieinander zugewiesen werden, um die Anzahl der Netzwerk-Hops zu minimieren und die niedrigste Latenz zu optimieren.
Netzwerkstruktur
Ein Netzwerk-Fabric bietet eine Verbindung mit hoher Bandbreite und niedriger Latenz über alle Blöcke und Google Cloud Dienste in einem Cluster hinweg. Jupiter ist die Rechenzentrumsnetzwerkarchitektur von Google, die softwarebasiertes Networking und optische Schalter nutzt, um das Netzwerk weiterzuentwickeln und seine Leistung zu optimieren.
Knoten oder Host
Ein einzelner physischer Server im Rechenzentrum. Jeder Host hat zugeordnete Rechenressourcen wie CPUs, Arbeitsspeicher und Netzwerkschnittstellen. Die Anzahl und Konfiguration dieser Rechenressourcen hängen von der Maschinenfamilie ab. VM-Instanzen werden auf einem physischen Host bereitgestellt.
Orchestrator
Ein Orchestrator automatisiert die Verwaltung Ihrer Cluster. Mit einem Orchestrator müssen Sie nicht jede VM-Instanz im Cluster verwalten. Ein Orchestrator wie Slurm oder Google Kubernetes Engine (GKE) übernimmt Aufgaben wie das Einreihen von Jobs in die Warteschlange, die Ressourcenzuweisung, das automatische Skalieren (mit GKE) und andere alltägliche Aufgaben der Clusterverwaltung.
Unterblöcke
Dies sind grundlegende Einheiten, in denen eine Gruppe von Hosts physisch in einem einzelnen Rack untergebracht ist. Ein Top-of-Rack-Switch (ToR-Switch) verbindet diese Hosts und ermöglicht eine äußerst effiziente Single-Hop-Kommunikation zwischen zwei beliebigen CPUs innerhalb des Subblocks. Cloud RDMA ermöglicht diese direkte Kommunikation.

Übersicht über den Prozess zur Clustererstellung mit H4D-VMs

Wenn Sie HPC-Cluster auf reservierten Kapazitätsblöcken erstellen möchten, müssen Sie die folgenden Schritte ausführen:

  1. Verfügbare Bereitstellungsmodelle
  2. Option für die Nutzung auswählen und Kapazität erhalten
  3. Bereitstellungsoption und Orchestrator auswählen
  4. Betriebssystem- oder Cluster-Image auswählen
  5. Cluster erstellen

Bereitstellungsmodelle für die VM- und Clustererstellung

Beim Erstellen von VM-Instanzen können Sie die in Bereitstellungsmodelle für Compute Engine-Instanzen beschriebenen Bereitstellungsmodelle verwenden.

Wenn Sie eng gekoppelte H4D-Instanzen erstellen möchten, müssen Sie eines der folgenden Bereitstellungsmodelle verwenden, um die erforderlichen Ressourcen zum Erstellen von Compute-Instanzen zu erhalten:

  • Reservierungsgebunden: Sie können Ressourcen zu einem ermäßigten Preis für ein zukünftiges Datum und einen zukünftigen Zeitraum reservieren. Zu Beginn des Reservierungszeitraums können Sie die reservierten Ressourcen verwenden, um VMs oder Cluster zu erstellen. Sie haben während des Reservierungszeitraums exklusiven Zugriff auf Ihre reservierten Ressourcen.

  • Flex-Start: Sie können bis zu sieben Tage lang Ressourcen mit Rabatt anfordern. Compute Engine unternimmt alle Anstrengungen, um die Bereitstellung der angeforderten Ressourcen zu planen, sobald sie verfügbar sind. Sie haben für den angeforderten Zeitraum exklusiven Zugriff auf die erhaltenen Ressourcen.

  • Spot: Basierend auf der Verfügbarkeit können Sie sofort stark ermäßigte Ressourcen erhalten. Compute Engine kann die VM-Instanzen jedoch jederzeit beenden oder löschen, um Kapazität zurückzugewinnen.

Reservierungsgebundenes Bereitstellungsmodell

Das reservierungsgebundene Bereitstellungsmodell verknüpft die von Ihnen erstellten VM-Instanzen mit der Kapazität, die Sie zuvor reserviert haben. Wenn Sie Kapazität reservieren, erstellt Compute Engine eine leere Reservierung. Bei der Reservierungsstartzeit passiert dann Folgendes:

  • Compute Engine fügt die reservierten Ressourcen der Reservierung hinzu. Sie haben bis zum Ende der Reservierung exklusiven Zugriff auf die reservierte Kapazität.

  • Google Cloud berechnet Ihnen die reservierte Kapazität bis zum Ende des Reservierungszeitraums, unabhängig davon, ob Sie die Kapazität nutzen oder nicht.

Sie können die reservierten Ressourcen dann verwenden, um VMs ohne zusätzliche Gebühren zu erstellen. Sie zahlen nur für Ressourcen, die nicht in der Reservierung enthalten sind, z. B. Festplatten oder IP-Adressen.

Sie können Ressourcen für beliebig viele VMs für einen zukünftigen Zeitpunkt reservieren. Anschließend können Sie die reservierten Ressourcen bis zum Ende des Reservierungszeitraums zum Erstellen und Ausführen von VMs verwenden. Wenn Sie Ressourcen für ein Jahr oder länger reservieren, müssen Sie eine ressourcenbasierte Zusicherung erwerben und anhängen.

Informationen zum Bereitstellen von Ressourcen mit dem reservierungsgebundenen Bereitstellungsmodell finden Sie unter:

Sie können die reservierungsgebundene Bereitstellung mit H4D-Instanzen verwenden, indem Sie das reservierungsgebundene Bereitstellungsmodell beim Erstellen einzelner VMs, eines HPC-Clusters oder einer Gruppe von VMs angeben.

Bereitstellungsmodell „Flex-Start“

Wenn Sie Arbeitslasten mit kurzer Ausführungsdauer ausführen möchten, die dicht zugewiesene Ressourcen erfordern, können Sie mit Flex-Start Rechenressourcen für bis zu sieben Tage anfordern. Immer wenn Ressourcen verfügbar sind, erstellt Compute Engine die angeforderte Anzahl von VMs. Sie können eigenständige Flex-Start-VMs beenden, aber keine Flex-Start-VMs, die von einer verwalteten Instanzgruppe (MIG) über Anfragen zur Größenanpassung erstellt werden. Die VMs mit flexiblem Start sind so lange vorhanden, bis Sie sie löschen oder bis Compute Engine sie am Ende ihrer Ausführungsdauer löscht.

Flex-Start ist ideal für Arbeitslasten, die jederzeit gestartet werden können. Beim Bereitstellungsmodell „Flex-Start“ werden Ressourcen aus einem sicheren Kapazitätspool bereitgestellt. Die zugewiesenen Ressourcen werden dicht zugewiesen, um die Netzwerklatenz zu minimieren.

Wenn Sie einer verwalteten Instanzgruppe (MIG) Flex-Start-VMs über Anfragen zur Größenanpassung hinzufügen, erstellt die MIG die VMs gleichzeitig. So vermeiden Sie unnötige Gebühren für die Teilkapazität, die Compute Engine möglicherweise bereitstellt, während Sie auf die volle Kapazität warten, die zum Starten Ihrer Arbeitslast erforderlich ist.

Sie können die Flex-Start-Bereitstellung mit H4D-Instanzen und jedem verfügbaren Bereitstellungsmodell verwenden.

Spot-Bereitstellungsmodell

Um fehlertolerante Arbeitslasten auszuführen, können Sie sofort Compute-Ressourcen basierend auf der Verfügbarkeit abrufen. Sie erhalten Ressourcen zum niedrigstmöglichen Preis. Compute Engine kann die erstellten Spot-VMs jedoch jederzeit beenden oder löschen, um Kapazität zurückzugewinnen. Dieser Vorgang wird als Unterbrechung bezeichnet.

Spot-VMs sind ideal für Arbeitslasten, bei denen Unterbrechungen akzeptabel sind, z. B.:

  • Batchverarbeitung
  • Hochleistungs-Computing (HPC)
  • Datenanalyse
  • Continuous Integration und Continuous Deployment (CI/CD)
  • Medien-Codierung

Sie können Spot-VMs mit jedem Maschinentyp verwenden, mit Ausnahme von A4X-, X4- und Bare-Metal-Maschinentypen. Die dichte Zuweisung hängt von der Ressourcenverfügbarkeit ab. Um eine engere Zuweisung zu ermöglichen, können Sie eine Richtlinie für kompakte Platzierung auf die Spot-VMs anwenden.

Sie können Spot-VMs mit den folgenden Optionen für die dichte Bereitstellung verwenden:

Nutzungsoption auswählen und Kapazität erhalten

Nutzungsoptionen bestimmen, wie Ressourcen für Ihren Cluster bezogen werden. Wenn Sie einen Cluster erstellen möchten, der erweiterte Clusterverwaltungsfunktionen nutzt, müssen Sie Kapazitätsblöcke für eine dichte Bereitstellung anfordern.

In der folgenden Tabelle sind die wichtigsten Unterschiede zwischen den Verbrauchsoptionen für Kapazitätsblöcke zusammengefasst:

Nutzungsoption Vorausschauende Reservierungen für Kapazitätsblöcke Vorausschauende Reservierungen für bis zu 90 Tage (im Kalendermodus) Flex-Start Spot
Arbeitslasteigenschaften Lang andauernde, umfangreiche verteilte Arbeitslasten, die dicht zugewiesene Ressourcen erfordern Arbeitslasten mit kurzer Laufzeit, die dicht zugewiesene Ressourcen erfordern Arbeitslasten mit kurzer Laufzeit, die dicht zugewiesene Ressourcen erfordern Fehlertolerante Arbeitslasten
Lebensdauer Beliebige Zeit Bis zu 90 Tage bis zu 7 Tage Jederzeit, aber unterliegt Unterbrechungen
Auf Abruf Nein Nein Nein Ja
Kapazitätsgarantie Sehr hoch Sehr hoch Beste Leistung Beste Leistung
Kontingent Prüfen Sie, ob Ihr Kontingent ausreicht, bevor Sie Instanzen erstellen. Kein Kontingent wird berechnet Es wird Kontingent auf Abruf berechnet. Es wird Kontingent auf Abruf berechnet.
Preise
Ressourcenzuweisung Dicht Dicht Dicht Standard (Richtlinie für kompakte Platzierungen optional)
Bereitstellungsmodell Reservierungsgebunden Reservierungsgebunden Flex-Start Spot
Erstellungsmethode

So erstellen Sie HPC-Cluster und ‑VMs:

  1. Kapazität über Ihr Account-Management-Team reservieren
  2. Am ausgewählten Datum und zur ausgewählten Uhrzeit können Sie die reservierte Kapazität zum Erstellen von HPC-Clustern verwenden. Weitere Informationen finden Sie unter Bereitstellungsoption auswählen.

So erstellen Sie HPC-Cluster und ‑VMs:

  1. Anfrage für vorausschauende Reservierung im Kalendermodus erstellen
  2. Am ausgewählten Datum und zur ausgewählten Uhrzeit können Sie die reservierte Kapazität zum Erstellen von HPC-Clustern verwenden. Weitere Informationen finden Sie unter Bereitstellungsoption auswählen.

Wählen Sie eine der folgenden Optionen aus, um VMs zu erstellen:

Wenn die angeforderte Kapazität verfügbar ist, stellt Compute Engine sie bereit.

Sie können sofort VMs erstellen. Weitere Informationen finden Sie unter Bereitstellungsoption auswählen.

Bereitstellungsoption auswählen

Bei Arbeitslasten für Hochleistungs-Computing (HPC) werden Rechenressourcen zusammengefasst, um eine höhere Leistung als bei einer einzelnen Workstation, einem einzelnen Server oder einem einzelnen Computer zu erzielen. HPC wird verwendet, um Probleme in der akademischen Forschung, Wissenschaft, im Design, in der Simulation und in der Business Intelligence zu lösen.

Für HPC-Cluster mit erweiterten Clustermanagementfunktionen wählen Sie die Maschinenserie H4D aus. Wenn Sie eine andere Maschinenreihe verwenden möchten, folgen Sie der Dokumentation unter HPC-fähige VM-Instanz erstellen, anstatt die auf dieser Seite aufgeführten Bereitstellungsmethoden zu verwenden.

Einige der verfügbaren Bereitstellungsoptionen umfassen die Installation und Konfiguration eines Orchestrators für eine verbesserte Verwaltung des HPC-Clusters.

Wählen Sie eine der folgenden Optionen aus, um die für Ihren Anwendungsfall am besten geeigneten VMs oder Cluster zu erstellen:

Option Anwendungsfall
Cluster Toolkit

Sie möchten Open-Source-Software verwenden, die die Bereitstellung von Slurm- und Google Kubernetes Engine-Clustern (GKE) vereinfacht. Das Cluster Toolkit ist so konzipiert, dass es sich in hohem Maße anpassen und erweitern lässt. Weitere Informationen nachstehend:

GKE Sie möchten Ihren Google Kubernetes Engine-Cluster basierend auf den Anforderungen Ihrer Arbeitslast maximal flexibel konfigurieren. Weitere Informationen finden Sie unter HPC-Arbeitslasten mit H4D ausführen.
Compute Engine verwenden

Sie möchten die volle Kontrolle über die Infrastrukturschicht haben, damit Sie Ihren eigenen Orchestrator einrichten können. Weitere Informationen nachstehend:

Betriebssystem-Image auswählen

Das von Ihnen ausgewählte Betriebssystem-Image hängt vom Dienst ab, den Sie zum Bereitstellen Ihres Clusters verwenden.

  • Für Cluster in GKE: Verwenden Sie ein GKE-Knoten-Image wie Container-Optimized OS. Wenn Sie Cluster Toolkit zum Bereitstellen Ihres GKE-Clusters verwenden, wird standardmäßig ein Container-Optimized OS-Image verwendet. Weitere Informationen zu Knoten-Images finden Sie in der GKE-Dokumentation unter Knoten-Images.

  • Für Cluster in Compute Engine: Sie können eines der folgenden Images verwenden:

  • Für Slurm-Cluster: Mit Cluster Toolkit wird der Slurm-Cluster mit einem HPC-VM-Image auf Basis von Rocky Linux 8 bereitgestellt, das für eng gekoppelte HPC-Arbeitslasten optimiert ist.

HPC-Cluster erstellen

Nachdem Sie den Clustererstellungsprozess überprüft und vorläufige Entscheidungen für Ihre Arbeitslast getroffen haben, erstellen Sie Ihren Cluster mit einer der Bereitstellungsoptionen.

Erweiterte Clusterverwaltungsfunktionen für Ihren HPC-Cluster

Wenn Sie H4D-Instanzen mit dicht zugewiesenen Ressourcen mit den in Bereitstellungsoption auswählen genannten Bereitstellungsmethoden erstellen, können Sie erweiterte Funktionen zur Verwaltung von HPC-Clustern mit Ihren Instanzen verwenden.

Weitere Informationen zu diesen Funktionen finden Sie unter Erweiterte HPC-Clusterverwaltung mit H4D-Instanzen.

Nächste Schritte