Freigeben über


Microsoft HPC Pack

Microsoft HPC Pack ist eine kostenlose HPC-Lösung, die auf Microsoft Azure mit Windows Server-Technologien basiert und eine vielzahl von HPC-Workloads unterstützt. Auf dieser Seite werden die Funktionen und Konfigurationsdetails für die HPC Pack-Integration in Cyclecloud beschrieben.

Einschränkungen und unterstützte Versionen

Microsoft HPC Pack 2016 (mit Update 3) und Microsoft HPC Pack 2019 werden in CycleCloud mit den folgenden Einschränkungen unterstützt:

  • Der Cluster muss in einer Active Directory-Domäne erstellt werden.
  • Der Cluster kann nur einen einzigen Kopfknoten enthalten.
  • Hohe Verfügbarkeit für den Kopfknoten wird noch nicht unterstützt.
  • Die VM-Imageanpassung für den Head Node wird nicht unterstützt.
  • Linux-Computeknoten werden noch nicht unterstützt.
  • Der Kopfknoten erfordert ausgehenden Internetzugriff, um Nuget-Binärdatei und Python3 herunterzuladen.
  • Cli- und Cloudinit-Konfiguration wird noch nicht unterstützt.

Voraussetzungen

Active Directory-Domäne

Derzeit müssen alle HPC Pack-Knoten in eine Active Directory-Domäne eingebunden werden. Wenn Sie den HPC Pack-Cluster in einem virtuellen Netzwerk bereitstellen, das über eine Standort-zu-Standort-VPN- oder ExpressRoute-Verbindung mit Ihrem Unternehmensnetzwerk verfügt, gibt es in der Regel bereits eine vorhandene Active Directory-Domäne. Wenn Sie noch keine AD-Domäne in Ihrem virtuellen Netzwerk haben, können Sie eine neue AD-Domäne erstellen, indem Sie den Kopfknoten als Domänencontroller bewerben.

Azure Key Vault (ein Dienst zur sicheren Verwaltung kryptografischer Schlüssel)

Microsoft HPC Pack erfordert ein PFX-Zertifikat zum Sichern der Knotenkommunikation und erfordert außerdem AD-Domänenbenutzeranmeldeinformationen, um die Knoten in die AD-Domäne zu verknüpfen. Sie können zwar direkt eine PFX-Datei, ein Schutzkennwort und ein Benutzerkennwort in der Vorlage angeben, es wird jedoch dringend empfohlen, Azure Key Vault für die sichere Handhabung des Zertifikats und des Benutzerkennworts zu verwenden. Informationen finden Sie unter Erstellen eines Azure Key Vault-Zertifikats.

Der Cluster erfordert außerdem den Benutzernamen und das Kennwort eines AD-Administratorkontos, um Knoten in die Domäne einzubinden, sobald sie erstellt werden. Es wird dringend empfohlen, Azure Key Vault zu verwenden.

Benutzerdefinierte verwaltete Identität in Azure

Um Azure Key Vault für das Zertifikat und die Anmeldeinformationen zu verwenden, müssen Sie eine vom Benutzer zugewiesene Azure Managed Identity erstellen und die Berechtigung "Abrufen" sowohl für das Geheimnis als auch für das Zertifikat des Azure Key Vault erteilen.

In diesem Key Vault-Lernprogramm können Sie Ihren Key Vault und eine verwaltete Identität mit Key Vault-Zugriff erstellen.

Wir empfehlen die Verwendung der rollenbasierten Zugriffssteuerung von Azure, um der verwalteten Identität Schlüsseltresorberechtigungen zuzuweisen.

HPC Pack-Knotenrollen

Es gibt drei verschiedene Knotenrollen im HPC Pack-Cluster:

  • Kopfknoten: Stellt die Clusterverwaltungs- und Auftragsplanungsdienste bereit. Derzeit wird nur ein einzelner Kopfknoten mit lokalen Datenbanken unterstützt.
  • Brokerknoten: Empfängt Anforderungen von einem SOA-Client, verteilt sie an die Diensthosts auf den Computeknoten und sammelt dann Antworten und sendet sie an den Client zurück. Die Brokerknoten werden im Brokerknotenarray erstellt. Sie müssen Brokerknoten erstellen, wenn Sie eine SOA-Workload im Cluster ausführen möchten.
  • Computeknoten: Akzeptiert und führt Clusteraufträge aus. Die Computeknoten werden im Knotenarray namens cn erstellt.

Erstellen eines neuen HPC Pack-Clusters

Sie können unter "Schedulers" auf das Microsoft HPC Pack-Symbol klicken, um einen neuen Microsoft HPC Pack-Cluster zu erstellen.

Geben Sie auf der Seite "Info " einen eindeutigen Clusternamen für den Cluster an. Da er als NetBIOS-Computername des Kopfknotens verwendet wird, stellen Sie sicher, dass es in der AD-Domäne eindeutig ist und den Benennungskonventionen entspricht.

Standardeinstellungen

  • HPC Pack Version: Sie können HPC Pack 2019 oder HPC Pack 2016 (mit Update 3) auswählen. Es wird empfohlen, die neueste HPC Pack-Version zu verwenden, d. h. HPC Pack 2019.
  • Virtuelle Computer: Sie können die Azure-Region auswählen, in der Sie den HPC Pack-Cluster erstellen möchten, und den VM-Typ für jede Clusterknotenrolle. Sie können auch Num. Broker angeben, um einen oder mehrere Brokerknoten zu erstellen, wenn Sie Workloads für SOA im Cluster ausführen möchten.

Automatische Skalierung

Der Cluster wird ohne Computeknoten gestartet. Sie können die Automatische Skalierung aktivieren, um die Computeknoten abhängig von den Clusterworkloads automatisch zu skalieren. Sie können Max Cores verwenden, um die maximale Anzahl von Compute-vCPU-Kernen Ihres Clusters anzugeben. Der Autoscaler wird jede Minute als geplante Windows-Aufgabe auf dem Kopfknoten ausgeführt.

Es gibt zwei Optionen zum Herunterfahren der Rechenknoten: Deallocate oder Terminate. Wenn Sie die Option Beenden auswählen, entfernt der HPC Pack-Cluster immer die VMs der Berechnungsknoten beim Herunterskalieren. Wenn Sie die Option "Deallocate " auswählen, ordnet der HPC Pack-Cluster die Computerknoten-VMs auf der Skalierung nach unten ab und verwaltet diese für bis zu einer konfigurierbaren Anzahl von Tagen (VM-Aufbewahrungstage). Die deallokierten Rechenknoten werden nicht aus dem HPC Pack-Cluster entfernt, solange sie noch behalten werden. Sie werden jedoch offline geschaltet und im HPC Pack-Cluster als nicht erreichbar angezeigt. Die Option "Deallocate " wird für den HPC Pack-Cluster empfohlen, da die Knotenvorbereitungszeit bei der Skalierung erheblich reduziert werden kann, und Sie zahlen nur für den Datenträgerspeicher der deallocated VMs.

Infrastruktureinstellungen

  • Virtuelles Netzwerk: Sie können ein vorhandenes virtuelles Netzwerk und subnetz auswählen, in dem der HPC Pack-Cluster erstellt wird.
  • Active Directory-Domäne: Wenn bereits eine AD-Domäne in Ihrem virtuellen Netzwerk vorhanden ist, geben Sie den vollständigen Domänennamen und den OU-Pfad an, in dem die Clusterknoten verknüpft sind. Oder wählen Sie "Neue AD-Domäne " aus, um eine neue AD-Domäne zu erstellen, indem Sie den Kopfknoten als Domänencontroller bewerben.
  • Geheime Schlüssel und Zertifikat: Es wird dringend empfohlen, keyVault zu verwenden, um Azure Key Vault zu verwenden, um das Knotenkommunikationszertifikat und das Benutzerkennwort zu übergeben. Wählen Sie in MSI Identity azure User Assigned Identity aus, die Sie in den Voraussetzungen in der Dropdownliste erstellt haben, und geben Sie den Azure Key Vault-Namen an, der in den Voraussetzungen erstellt wurde.
  • Benutzeranmeldeinformationen: Geben Sie im Benutzernamen den Domänenbenutzernamen an. Geben Sie im Kennwortgeheimnis den geheimen Azure Key Vault-Namen an, den Sie in den Voraussetzungen zum Speichern des Domänenbenutzerkennworts erstellt haben.
  • PFX-Zertifikat: Geben Sie im Zertifikatnamen den Azure Key Vault-Zertifikatnamen an, den Sie in den Voraussetzungen erstellt haben.

Erweiterte Einstellungen

  • Azure-Einstellungen: Wählen Sie die Azure-Cloudanmeldeinformationen aus der Dropdownliste aus.
  • Clustersoftware: Geben Sie das Betriebssystem (Betriebssystem) für jede Clusterknotenrolle an.
  • Erweiterte Netzwerke: Standardmäßig werden die im virtuellen Netzwerk konfigurierten DNS-Server auf alle HPC-Knoten angewendet, sie können optional DNS-Server angeben, wenn Sie einen anderen DNS-Server verwenden möchten. Optional können Sie auch HN Public IP auswählen, um eine öffentliche IP-Adresse für den Kopfknoten zuzuweisen.

azhpcpack CLI

Die azhpcpack.ps1 CLI ist die Hauptschnittstelle für alle automatischen Skalierungsverhalten (die Scheduled Task Calls azhpcpack.ps1 autoscale). Die CLI ist in C:\cycle\hpcpack-autoscaler\bin verfügbar.

Die CLI kann zum Diagnostizieren von Problemen mit der automatischen Skalierung oder zum manuellen Steuern der Clusterskalierung innerhalb des Head Node verwendet werden.

Befehl BESCHREIBUNG
Automatische Skalierung End-to-End-Prozess für die automatische Skalierung, einschließlich Erstellung, Löschung und Verknüpfung von Knoten.
Eimer Druckt Informationen zum Automatischen Skalieren von Buckets, z. B. Grenzwerte usw.
Konfiguration Schreibt die effektive AutoScale-Konfiguration nach jeder Vorverarbeitung in stdout
create_nodes Erstellen Sie eine Reihe von Knoten, die verschiedene Einschränkungen aufweisen. Eine CLI-Version der nodemanager-Schnittstelle.
default_output_columns Gibt die Standardausgabespalten für einen optionalen Befehl aus.
delete_nodes Löschen Sie den Knoten und entfernen Sie ihn aus dem Cluster.
initconfig Erstellt eine anfängliche Autoskalenkonfiguration. Schreibt in Stdout.
grenzen Schreibt einen detaillierten Satz von Grenzwerten für jeden Bucket. Standardmäßig wird json aufgrund der Anzahl von Feldern verwendet.
Knoten Abfrageknoten.
refresh_autocomplete Aktualisiert lokale Autovervollständigung-Informationen für clusterspezifische Ressourcen und Knoten.
retry_failed_nodes Ruft alle Knoten in einem fehlerhaften Zustand erneut auf.
Bedingung_validieren Validiert und gibt dann eine oder mehrere Einschränkungen als JSON aus.