High Performance Computing (HPC) auf Oracle Cloud Infrastructure bereitstellen

Die Anforderungen paralleler Computing Workloads in Simulation und Modellierung lassen sich nun kostengünstig in der Cloud managen.

Stellen Sie leistungsstarke Computing (HPC)-Ressourcen in einem Cloud-Netzwerk mit hoher Bandbreite und niedriger Latenz bereit, mit Performance, die mit denen von On-Premise-HPC-Netzwerken konkurriert, aber mit den Kosten- und Betriebsvorteilen, die Cloud Computing bietet.

Cluster Networking ist eine Oracle Cloud Infrastructure-Technologie, mit der HPC-Instanzen mit einem Netzwerk mit hoher Bandbreite und niedriger Latenz kommunizieren können. Jeder Knoten im Cluster ist eine Bare-Metal-Maschine, die sich in unmittelbarer physischer Nähe zu den anderen Knoten befindet. Remote Direct Memory Access (RDMA)-Netzwerk zwischen Knoten bietet weniger als zwei Mikrosekunden Latenz und ist vergleichbar mit On-Premise-HPC-Clustern. Oracle verwendet RDMA über konvergentes Ethernet oder RoCEv2-Protokoll für Clusternetzwerke.

Clusternetzwerke sind für hochanspruchsvolle parallele Computing-Workloads konzipiert, darunter:

  • Strömungssimulationen für die Automobil- oder Luftfahrtmodellierung

  • Crash-Simulation

  • Finanzmodellierung und Risikoanalyse

  • Biomedizinische Simulationen

  • Verkehrsanalyse und -entwurf für die Weltraumforschung

  • Künstliche Intelligenz und Big Data-Workloads

Clusternetzwerke werden in folgenden Bereichen unterstützt:

  • Virtuelles Cloud-Netzwerk

    • Öffentliches Subnetz

    • Privates Subnetz

    • Internetgateway

    • NAT-Gateway

  • Serverknoten

    • Bastionshost in einem öffentlichen Subnetz

    • HPC-Compute-Knoten im privaten Subnetz

Architektur

Diese Referenzarchitektur stellt einen Bastions- oder Kopfknoten bereit, der den Scheduler ausführt und als Bastionsserver für den Zugriff auf das Cluster verwendet werden kann.

Je nach Bedarf können Sie einen Visualisierungsknoten wie eine virtuelle GPU-Maschine (VM) oder Bare-Metal-Maschine erstellen. Wir empfehlen, den Visualisierungsknoten im öffentlichen Subnetz zu platzieren. HPC-Workloads erfordern häufig Visualisierungstools zur Vor- oder Nachbearbeitung, Überwachung oder Analyse der Ausgabe der Simulationen. Sie können eine NVIDIA-GRID-fähige Workstation von Oracle Cloud Marketplace bereitstellen.

Diese Architektur wird mit öffentlichen und privaten virtuellen Cloud-Netzwerken (VCNs) bereitgestellt. Das Kundennetzwerk kann nur über IPSec VPN, Oracle Cloud Infrastructure FastConnect oder öffentliches Internet auf den Kopfknoten und Visualisierungsknoten zugreifen.

Die Architektur verwendet eine Region mit einer Availability-Domain und regionalen Subnetzen. Sie können dieselbe Architektur in einer Region mit mehreren Availability-Domains verwenden. Wir empfehlen Ihnen, regionale Subnetze für Ihr Deployment zu verwenden, unabhängig von der Anzahl der Verfügbarkeitsdomains.

Sie können von Oracle Cloud Marketplace auf diese Clusternetzwerke zugreifen oder sie manuell bereitstellen. In beiden Fällen empfehlen wir die Verwendung der Baseline-Referenzarchitektur und passen sie dann an Ihre spezifischen Anforderungen an.

Das folgende Diagramm veranschaulicht diese Referenzarchitektur.



hpc-oci-architecture.zip

Die Architektur verfügt über folgende Komponenten:

  • Region

    Eine Oracle Cloud Infrastructure-Region ist ein lokalisierter geografischer Bereich, der mindestens ein Rechenzentrum (Availability-Domains) enthält. Regionen sind unabhängig von anderen Regionen, und große Entfernungen können sie trennen (über Länder oder sogar Kontinente).

  • Verfügbarkeitsdomains

    Availability-Domains sind eigenständige, unabhängige Rechenzentren innerhalb einer Region. Die physischen Ressourcen in jeder Availability-Domain werden von den Ressourcen in den anderen Availability-Domains isoliert, was eine Fehlertoleranz bietet. Verfügbarkeitsdomänen teilen keine Infrastruktur wie Strom oder Kühlung oder das interne Availability-Domänennetzwerk. Somit ist es unwahrscheinlich, dass ein Fehler bei einer Availability-Domain die anderen Availability-Domains in der Region beeinträchtigt.

  • Fault-Domains

    Eine Faultdomain ist eine Gruppierung aus Hardware und Infrastruktur innerhalb einer Availability-Domain. Jede Availability-Domain verfügt über drei Faultdomains mit unabhängiger Power und Hardware. Wenn Sie Ressourcen auf mehrere Faultdomains verteilen, können Ihre Anwendungen physischen Serverausfall, Systemwartung und Stromausfälle innerhalb einer Faultdomain tolerieren.

  • Virtuelles Cloud-Netzwerk (VCN) und Subnetze

    Ein VCN ist ein anpassbares, softwaredefiniertes Netzwerk, das Sie in einer Oracle Cloud Infrastructure-Region eingerichtet haben. Wie herkömmliche Rechenzentrumsnetze geben VCNs Ihnen die vollständige Kontrolle über Ihre Netzwerkumgebung. Ein VCN kann mehrere nicht überlappende CIDR-Blöcke enthalten, die Sie nach dem Erstellen des VCN ändern können. Sie können ein VCN in Subnetze segmentieren, die für eine Region oder eine Availability-Domain Geltungsbereich haben können. Jedes Subnetz besteht aus einem zusammenhängenden Adressbereich, der sich nicht mit den anderen Subnetzen im VCN überschneidet. Sie können die Größe eines Subnetzes nach der Erstellung ändern. Ein Subnetz kann öffentlich oder privat sein.

  • Bastionshost

    Der Bastionshost ist eine Compute-Instanz, die als sicherer, kontrollierter Einstiegspunkt zur Topologie von außerhalb der Cloud dient. Der Bastionshost wird normalerweise in einer entmilitarisierten Zone (DMZ) bereitgestellt. Dadurch können Sie sensible Ressourcen schützen, indem Sie sie in private Netzwerke platzieren, auf die Sie nicht direkt von außerhalb der Cloud zugreifen können. Die Topologie hat einen einzigen bekannten Einstiegspunkt, den Sie regelmäßig überwachen und auditieren können. So können Sie vermeiden, die sensibleren Komponenten der Topologie freizugeben, ohne den Zugriff auf sie zu beeinträchtigen.

  • HPC-Clusterknoten

    Der Kopfknoten stellt diese Compute-Knoten bereit und entzieht sie. Dabei handelt es sich um RDMA-fähige Cluster (100 gbps RoCE v2 isoliertes Netzwerk). Sie verarbeiten die im Dateispeicher gespeicherten Daten und geben die Ergebnisse in die Dateispeicherung zurück.

  • Visualisierungsknoten

    Für den Visualisierungsknoten ist in der Regel eine 2D- oder 3D-Anwendung zur visuellen Darstellung und Analyse von Daten installiert, die von HPC-Clusterknoten verarbeitet werden.

  • Sicherheitsliste

    Für jedes Subnetz können Sie Sicherheitsregeln erstellen, die die Quelle, das Ziel und den Traffictyp angeben, die im Subnetz und außerhalb des Subnetzes zulässig sein müssen.

Empfehlungen

Verwenden Sie die folgenden Empfehlungen als Ausgangspunkt, um High-Performance Computing (HPC) auf Oracle Cloud Infrastructure bereitzustellen.

Ihre Anforderungen können von der hier beschriebenen Architektur abweichen.

  • VCN

    Wenn Sie ein VCN erstellen, bestimmen Sie die Anzahl der erforderlichen CIDR-Blöcke und die Größe jedes Blocks basierend auf der Anzahl der Ressourcen, die Sie an Subnetze in VCN anhängen möchten. Verwenden Sie CIDR-Blöcke, die sich innerhalb des standardmäßigen privaten IP-Adressraums befinden.

    Wählen Sie CIDR-Blöcke, die sich nicht mit einem anderen Netzwerk überschneiden (in Oracle Cloud Infrastructure, Ihrem On-Premise-Rechenzentrum oder einem anderen Cloud-Provider), zu dem Sie private Verbindungen einrichten möchten.

    Nachdem Sie ein VCN erstellt haben, können Sie die CIDR-Blöcke ändern, hinzufügen und entfernen.

    Wenn Sie die Subnetze entwerfen, berücksichtigen Sie Ihre Verkehrsfluss- und Sicherheitsanforderungen. Ordnen Sie alle Ressourcen innerhalb einer bestimmten Ebene oder Rolle an dasselbe Subnetz zu, das als Sicherheitsgrenze dienen kann.

    Verwenden Sie regionale Subnetze.

  • Sicherheitslisten

    Verwenden Sie Sicherheitslisten, um Ingress- und Egressregeln zu definieren, die für das gesamte Subnetz gelten.

  • Bastionsknoten

    Verwenden Sie die VM.Standard.2.8 Compute-Form. Da der Knoten als Bastionshost verwendet wird und HPC-Jobs geplant werden, ist keine lokal zugeordnete Speicher- oder GPU-Verarbeitung erforderlich.

  • VisualisierungsknotenVerwenden Sie die VM.GPU3.2 Compute-Form, weil dieser Knoten für die Visualisierung verwendet wird und wahrscheinlich mit einer grafischen intensiven Anwendung installiert ist.
  • HPC-Clusterknoten

    Verwenden Sie die BM.HPC2.36 Compute-Form. Diese Form enthält 36 Kerne aus zwei 3.7GHz Intel Xeon Gold 6154-Prozessoren, 384-GB RAM und 6.4-TB NVME lokalen Speicher. Mit leistungsstarken NVIDIA-GPUs, die auf Oracle Cloud Infrastructure verfügbar sind, können Sie Ergebnisse nach dem Prozess in der Cloud über Remote-Visualisierung nachverarbeiten.

Überlegungen

Wenn Sie High-Performance Computing (HPC) auf Oracle Cloud Infrastructure bereitstellen, prüfen Sie diese Implementierungsoptionen.

  • Performance

    Um die beste Leistung zu erzielen, wählen Sie die richtige Compute-Form mit entsprechender Bandbreite.

  • Verfügbarkeit

    Verwenden Sie eine High Availability-Option basierend auf Ihren Deployment-Anforderungen und Ihrer Region. Optionen umfassen die Verwendung mehrerer Availability-Domains in einer Region und Faultdomains.

  • Kostenfaktor

    Eine Bare-Metal-GPU-Instanz bietet notwendige CPU-Leistung für höhere Kosten. Bewerten Sie Ihre Anforderungen, um die entsprechende Berechnungsform auszuwählen.

  • Überwachung und Warnungen

    Richten Sie Überwachung und Alerts für die CPU- und Speicherauslastung für Ihre Knoten ein, damit Sie die Form bei Bedarf nach oben oder unten skalieren können.

Bereitstellen

Ein Terraform-Stack zur Bereitstellung dieser Referenzarchitektur ist als Stack in Oracle Cloud Marketplace verfügbar. Sie können den Code auch aus GitHub herunterladen und an Ihre Anforderungen anpassen.

  • Mit dem Stack in Oracle Cloud Marketplace bereitstellen:
    1. Gehen Sie zu Oracle Cloud Marketplace.
    2. Klicken Sie auf App abrufen.
    3. Befolgen Sie die Prompts auf dem Bildschirm.
  • Mit dem Code in GitHub bereitstellen:
    1. Gehen Sie zu GitHub.
    2. Klonen oder laden Sie das Repository auf Ihren lokalen Rechner herunter.
    3. Befolgen Sie die Anweisungen im Dokument README.

Änderungslog

In diesem Log werden wichtige Änderungen aufgelistet: