Freigeben über


Umfassende Übersicht über eine HPC-Lift & Shift-Architektur

Im Kontext von High-Performance Computing (HPC) bezieht sich „Lift & Shift“ in erster Linie auf die Migration einer lokalen Umgebung und Workload zur Cloud. Im Idealfall werden Änderungen so gering wie möglich gehalten. (Anwendungen, Auftragsplaner und ihre Konfigurationen sollten also weitestgehend gleich bleiben.) Anpassungen beim Speicher und bei der Hardware sind normal, da sich die Ressourcen von lokalen Plattformen und Cloudplattformen unterscheiden. Mit dem Lift & Shift-Ansatz können Organisationen schneller von der Cloud profitieren.

Die folgende Abbildung zeigt einen typischen lokalen HPC-Cluster in einer Produktionsumgebung, wie ihn der Hardwarehersteller häufig bereitstellt. Eine solche lokale Umgebung umfasst eine Reihe von Computeknoten, die ggf. mit VM-Images und Containern verwendet werden können. Solche Knoten führen Workloads aus, die von einem Auftragsplaner (in der Regel Slurm, PBS oder LSF) verwaltet werden. Die Workloads stammen von mehreren Benutzern mit zugeordneter Identitätsverwaltung. In der Regel gibt es Basisverzeichnisse, Scratch-Datenträger und langfristigen Speicher. Außerdem ist eine Überwachung in irgendeiner Form verfügbar, um die Leistung von Aufträgen und die Integrität von Computeknoten zu überprüfen. Benutzer können per Befehlszeile, über Browser oder über eine Remotevisualisierungstechnologie auf die Umgebung zugreifen. Die gesamte Umgebung wird in einem privaten Netzwerk gehostet. Daher steht Benutzern ein Mechanismus für den Zugriff auf die Computeressourcen zur Verfügung (entweder über VPN oder über das Portal).

Diagramm: Architektur der vorhandenen lokalen Umgebung

Wie Sie in diesem Dokument sehen, unterscheidet sich die Umgebung in der Cloud nach dem Infrastructure-as-a-Service-Modell konzeptuell gar nicht so sehr. Einige Technologien benötigen Updates, und während der Migration von der lokalen Umgebung zur Cloud sind einige Schritte erforderlich.

Daher enthält dieses Dokument Folgendes:

  • Optionen für den Migrationsprozess
  • Verweise auf Produkte und bewährte Methoden für die einzelnen Komponenten
  • Empfehlungen, um Probleme zu vermeiden

Bevor Sie sich mit der Architekturbeschreibung befassen, ist es wichtig, sich mit den verschiedenen Personas in diesem Kontext sowie mit ihren Anforderungen und Erwartungen vertraut zu machen.

Personas und Benutzererlebnis

Es gibt verschiedene Personen, die Zugriff auf die HPC-Umgebung benötigen. Ihre Aktivitäten und ihre Interaktion mit der Umgebung variieren stark.

Endbenutzer (Techniker/Wissenschaftler/Forscher)

Bei dieser Persona handelt es sich um den Experten (z. B. Biologe, Physiker, Ingenieur usw.), der Experimente durchführen (sprich: Aufträge übermitteln) und Ergebnisse analysieren möchte. Endbenutzer interagieren bei Bedarf mit Systemadministratoren, um die Computerumgebung zu optimieren. Sie haben möglicherweise Erfahrung mit der Verwendung CLI-basierter Tools, aber einige von ihnen verwenden möglicherweise nur Webportale oder grafische Benutzeroberflächen über VDI, um ihre Aufträge zu übermitteln und mit den generierten Ergebnissen zu interagieren.

Neue Aufgaben in der HPC-Cloudumgebung:

  • Endbenutzer haben üblicherweise keine neuen Aufgaben (basierend auf der Arbeit des HPC-Administrators und des Cloudadministrators). Je nach lokaler Umgebung stehen Endbenutzern eine höhere Kapazität und verschiedene Computeressourcen zur Verfügung, um produktiver zu werden.

HPC-Administrator

Hierbei handelt es sich um eine Persona mit HPC-Fachwissen, die dafür zuständig ist, die anfängliche Computinginfrastruktur bereitzustellen und an die Geschäfts- und Endbenutzeranforderungen anzupassen. Diese Persona ist auch für die Überprüfung der Systemintegrität sowie für die Problembehandlung zuständig. HPC-Administratoren sind mit dem Zugriff auf die Architektur und ihre Komponenten per CLI, SDK oder Webportal vertraut. Sie sind auch die erste Anlaufstelle, wenn Endbenutzer ein Problem mit der Computingumgebung haben.

Neue Aufgaben in der HPC-Cloudumgebung:

  • Verwalten von Cloudressourcen und -diensten (z. B. virtuelle Computer, Speicher, Netzwerk) über Cloudverwaltungsplattformen
  • Implementieren und Verwalten von Clustern und Ressourcen über neue Tools für die Ressourcenorchestrierung (z. B. CycleCloud).
  • Optimieren der Anwendungsbereitstellung durch Verständnis von Infrastrukturdetails (VM-Typen, Speicher und Netzwerkoptionen)
  • Optimieren der Ressourcenauslastung und Kosten mithilfe cloudspezifischer Features wie Autoskalierung und Spotinstanzen.

Cloudadministrator

Diese Persona arbeitet mit dem HPC-Administrator zusammen, um die Computerinfrastruktur bereitzustellen und zu pflegen. Diese Persona muss nicht unbedingt ein HPC-Experte sein. Sie ist allerdings ein Cloudexperte mit fundiertem Wissen über die gesamte IT-Infrastruktur des Unternehmens (einschließlich Netzwerkkonfigurationen/-richtlinien, Benutzerzugriffsrechten und Benutzergeräten). HPC-Administrator und Cloudadministrator können ggf. dieselbe Person sein.

Neue Aufgaben in der HPC-Cloudumgebung:

  • Zusammenarbeit mit HPC-Administratoren, um eine nahtlose Integration von HPC-Workloads in die Cloudinfrastruktur sicherzustellen
  • Überwachung und Verwaltung der Leistung, Sicherheit und Compliance der Cloudinfrastruktur
  • Unterstützung bei der Konfiguration cloudbasierter Netzwerk- und Speicherlösungen für HPC-Workloads

Geschäftsleiter/-inhaber

Diese Persona ist für das Unternehmen verantwortlich und kümmert sich unter anderem um das Budget und um Projekte, um Organisationsziele zu erreichen. Für diese Persona ist die Ressourcenerfassungskomponente der Architektur relevant, um die Kosten der jeweiligen Projekte zu verstehen. Diese Persona arbeitet mit HPC-Administratoren und Endbenutzern zusammen, um die Plattformanforderungen wie Speicher-, Netzwerk- und Computeressourcen zu verstehen. Außerdem plant sie zukünftige Workloads.

Neue Aufgaben in der HPC-Cloudumgebung:

  • Analysieren detaillierter Kostenberichte und Nutzungsmetriken, die von Clouddienstanbietern bereitgestellt werden, um Budgets zu verwalten und Ausgaben zu prognostizieren
  • Treffen strategischer Entscheidungen auf der Grundlage von Cloudressourcennutzung und Kostenoptimierungsmöglichkeiten
  • Planen und Genehmigen von Investitionen in die Cloudinfrastruktur, um zukünftige HPC-Workloads und Geschäftsziele zu unterstützen

Übersicht über die Lift & Shift-Architektur

Diagramm: Ziel-HPC-Cloudarchitektur

Eine HPC-Produktionsumgebung in der Cloud umfasst mehrere Komponenten. Es gibt einige zentrale Komponenten für die Einrichtung einer Umgebung, z. B. einen Auftragsplaner, einen Ressourcenanbieter, einen Einstiegspunkt, über den der Benutzer auf die Umgebung zugreifen kann, sowie Compute- und Speichergeräte und Ähnliches. Wenn die Umgebung dann in der Produktion verwendet wird, spielen Dinge wie Überwachung, Einblick, Integritätsprüfungen, Sicherheit, Identitätsverwaltung, Verantwortlichkeit, verschiedene Speicheroptionen und andere Komponenten eine wichtige Rolle.

Möglicherweise sind auch Erweiterungen wie Anmeldeknoten, Data Mover, Verwendung von Containern, Lizenz-Manager und Ähnliches vorhanden, die von der Installation abhängig sind.

Für diese Umgebung auf Produktionsebene müssen ggf. diverse Komponenten eingerichtet werden. Daher kommt Umgebungsbereitstellern und -Managern eine Schlüsselrolle zu, um die Erstbereitstellung zu automatisieren bzw. sie immer wieder zu aktualisieren. Komplexere Installationen können auch über Umgebungsvorlagen (oder Spezifikationen) mit Softwareversionen und Konfigurationen verfügen, die optimaler sind und ordnungsgemäß getestet wurden. Wenn sich die Umgebung in der Produktion befindet und alle erforderlichen Komponenten vorhanden sind, können Im Laufe der Zeit Anpassungen erforderlich sein, um die Anforderungen der Benutzer zu erfüllen, einschließlich Änderungen an VM-Typen oder Speicheroptionen bzw. -funktionen.

Instanziieren der Lift & Shift-HPC-Cloudarchitektur

Hier finden Sie weitere Details zu den einzelnen Architekturkomponenten, einschließlich Verweisen auf offizielle Azure-Produkte, Tech-Blogs mit einigen bewährten Methoden, Git-Repositorys und Links zu produktfremden Lösungen.

Schnellstart. Für eine schnelle Lösung zum Erstellen einer HPC-Umgebung in der Cloud mit Grundbausteinen empfehlen wir die Verwendung des Slurm-Arbeitsbereichs für Azure CycleCloud.