View a markdown version of this page

Abschnitt „Planung“ - AWS ParallelCluster

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Abschnitt „Planung“

(Erforderlich) Definiert den Job-Scheduler, der im Cluster verwendet wird, und die Compute-Instances, die der Job Scheduler verwaltet. Sie können entweder den oder Scheduler Slurm verwenden. AWS Batch Jedes unterstützt einen anderen Satz von Einstellungen und Eigenschaften.

Scheduling: Scheduler: slurm ScalingStrategy: string SlurmSettings: MungeKeySecretArn: string ScaledownIdletime: integer QueueUpdateStrategy: string EnableMemoryBasedScheduling: boolean CustomSlurmSettings: [dict] CustomSlurmSettingsIncludeFile: string Database: Uri: string UserName: string PasswordSecretArn: string DatabaseName: string ExternalSlurmdbd: boolean Host: string Port: integer Dns: DisableManagedDns: boolean HostedZoneId: string UseEc2Hostnames: boolean SlurmQueues: - Name: string ComputeSettings: LocalStorage: RootVolume: Size: integer Encrypted: boolean VolumeType: string Iops: integer Throughput: integer EphemeralVolume: MountDir: string CapacityReservationTarget: CapacityReservationId: string CapacityReservationResourceGroupArn: string CapacityType: string AllocationStrategy: string JobExclusiveAllocation: boolean CustomSlurmSettings: dict Tags: - Key: string Value: string HealthChecks: Gpu: Enabled: boolean Networking: SubnetIds: - string AssignPublicIp: boolean SecurityGroups: - string AdditionalSecurityGroups: - string PlacementGroup: Enabled: boolean Id: string Name: string Proxy: HttpProxyAddress: string ComputeResources: - Name: string InstanceType: string Instances: - InstanceType: string MinCount: integer MaxCount: integer DynamicNodePriority: integer StaticNodePriority: integer SpotPrice: float DisableSimultaneousMultithreading: boolean SchedulableMemory: integer HealthChecks: Gpu: Enabled: boolean Efa: Enabled: boolean GdrSupport: boolean CapacityReservationTarget: CapacityReservationId: string CapacityReservationResourceGroupArn: string Networking: PlacementGroup: Enabled: boolean Name: string CustomSlurmSettings: dict Tags: - Key: string Value: string LaunchTemplateOverrides: LaunchTemplateId: string Version: string CustomActions: OnNodeStart: Sequence: - Script: string Args: - string Script: string Args: - string OnNodeConfigured: Sequence: - Script: string Args: - string Script: string Args: - string Iam: InstanceProfile: string InstanceRole: string S3Access: - BucketName: string EnableWriteAccess: boolean KeyName: string AdditionalIamPolicies: - Policy: string Image: CustomAmi: string
Scheduling: Scheduler: awsbatch AwsBatchQueues: - Name: string CapacityType: string Networking: SubnetIds: - string AssignPublicIp: boolean SecurityGroups: - string AdditionalSecurityGroups: - string ComputeResources: # this maps to a Batch compute environment (initially we support only 1) - Name: string InstanceTypes: - string MinvCpus: integer DesiredvCpus: integer MaxvCpus: integer SpotBidPercentage: float

Eigenschaften für die Planung

Scheduler(Erforderlich,String)

Gibt den Typ des verwendeten Schedulers an. Unterstützte Werte sind slurm und awsbatch.

Aktualisierungsrichtlinie: Wenn diese Einstellung geändert wird, ist das Update nicht zulässig.

Anmerkung

awsbatchunterstützt nur das alinux2 Betriebssystem und die x86_64 Plattform.

ScalingStrategy(Fakultativ,String)

Ermöglicht es Ihnen, auszuwählen, wie dynamische Slurm Knoten skaliert werden. Unterstützte Werte sindall-or-nothing, greedy-all-or-nothing und best-effort Der Standardwert istall-or-nothing.

Aktualisierungsrichtlinie: Diese Einstellung kann während eines Updates geändert werden.

Anmerkung

Die Skalierungsstrategie gilt nur für Knoten, die von Slurm wieder aufgenommen werden sollen, nicht für Knoten, die irgendwann bereits laufen.

  • all-or-nothingDiese Strategie folgt strikt einem Alles-oder-Nichts-Ansatz, der darauf abzielt, inaktive Instanzen am Ende des Skalierungsprozesses zu vermeiden. Sie funktioniert nach dem Alles-oder-Nichts-Prinzip, was bedeutet, dass sie entweder vollständig oder gar nicht skaliert wird. Beachten Sie, dass aufgrund vorübergehend gestarteter Instances zusätzliche Kosten anfallen können, wenn Jobs mehr als 500 Knoten erfordern oder mehrere Rechenressourcen umfassen. Diese Strategie hat den niedrigsten Durchsatz unter den drei möglichen Skalierungsstrategien. Die Skalierungszeit hängt von der Anzahl der Jobs ab, die pro Ausführung des Slurm Fortsetzungsprogramms eingereicht werden. Außerdem können Sie nicht weit über das Standardlimit für RunInstances Ressourcenkonten pro Ausführung hinaus skalieren, das standardmäßig 1000 Instanzen beträgt. Weitere Informationen finden Sie in der Amazon EC2-API-Drosselungsdokumentation.

  • greedy-all-or-nothing Ähnlich der Alles-oder-Nichts-Strategie zielt sie darauf ab, inaktive Instances nach der Skalierung zu vermeiden. Diese Strategie ermöglicht eine vorübergehende Überskalierung während des Skalierungsprozesses, um einen höheren Durchsatz als bei der Alles-oder-Nichts-Methode zu erzielen, hat aber auch das gleiche Skalierungslimit von 1000 Instanzen wie beim Ressourcenkontolimit. RunInstances

  • best-effort Bei dieser Strategie wird ein hoher Durchsatz priorisiert, auch wenn dies bedeutet, dass einige Instances am Ende des Skalierungsprozesses möglicherweise inaktiv sind. Es wird versucht, so viele Knoten zuzuweisen, wie von den Jobs angefordert, aber es besteht die Möglichkeit, dass nicht die gesamte Anforderung erfüllt wird. Im Gegensatz zu den anderen Strategien können beim Best-Effort-Ansatz mehr Instanzen als der RunInstances Standardgrenzwert akkumuliert werden, und zwar auf Kosten ungenutzter Ressourcen während der Ausführung mehrerer Skalierungsprozesse.

Jede Strategie ist so konzipiert, dass sie unterschiedlichen Skalierungsanforderungen gerecht wird, sodass Sie eine auswählen können, die Ihren spezifischen Anforderungen und Einschränkungen entspricht.

AwsBatchQueues

(Optional) Die AWS Batch Warteschlangeneinstellungen. Es wird nur eine Warteschlange unterstützt. Wenn auf gesetzt Scheduler istawsbatch, ist dieser Abschnitt erforderlich. Weitere Informationen zum awsbatch Scheduler finden Sie unter Netzwerk-Setup undVerwenden des AWS Batch (awsbatch) -Schedulers mit AWS ParallelCluster.

AwsBatchQueues: - Name: string CapacityType: string Networking: SubnetIds: - string AssignPublicIp: boolean SecurityGroups: - string AdditionalSecurityGroups: - string ComputeResources: # this maps to a Batch compute environment (initially we support only 1) - Name: string InstanceTypes: - string MinvCpus: integer DesiredvCpus: integer MaxvCpus: integer SpotBidPercentage: float

Aktualisierungsrichtlinie: Diese Einstellung kann während eines Updates geändert werden.

AwsBatchQueues-Eigenschaften

Name(Erforderlich,String)

Der Name der AWS Batch Warteschlange.

Aktualisierungsrichtlinie: Wenn diese Einstellung geändert wird, ist das Update nicht zulässig.

CapacityType(Fakultativ,String)

Der Typ der Rechenressourcen, die die AWS Batch Warteschlange verwendet. Unterstützte Werte sindONDEMAND, SPOT oderCAPACITY_BLOCK. Der Standardwert ist ONDEMAND.

Anmerkung

Wenn Sie diese Option festlegenSPOT, CapacityType muss Ihr Konto eine AWSServiceRoleForEC2Spot dienstbezogene Rolle enthalten. Sie können diese Rolle mit dem folgenden AWS CLI Befehl erstellen.

$ aws iam create-service-linked-role --aws-service-name spot.amazonaws.com

Weitere Informationen finden Sie unter Service-linked Rolle für Spot-Instance-Anfragen im Amazon Amazon EC2-Benutzerhandbuch für Linux-Instances.

Aktualisierungsrichtlinie: Die Rechenflotte muss gestoppt werden, damit diese Einstellung für ein Update geändert werden kann.

Netzwerk

(Erforderlich) Definiert die Netzwerkkonfiguration für die AWS Batch Warteschlange.

Networking: SubnetIds: - string AssignPublicIp: boolean SecurityGroups: - string AdditionalSecurityGroups: - string
Netzwerk-Eigenschaften
SubnetIds(Erforderlich,[String])

Gibt die ID eines vorhandenen Subnetzes an, in dem die AWS Batch Warteschlange bereitgestellt werden soll. Derzeit wird nur ein Subnetz unterstützt.

Aktualisierungsrichtlinie: Die Rechenflotte muss gestoppt werden, damit diese Einstellung für ein Update geändert werden kann.

AssignPublicIp(Fakultativ,String)

Erzeugt eine öffentliche IP-Adresse oder weist den Knoten in der AWS Batch Warteschlange eine zu. Unterstützte Werte sind true und false. Die Standardeinstellung hängt von dem Subnetz ab, das Sie angegeben haben.

Aktualisierungsrichtlinie: Wenn diese Einstellung geändert wird, ist das Update nicht zulässig.

SecurityGroups(Fakultativ,[String])

Liste der Sicherheitsgruppen, die die AWS Batch Warteschlange verwendet. Wenn Sie keine Sicherheitsgruppen angeben, AWS ParallelCluster erstellt neue Sicherheitsgruppen.

Aktualisierungsrichtlinie: Diese Einstellung kann während eines Updates geändert werden.

AdditionalSecurityGroups(Fakultativ,[String])

Liste der Sicherheitsgruppen, die die AWS Batch Warteschlange verwendet.

Aktualisierungsrichtlinie: Diese Einstellung kann während eines Updates geändert werden.

ComputeResources

(Erforderlich) Definiert die ComputeResources Konfiguration für die AWS Batch Warteschlange.

ComputeResources: # this maps to a Batch compute environment (initially we support only 1) - Name: string InstanceTypes: - string MinvCpus: integer DesiredvCpus: integer MaxvCpus: integer SpotBidPercentage: float
ComputeResources-Eigenschaften
Name(Erforderlich,String)

Der Name der AWS Batch Warteschlangen-Rechenumgebung.

Aktualisierungsrichtlinie: Die Rechenflotte muss gestoppt werden, damit diese Einstellung für ein Update geändert werden kann.

InstanceTypes(Erforderlich,[String])

Das Array der Instanztypen in der AWS Batch Rechenumgebung. Alle Instanztypen müssen die x86_64 Architektur verwenden.

Aktualisierungsrichtlinie: Die Rechenflotte muss gestoppt werden, damit diese Einstellung für ein Update geändert werden kann.

MinvCpus(Fakultativ,Integer)

Die Mindestanzahl von vCPUs, die eine AWS Batch Rechenumgebung verwenden kann.

Aktualisierungsrichtlinie: Diese Einstellung kann während eines Updates geändert werden.

DesiredVcpus(Optional,) Integer

Die gewünschte Anzahl von vCPUs in der AWS Batch Rechenumgebung. AWS Batch passt diesen Wert zwischen MinvCpus und MaxvCpus basierend auf der Nachfrage in der Job-Warteschlange an.

Aktualisierungsrichtlinie: Diese Einstellung wird während eines Updates nicht analysiert.

MaxvCpus(Fakultativ,Integer)

Die maximale Anzahl von vCPUs für die AWS Batch Rechenumgebung. Sie können dies nicht auf einen Wert setzen, der niedriger als ist. DesiredVcpus

Aktualisierungsrichtlinie: Diese Einstellung kann während eines Updates nicht verringert werden.

SpotBidPercentage(Fakultativ,Float)

Der maximale Prozentsatz des On-Demand Preises für den Instance-Typ, den ein Amazon EC2 Spot-Instance-Preis erreichen kann, bevor Instances gestartet werden. Der Standardwert ist 100 (100%). Der unterstützte Bereich ist 1 -100.

Aktualisierungsrichtlinie: Diese Einstellung kann während eines Updates geändert werden.

SlurmQueues

(Optional) Einstellungen für die Slurm Warteschlange. Wenn auf gesetzt Scheduler istslurm, ist dieser Abschnitt erforderlich.

SlurmQueues: - Name: string ComputeSettings: LocalStorage: RootVolume: Size: integer Encrypted: boolean VolumeType: string Iops: integer Throughput: integer EphemeralVolume: MountDir: string CapacityReservationTarget: CapacityReservationId: string CapacityReservationResourceGroupArn: string CapacityType: string AllocationStrategy: string JobExclusiveAllocation: boolean CustomSlurmSettings: dict Tags: - Key: string Value: string HealthChecks: Gpu: Enabled: boolean Networking: SubnetIds: - string AssignPublicIp: boolean SecurityGroups: - string AdditionalSecurityGroups: - string PlacementGroup: Enabled: boolean Id: string Name: string Proxy: HttpProxyAddress: string ComputeResources: - Name: string InstanceType: string Instances: - InstanceType: string MinCount: integer MaxCount: integer DynamicNodePriority: integer StaticNodePriority: integer SpotPrice: float DisableSimultaneousMultithreading: boolean SchedulableMemory: integer HealthChecks: Gpu: Enabled: boolean Efa: Enabled: boolean GdrSupport: boolean CapacityReservationTarget: CapacityReservationId: string CapacityReservationResourceGroupArn: string Networking: PlacementGroup: Enabled: boolean Name: string CustomSlurmSettings: dict Tags: - Key: string Value: string LaunchTemplateOverrides: LaunchTemplateId: string Version: string CustomActions: OnNodeStart: Sequence: - Script: string Args: - string Script: string Args: - string OnNodeConfigured: Sequence: - Script: string Args: - string Script: string Args: - string Iam: InstanceProfile: string InstanceRole: string S3Access: - BucketName: string EnableWriteAccess: boolean KeyName: string AdditionalIamPolicies: - Policy: string Image: CustomAmi: string

Richtlinie aktualisieren: Bei dieser Einstellung für Listenwerte kann während eines Updates ein neuer Wert hinzugefügt werden, oder die Rechenflotte muss gestoppt werden, wenn ein vorhandener Wert entfernt wird.

SlurmQueues-Eigenschaften

Name(Erforderlich,String)

Der Name der Slurm Warteschlange.

Anmerkung

Die Clustergröße kann sich während eines Updates ändern. Weitere Informationen finden Sie unter Größe und Aktualisierung der Clusterkapazität

Aktualisierungsrichtlinie: Wenn diese Einstellung geändert wird, ist das Update nicht zulässig.

CapacityReservationTarget
Anmerkung

CapacityReservationTargetwird mit AWS ParallelCluster Version 3.3.0 hinzugefügt.

CapacityReservationTarget: CapacityReservationId: string CapacityReservationResourceGroupArn: string

Gibt die On-Demand Kapazitätsreservierung für die Rechenressourcen der Warteschlange an.

CapacityReservationId(Optional,String)

Die ID der vorhandenen Kapazitätsreservierung als Ziel für die Rechenressourcen der Warteschlange. Die ID kann sich auf einen ODCR oder einen Kapazitätsblock für ML beziehen.

Die Reservierung muss dieselbe Plattform verwenden, die die Instanz verwendet. Wenn Ihre Instances beispielsweise auf ausgeführt werdenrhel8, muss Ihre Kapazitätsreservierung auf der Red Hat Enterprise Linux-Plattform ausgeführt werden. Weitere Informationen finden Sie unter Unterstützte Plattformen im Amazon-EC2-Benutzerhandbuch für Linux-Instances.

Anmerkung

Wenn Sie diese Einstellung Instances in die Cluster-Konfiguration aufnehmen, müssen Sie diese CapacityReservationId Einstellung auf Warteschlangenebene aus der Konfiguration ausschließen.

Richtlinie aktualisieren: Die Rechenflotte muss gestoppt oder QueueUpdateStrategyeingerichtet sein, damit diese Einstellung für ein Update geändert werden kann.

CapacityReservationResourceGroupArn(Fakultativ,String)

Der Amazon-Ressourcenname (ARN) der Ressourcengruppe, die als serviceverknüpfte Gruppe von Kapazitätsreservierungen für die Rechenressourcen der Warteschlange dient. AWS ParallelCluster identifiziert und verwendet die am besten geeignete Kapazitätsreservierung aus der Ressourcengruppe auf der Grundlage der folgenden Bedingungen:

Die Ressourcengruppe muss über mindestens einen ODCR für jeden Instanztyp verfügen, der in einer Availability Zone für alle Rechenressourcen und Availability Zones der Warteschlange reserviert ist. Weitere Informationen finden Sie unter Starten Sie Instances mit On-Demand-Kapazitätsreservierungen (ODCR).

Weitere Informationen zu den Anforderungen an die Konfiguration mehrerer Subnetze finden Sie unter Networking/. SubnetIds

Anmerkung

In AWS ParallelCluster Version 3.4.0 wurden mehrere Availability Zones hinzugefügt.

Richtlinie aktualisieren: Die Rechenflotte muss gestoppt oder QueueUpdateStrategyeingerichtet sein, damit diese Einstellung für ein Update geändert werden kann.

CapacityType(Fakultativ,String)

Der Typ der Rechenressourcen, die die Slurm Warteschlange verwendet. Unterstützte Werte sindONDEMAND, SPOT oderCAPACITY_BLOCK. Der Standardwert ist ONDEMAND.

Anmerkung

Wenn Sie den Wert CapacityType auf setzenSPOT, muss Ihr Konto über eine AWSServiceRoleForEC2Spot dienstbezogene Rolle verfügen. Sie können den folgenden AWS CLI Befehl verwenden, um diese Rolle zu erstellen.

$ aws iam create-service-linked-role --aws-service-name spot.amazonaws.com

Weitere Informationen finden Sie unter Service-linked Rolle für Spot-Instance-Anfragen im Amazon Amazon EC2-Benutzerhandbuch für Linux-Instances.

Richtlinie aktualisieren: Die Rechenflotte muss gestoppt oder QueueUpdateStrategyeingerichtet sein, damit diese Einstellung für ein Update geändert werden kann.

AllocationStrategy(Fakultativ,String)

Geben Sie die Zuweisungsstrategie für alle unter definierten Rechenressourcen an Instances.

Zulässige Werte: lowest-price | capacity-optimized | price-capacity-optimized | prioritized | capacity-optimized-prioritized

CapacityType Zulässige Strategien
AUF ANFRAGE niedrigster Preis, priorisiert
STELLE niedrigster Preis, kapazitätsoptimiert, Preis-/Kapazitätsoptimiert, kapazitätsoptimiert, priorisiert
KAPAZITÄTSBLOCK Nicht unterstützt — AllocationStrategy kann nicht konfiguriert werden

Standard: lowest-price

lowest-price
  • Wenn Sie verwendenCapacityType = ONDEMAND, verwendet Amazon EC2 Fleet den Preis, um die Bestellung zu ermitteln, und startet zuerst die Instances mit dem niedrigsten Preis.

  • Wenn Sie diese Option verwendenCapacityType = SPOT, startet Amazon EC2 Fleet Instances aus dem Spot-Instance-Pool mit dem niedrigsten Preis, der über verfügbare Kapazität verfügt. Wenn einem Pool die Kapazität ausgeht, bevor er Ihre erforderliche Kapazität erfüllt, erfüllt Amazon EC2 Fleet Ihre Anfrage, indem es Instances für Sie startet. Insbesondere startet Amazon EC2 Fleet Instances aus dem Spot-Instance-Pool mit dem niedrigsten Preis, der über verfügbare Kapazität verfügt. Amazon EC2 Fleet startet möglicherweise Spot-Instances aus mehreren verschiedenen Pools.

  • Wenn Sie festlegenCapacityType = CAPACITY_BLOCK, gibt es keine Zuweisungsstrategien, daher kann der AllocationStrategy Parameter nicht konfiguriert werden.

capacity-optimized
  • Wenn Sie ihn festlegenCapacityType = ONDEMAND, capacity-optimized ist er nicht verfügbar.

  • Wenn Sie dies festlegenCapacityType = SPOT, startet Amazon EC2 Fleet Instances aus Spot-Instance-Pools mit optimaler Kapazität für die Anzahl der zu startenden Instances.

price-capacity-optimized
  • Wenn Sie festlegenCapacityType = ONDEMAND, capacity-optimized ist nicht verfügbar.

  • Wenn Sie dies festlegenCapacityType = SPOT, identifiziert Amazon EC2 Fleet die Pools mit der höchsten Kapazitätsverfügbarkeit für die Anzahl der Instances, die gestartet werden. Das bedeutet, dass wir Spot Instances aus den Pools anfordern werden, von denen wir glauben, dass die Wahrscheinlichkeit einer kurzfristigen Unterbrechung am geringsten ist. Amazon EC2 Fleet fordert dann Spot-Instances aus dem Pool mit dem niedrigsten Preis an.

prioritized
  • Wenn Sie dies festlegenCapacityType = ONDEMAND, berücksichtigt Amazon EC2 Fleet die Prioritätsreihenfolge, die AWS ParallelCluster für die LaunchTemplate Overrides gilt, wenn mehrere Subnetze angegeben sind. AWS ParallelCluster leitet die Überschreibung priority von der Position des Zielsubnetzes ab, SlurmQueues/Networking/SubnetIds wobei das erste Subnetz die höchste Priorität erhält. Die Prioritäten werden AWS ParallelCluster in absteigender Reihenfolge von abgeleitetSlurmQueues/Networking/SubnetIds, SubnetId wobei die erste die höchste Priorität hat und die letzte SubnetID die niedrigste Priorität hat.

  • Wenn Sie festlegenCapacityType = SPOT, ist nicht verfügbar. prioritized

capacity-optimized-prioritized
  • Wenn du festlegstCapacityType = ONDEMAND, capacity-optimized-prioritized ist nicht verfügbar.

  • Wenn Sie dies festlegenCapacityType = SPOT, optimiert Amazon EC2 Fleet zuerst die Kapazität und wendet dann nach bestem Bemühen die Prioritätsreihenfolge an, die Überschreibungen AWS ParallelCluster zugewiesen wird. LaunchTemplate Die Prioritäten werden AWS ParallelCluster in absteigender Reihenfolge von festgelegtSlurmQueues/Networking/SubnetIds, SubnetId wobei die erste die höchste Priorität hat und die letzte SubnetID die niedrigste Priorität hat. Alle Overrides, die auf dasselbe Subnetz abzielen, erhalten denselben Prioritätswert.

Richtlinie aktualisieren: Die Rechenflotte muss gestoppt oder QueueUpdateStrategyeingerichtet sein, damit diese Einstellung für ein Update geändert werden kann.

Anmerkung

AllocationStrategywird ab AWS ParallelCluster Version 3.3.0 unterstützt.

Neu in 3.14.0: prioritized (für On-Demand) und capacity-optimized-prioritized (für Spot).

JobExclusiveAllocation(Fakultativ,) String

Wenn auf gesetzttrue, ist das Slurm OverSubscribe Partitionsflag auf gesetztEXCLUSIVE. Bei OverSubscribe = EXCLUSIVE haben Jobs in der Partition exklusiven Zugriff auf alle zugewiesenen Knoten. Weitere Informationen finden Sie in der Slurm Dokumentation unter EXCLUSIVE.

Zulässige Werte: true | false

Standard: false

Aktualisierungsrichtlinie: Diese Einstellung kann während eines Updates geändert werden.

Anmerkung

JobExclusiveAllocationwird ab AWS ParallelCluster Version 3.7.0 unterstützt.

CustomSlurmSettings(Fakultativ,Dict)

Definiert die Konfigurationseinstellungen für benutzerdefinierte Slurm Partitionen (Warteschlangen).

Gibt ein Wörterbuch mit Schlüssel-Wert-Paaren benutzerdefinierter Slurm Konfigurationsparameter an, die für Warteschlangen (Partitionen) gelten.

Jedes einzelne Schlüssel-Wert-Paar, z. B.Param1: Value1, wird separat am Ende der Slurm Partitionskonfigurationszeile im Format hinzugefügt. Param1=Value1

Sie können nur Slurm Konfigurationsparameter angeben, die nicht in der Liste „Ablehnen“ aufgeführt sind. CustomSlurmSettings Hinweise zu Slurm Konfigurationsparametern, die auf der Liste der Verweigerer stehen, finden Sie unter. Auf der Denim-Liste Slurm Konfigurationsparameter für CustomSlurmSettings

AWS ParallelCluster prüft nur, ob ein Parameter in einer Ablehnungsliste enthalten ist. AWS ParallelCluster validiert die Syntax oder Semantik Ihrer benutzerdefinierten Slurm Konfigurationsparameter nicht. Es liegt in Ihrer Verantwortung, Ihre benutzerdefinierten Slurm Konfigurationsparameter zu überprüfen. Ungültige benutzerdefinierte Slurm Konfigurationsparameter können zu Slurm Daemon-Ausfällen führen, die zu Fehlern bei der Clustererstellung und -aktualisierung führen können.

Weitere Hinweise zur Angabe benutzerdefinierter Slurm Konfigurationsparameter mit finden Sie AWS ParallelCluster unterSlurm Anpassung der Konfiguration.

Weitere Informationen zu Slurm Konfigurationsparametern finden Sie in der Dokumentation unter slurm.conf. Slurm

Aktualisierungsrichtlinie: Diese Einstellung kann während eines Updates geändert werden.

Anmerkung

CustomSlurmSettingswird ab Version 3.6.0 unterstützt. AWS ParallelCluster

Tags(Optional, [Zeichenfolge])

Eine Liste von Tag-Schlüssel-Wert-Paaren. ComputeResourceTags überschreiben doppelte Tags, die in Tag-Bereich oder inSlurmQueues/angegeben sind. Tags

Key(Fakultativ,String)

Der Tag-Schlüssel.

Value(Fakultativ,String)

Der Tag-Wert.

Richtlinie aktualisieren: Die Rechenflotte muss gestoppt oder QueueUpdateStrategyeingerichtet sein, damit diese Einstellung für ein Update geändert werden kann.

HealthChecks(Fakultativ)

Geben Sie die Zustandsprüfungen des Rechenknotens für alle Rechenressourcen in der Warteschlange an.

Gpu(Optional)

Geben Sie GPU-Zustandsprüfungen für alle Rechenressourcen in einer Warteschlange an.

Anmerkung

AWS ParallelCluster unterstütztHealthChecks/nicht Gpu in Knoten, die alinux2 ARM-Betriebssysteme verwenden. Diese Plattformen unterstützen den NVIDIA Data Center GPU Manager (DCGM) nicht.

Wichtig

Die integrierte GPU-Integritätsprüfung führt im Prolog eine NVIDIA DCGM Level-2-Diagnose durch. Slurm Aktivieren Sie ihn nur bei ausschließlicher Auftragszuweisung (ein Job pro Knoten; festgelegt). JobExclusiveAllocation: true Aktivieren Sie es nicht auf P6-, P6e- oder späteren GPU-Instances. P-family Details hierzu finden Sie unter Bewährte Methoden: GPU-Zustandsprüfungen.

Enabled(Fakultativ,) Boolean

Ob AWS ParallelCluster GPU-Zustandsprüfungen auf Rechenknoten durchgeführt werden. Der Standardwert ist false.

Verhalten bei der GPU-Zustandsprüfung
  • WennGpu/auf gesetzt Enabled isttrue, AWS ParallelCluster führt GPU-Integritätsprüfungen der Rechenressourcen in der Warteschlange durch.

  • Die Gpu Zustandsprüfung führt GPU-Zustandsprüfungen für Rechenressourcen durch, um zu verhindern, dass Aufträge auf Knoten mit einer heruntergefahrenen GPU gesendet werden.

  • Wenn ein Rechenknoten eine Gpu Zustandsprüfung nicht besteht, ändert sich der Status des Rechenknotens inDRAIN. Neue Jobs werden auf diesem Knoten nicht gestartet. Bestehende Jobs werden bis zum Abschluss ausgeführt. Nach Abschluss aller laufenden Jobs wird der Rechenknoten beendet, wenn es sich um einen dynamischen Knoten handelt, und er wird ersetzt, wenn es sich um einen statischen Knoten handelt.

  • Die Dauer der Gpu Integritätsprüfung hängt vom ausgewählten Instance-Typ, der Anzahl der GPUs in der Instance, dem gesamten GPU-Speicher und der Anzahl der Gpu Health Check-Ziele ab (entspricht der Anzahl der Job-GPU-Ziele). Auf einem p4d.24xlarge beträgt die typische Dauer beispielsweise 3 Minuten.

  • Wenn die Gpu Integritätsprüfung auf einer Instanz ausgeführt wird, die nicht unterstützt wird, wird sie beendet und der Job wird auf dem Rechenknoten ausgeführt. Wenn eine Instance beispielsweise keine GPU hat oder wenn eine Instance eine GPU hat, es sich aber nicht um eine NVIDIA-GPU handelt, wird die Integritätsprüfung beendet und der Job wird auf dem Rechenknoten ausgeführt. Nur NVIDIA-GPUs werden unterstützt.

  • Bei der Gpu Integritätsprüfung wird das dcgmi Tool verwendet, um Systemdiagnosen auf einem Knoten durchzuführen. Dabei werden die folgenden Schritte ausgeführt:

    Wenn die Gpu Zustandsprüfung in einem Knoten beginnt:

    1. Es erkennt, ob die nvidia-fabricmanager Dienste nvidia-dcgm und ausgeführt werden.

    2. Wenn diese Dienste nicht ausgeführt werden, werden sie durch die Gpu Systemdiagnose gestartet.

    3. Es erkennt, ob der Persistenzmodus aktiviert ist.

    4. Wenn der Persistenzmodus nicht aktiviert ist, wird er durch die Gpu Integritätsprüfung aktiviert.

    Am Ende der Integritätsprüfung stellt die Gpu Integritätsprüfung diese Dienste und Ressourcen in ihren ursprünglichen Zustand zurück.

  • Wenn der Job einer bestimmten Gruppe von Knoten-GPUs zugewiesen ist, wird die Gpu Integritätsprüfung nur für diese bestimmte Gruppe ausgeführt. Andernfalls wird die Gpu Integritätsprüfung auf allen GPUs im Knoten ausgeführt.

  • Wenn ein Rechenknoten zwei oder mehr Gpu Integritätsprüfungsanforderungen gleichzeitig empfängt, wird nur die erste Integritätsprüfung ausgeführt und die anderen übersprungen. Dies ist auch bei Zustandsprüfungen der Fall, die auf Knoten-GPUs abzielen. Sie können die Protokolldateien auf zusätzliche Informationen zu dieser Situation überprüfen.

  • Das Integritätsprüfungsprotokoll für einen bestimmten Rechenknoten ist in der /var/log/parallelcluster/slurm_health_check.log Datei verfügbar. Die Datei ist bei Amazon CloudWatch in der CloudWatch Cluster-Log-Gruppe verfügbar, wo Sie Folgendes finden:

    • Einzelheiten zur Aktion, die von der Gpu Integritätsprüfung ausgeführt wurde, einschließlich der Aktivierung und Deaktivierung von Diensten und des Persistenzmodus.

    • Die GPU-Kennung, die serielle ID und die UUID.

    • Die Ausgabe des Gesundheitschecks.

Aktualisierungsrichtlinie: Diese Einstellung kann während eines Updates geändert werden.

Anmerkung

HealthCheckswird ab AWS ParallelCluster Version 3.6.0 unterstützt.

Netzwerk

(Erforderlich) Definiert die Netzwerkkonfiguration für die Slurm Warteschlange.

Networking: SubnetIds: - string AssignPublicIp: boolean SecurityGroups: - string AdditionalSecurityGroups: - string PlacementGroup: Enabled: boolean Id: string Name: string Proxy: HttpProxyAddress: string

Richtlinie aktualisieren: Die Rechenflotte muss gestoppt oder QueueUpdateStrategyeingerichtet sein, damit diese Einstellung für ein Update geändert werden kann.

Netzwerk-Eigenschaften
SubnetIds(Erforderlich,[String])

Die IDs vorhandener Subnetze, in denen Sie die Slurm Warteschlange bereitstellen.

Wenn Sie Instanztypen in SlurmQueues/ComputeResources/konfigurieren InstanceType, können Sie nur ein Subnetz definieren.

Wenn Sie Instanztypen in SlurmQueues/ComputeResources/konfigurieren Instances, können Sie ein einzelnes Subnetz oder mehrere Subnetze definieren.

Wenn Sie mehrere Subnetze verwenden, müssen sich alle für eine Warteschlange definierten Subnetze in derselben VPC befinden, wobei sich jedes Subnetz in einer separaten Availability Zone (AZ) befinden muss.

Angenommen, Sie definieren Subnetz-1 und Subnetz-2 für Ihre Warteschlange.

subnet-1und es subnet-2 können nicht beide dabei sein. AZ-1

subnet-1kann drin sein AZ-1 und subnet-2 kann drin sein AZ-2.

Wenn Sie nur einen Instanztyp konfigurieren und mehrere Subnetze verwenden möchten, definieren Sie Ihren Instanztyp in Instances stattInstanceType.

Definieren Sie beispielsweiseComputeResources/Instances/InstanceType= instance.type anstelle vonComputeResources/InstanceType=instance.type.

Anmerkung

Elastic Fabric Adapter (EFA) wird in verschiedenen Verfügbarkeitszonen nicht unterstützt.

Die Verwendung mehrerer Availability Zones kann zu einer Erhöhung der Speichernetzwerklatenz und zu zusätzlichen Kosten für die Datenübertragung zwischen den AZ führen. Dies könnte beispielsweise passieren, wenn eine Instance auf einen Dateispeicher zugreift, der sich in einer anderen AZ befindet. Weitere Informationen finden Sie unter Datenübertragung innerhalb derselben AWS-Region Datei.

Cluster-Updates zur Umstellung von der Verwendung eines einzelnen Subnetzes auf mehrere Subnetze:
  • Angenommen, die Subnetzdefinition eines Clusters ist mit einem einzelnen Subnetz und einem AWS ParallelCluster verwalteten FSx for Lustre-Dateisystem definiert. Dann können Sie diesen Cluster nicht direkt mit einer aktualisierten Subnetz-ID-Definition aktualisieren. Um den Cluster zu aktualisieren, müssen Sie zuerst das verwaltete Dateisystem in ein externes Dateisystem ändern. Weitere Informationen finden Sie unter Konvertiere AWS ParallelCluster verwalteten Speicher in externen Speicher.

  • Nehmen wir an, die Subnetzdefinition eines Clusters ist mit einem einzelnen Subnetz und einem externen Amazon EFS-Dateisystem definiert, wenn keine EFS-Mount-Ziele für alle AZs für die mehreren Subnetze existieren, die hinzugefügt werden sollen. Dann können Sie diesen Cluster nicht direkt mit einer aktualisierten Subnetz-ID-Definition aktualisieren. Um den Cluster zu aktualisieren oder einen Cluster zu erstellen, müssen Sie zunächst alle Mount-Ziele für alle AZs für die definierten mehreren Subnetze erstellen.

Verfügbarkeitszonen und Clusterkapazitätsreservierungen, definiert in CapacityReservationResourceGroupArn:
  • Sie können keinen Cluster erstellen, wenn es keine Überschneidung zwischen den Instanztypen und Verfügbarkeitszonen gibt, die von der Ressourcengruppe mit der definierten Kapazitätsreservierung abgedeckt werden, und den für die Warteschlange definierten Instanztypen und Verfügbarkeitszonen.

  • Sie können einen Cluster erstellen, wenn sich die Instanztypen und Verfügbarkeitszonen, die von der definierten Ressourcengruppe für Kapazitätsreservierungen abgedeckt werden, und den für die Warteschlange definierten Instanztypen und Verfügbarkeitszonen teilweise überschneiden. AWS ParallelCluster sendet in diesem Fall eine Warnmeldung über die teilweise Überlappung.

  • Weitere Informationen finden Sie unter Starten Sie Instances mit On-Demand-Kapazitätsreservierungen (ODCR).

Anmerkung

In AWS ParallelCluster Version 3.4.0 wurden mehrere Availability Zones hinzugefügt.

Warnung

Diese Warnung gilt für alle AWS ParallelCluster 3.x.y-Versionen vor Version 3.3.1. AWS ParallelCluster Version 3.3.1 ist nicht betroffen, wenn dieser Parameter geändert wird.

Für AWS ParallelCluster 3 Versionen vor Version 3.3.1:

Wenn Sie diesen Parameter ändern und einen Cluster aktualisieren, wird ein neues verwaltetes FSx for Lustre-Dateisystem erstellt und das bestehende verwaltete FSx for Lustre-Dateisystem gelöscht, ohne die vorhandenen Daten beizubehalten. Dies führt zu Datenverlust. Bevor Sie fortfahren, stellen Sie sicher, dass Sie die Daten aus dem vorhandenen FSx for Lustre-Dateisystem sichern, wenn Sie Daten beibehalten möchten. Weitere Informationen finden Sie unter Arbeiten mit Backups im FSx for Lustre-Benutzerhandbuch.

Wenn ein neuer Subnetzwert hinzugefügt wird, Aktualisierungsrichtlinie: Diese Einstellung kann während eines Updates geändert werden.

Wenn ein Subnetzwert entfernt wird, Richtlinie aktualisieren: Die Rechenflotte muss gestoppt oder QueueUpdateStrategyeingerichtet sein, damit diese Einstellung für ein Update geändert werden kann.

AssignPublicIp(Fakultativ,String)

Erzeugt eine öffentliche IP-Adresse oder weist den Knoten in der Slurm Warteschlange eine zu. Unterstützte Werte sind true und false. Das Subnetz, das Sie angeben, bestimmt den Standardwert. Ein Subnetz mit öffentlichen IP-Adressen weist standardmäßig öffentliche IP-Adressen zu.

Wenn Sie einen hpc6id Instanztyp p4d oder einen anderen Instanztyp definieren, der über mehrere Netzwerkschnittstellen oder eine Netzwerkschnittstellenkarte verfügt, müssen Sie HeadNode/Networking/ElasticIpauf setzen, um öffentlichen true Zugriff zu gewähren. AWS Öffentliche IPs können nur Instances zugewiesen werden, die mit einer einzigen Netzwerkschnittstelle gestartet wurden. In diesem Fall empfehlen wir, ein NAT-Gateway zu verwenden, um den öffentlichen Zugriff auf die Cluster-Rechenknoten zu ermöglichen. Stellen Sie in diesem Fall AssignPublicIp auf einfalse. Weitere Informationen zu IP-Adressen finden Sie unter Zuweisen einer öffentlichen IPv4-Adresse beim Start der Instance im Amazon EC2-Benutzerhandbuch für Linux-Instances.

Anmerkung

Ab AWS ParallelCluster Version 3.15.0 gilt diese Anforderung auch, wenn Sie Efa auf einem Instance-Typ mit einer einzelnen Netzwerkkarte aktivieren, der mehr als eine Netzwerkschnittstelle unterstützt. AWS ParallelCluster startet diese Rechenknoten mit zwei Netzwerkschnittstellen (eine primäre Schnittstelle plus eine dedizierte efa-only Schnittstelle), sodass Amazon EC2 ihnen nicht automatisch eine öffentliche IP zuweist. Stellen Sie AssignPublicIp für diese Warteschlangen ein NAT-Gateway ein false und verwenden Sie es (oder platzieren Sie die Rechenknoten in einem privaten Subnetz), um den öffentlichen Zugriff bereitzustellen. Weitere Informationen finden Sie unter Elastic Fabric Adapter.

Aktualisierungsrichtlinie: Wenn diese Einstellung geändert wird, ist das Update nicht zulässig.

SecurityGroups(Fakultativ,) [String]

Eine Liste der Sicherheitsgruppen, die für die Slurm Warteschlange verwendet werden sollen. Wenn keine Sicherheitsgruppen angegeben sind, AWS ParallelCluster erstellt Sicherheitsgruppen für Sie.

Stellen Sie sicher, dass die Sicherheitsgruppen für Ihre SharedStorage Systeme richtig konfiguriert sind.

Warnung

Diese Warnung gilt für alle drei. x. y AWS ParallelCluster Versionen vor Version 3.3.0. AWS ParallelCluster Version 3.3.0 ist nicht betroffen, wenn dieser Parameter geändert wird.

Für AWS ParallelCluster 3 Versionen vor Version 3.3.0:

Wenn Sie diesen Parameter ändern und einen Cluster aktualisieren, wird ein neues verwaltetes FSx for Lustre-Dateisystem erstellt und das bestehende verwaltete FSx for Lustre-Dateisystem gelöscht, ohne die vorhandenen Daten beizubehalten. Dies führt zu Datenverlust. Stellen Sie sicher, dass Sie die Daten aus dem vorhandenen FSx for Lustre-Dateisystem sichern, wenn Sie Daten beibehalten möchten. Weitere Informationen finden Sie unter Arbeiten mit Backups im FSx for Lustre-Benutzerhandbuch.

Warnung

Wenn Sie Efa für Ihre Recheninstanzen aktivieren, stellen Sie sicher, dass Ihre EFA-enabled Instances Mitglieder einer Sicherheitsgruppe sind, die den gesamten eingehenden und ausgehenden Datenverkehr für sich selbst zulässt.

Aktualisierungsrichtlinie: Diese Einstellung kann während eines Updates geändert werden.

AdditionalSecurityGroups(Optional,) [String]

Eine Liste zusätzlicher Sicherheitsgruppen, die für die Slurm Warteschlange verwendet werden sollen.

Aktualisierungsrichtlinie: Diese Einstellung kann während eines Updates geändert werden.

PlacementGroup(Fakultativ)

Gibt die Platzierungsgruppeneinstellungen für die Slurm Warteschlange an.

PlacementGroup: Enabled: boolean Id: string Name: string

Aktualisierungsrichtlinie: Alle Rechenknoten müssen gestoppt werden, damit eine verwaltete Platzierungsgruppe gelöscht werden kann. Die Rechenflotte muss gestoppt oder QueueUpdateStrategyeingerichtet sein, damit diese Einstellung für ein Update geändert werden kann.

Enabled(Fakultativ,Boolean)

Gibt an, ob eine Platzierungsgruppe für die Slurm Warteschlange verwendet wird. Der Standardwert ist false.

Richtlinie aktualisieren: Die Rechenflotte muss gestoppt oder QueueUpdateStrategyeingerichtet sein, damit diese Einstellung für ein Update geändert werden kann.

Id(Fakultativ,String)

Die Platzierungsgruppen-ID für eine vorhandene Cluster-Placement-Gruppe, die von der Slurm Warteschlange verwendet wird. Stellen Sie sicher, dass Sie die Platzierungsgruppen-ID und nicht den Namen angeben.

Richtlinie aktualisieren: Die Rechenflotte muss gestoppt oder QueueUpdateStrategyeingerichtet sein, damit diese Einstellung für ein Update geändert werden kann.

Name(Fakultativ,String)

Der Platzierungsgruppenname für eine vorhandene Cluster-Placement-Gruppe, die von der Slurm Warteschlange verwendet wird. Stellen Sie sicher, dass Sie den Namen der Platzierungsgruppe und nicht die ID angeben.

Richtlinie aktualisieren: Die Rechenflotte muss gestoppt oder QueueUpdateStrategyeingerichtet sein, damit diese Einstellung für ein Update geändert werden kann.

Anmerkung
  • WennPlacementGroup/auf gesetzt Enabled isttrue, ohne dass ein Name oder Id definiert ist, wird jeder Rechenressource eine eigene verwaltete Platzierungsgruppe zugewiesen, es sei denn, ComputeResources/Networking/PlacementGroupist so definiert, dass es diese Einstellung außer Kraft setzt.

  • Ab AWS ParallelCluster Version 3.3.0 Name wurde SlurmQueues/Networking/PlacementGroup/als bevorzugte Alternative zu SlurmQueues//NetworkingPlacementGroup/Idhinzugefügt.

    PlacementGroup/Idund PlacementGroup/Namesind gleichwertig. Sie können beide verwenden.

    Wenn Sie sowohl PlacementGroup/als auch PlacementGroup/Idangeben Name, AWS ParallelCluster schlägt dies fehl. Sie können nur das eine oder das andere wählen.

    Sie müssen Ihren Cluster nicht aktualisieren, um PlacementGroup/zu verwenden Name.

  • Wenn Sie eine Kapazitätsblockreservierung verwenden, sollten Sie keine Platzierungsgruppeneinschränkung festlegen, da aufgrund von Platzierungsbeschränkungen außerhalb der Reservierung Fehler bei unzureichender Kapazität auftreten können, selbst wenn die Kapazitätsreservierung über Restkapazität verfügt.

Proxy(Fakultativ)

Gibt die Proxyeinstellungen für die Slurm Warteschlange an.

Proxy: HttpProxyAddress: string

Richtlinie aktualisieren: Die Rechenflotte muss gestoppt oder QueueUpdateStrategyeingerichtet sein, damit diese Einstellung für ein Update geändert werden kann.

HttpProxyAddress(Fakultativ,String)

Definiert einen HTTP- oder HTTPS-Proxyserver für die Slurm Warteschlange. In der Regel ist es sohttps://x.x.x.x:8080.

Es gibt keinen Standardwert.

Richtlinie aktualisieren: Die Rechenflotte muss gestoppt oder QueueUpdateStrategyeingerichtet sein, damit diese Einstellung für ein Update geändert werden kann.

Image

(Optional) Gibt das Bild an, das für die Slurm Warteschlange verwendet werden soll. Um dasselbe AMI für alle Knoten zu verwenden, verwenden Sie die CustomAmi Einstellung im Image Abschnitt.

Image: CustomAmi: string

Richtlinie aktualisieren: Die Rechenflotte muss gestoppt oder QueueUpdateStrategyeingerichtet sein, damit diese Einstellung für ein Update geändert werden kann.

Eigenschaften des Bilds
CustomAmi(Fakultativ,String)

Das AMI, das für die Slurm Warteschlange anstelle der Standard-AMIs verwendet werden soll. Sie können den pcluster CLI-Befehl verwenden, um eine Liste der Standard-AMIs anzuzeigen.

Anmerkung

Das AMI muss auf demselben Betriebssystem basieren, das vom Hauptknoten verwendet wird.

pcluster list-official-images

Wenn das benutzerdefinierte AMI für seinen Start zusätzliche Berechtigungen benötigt, müssen Sie diese Berechtigungen der Headnode-Richtlinie hinzufügen.

Wenn einem benutzerdefinierten AMI beispielsweise ein verschlüsselter Snapshot zugeordnet ist, sind die folgenden zusätzlichen Richtlinien in den Headnode-Richtlinien erforderlich.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "kms:DescribeKey", "kms:ReEncrypt*", "kms:CreateGrant", "kms:Decrypt" ], "Resource": [ "arn:aws:kms:us-east-1:111122223333:key/<AWS_KMS_KEY_ID>" ] } ] }

Informationen zur Behebung von benutzerdefinierten AMI-Validierungswarnungen finden Sie unterBehebung von Problemen mit benutzerdefinierten AMIs.

Richtlinie aktualisieren: Die Rechenflotte muss gestoppt oder QueueUpdateStrategyeingerichtet sein, damit diese Einstellung für ein Update geändert werden kann.

ComputeResources

(Erforderlich) Definiert die ComputeResources Konfiguration für die Slurm Warteschlange.

Anmerkung
  • Die Clustergröße kann sich während eines Updates ändern. Weitere Informationen finden Sie unter Größe und Aktualisierung der Clusterkapazität.

  • Neue Rechenressourcen können dem Cluster nur hinzugefügt werden, wenn sie in Subnetzen bereitgestellt werden, die zu CIDR-Blöcken gehören, die zum Zeitpunkt der Clustererstellung vorhanden sind.

ComputeResources: - Name: string InstanceType: string Instances: - InstanceType: string MinCount: integer MaxCount: integer DynamicNodePriority: integer StaticNodePriority: integer SpotPrice: float DisableSimultaneousMultithreading: boolean SchedulableMemory: integer HealthChecks: Gpu: Enabled: boolean Efa: Enabled: boolean GdrSupport: boolean CapacityReservationTarget: CapacityReservationId: string CapacityReservationResourceGroupArn: string Networking: PlacementGroup: Enabled: boolean Name: string CustomSlurmSettings: dict Tags: - Key: string Value: string LaunchTemplateOverrides: LaunchTemplateId: string Version: string

Richtlinie aktualisieren: Bei dieser Einstellung für Listenwerte kann während eines Updates ein neuer Wert hinzugefügt werden, oder die Rechenflotte muss gestoppt werden, wenn ein vorhandener Wert entfernt wird.

ComputeResources-Eigenschaften
Name(Erforderlich,) String

Der Name der Slurm Warteschlangencomputerumgebung. Der Name kann bis zu 25 Zeichen lang sein.

Aktualisierungsrichtlinie: Wenn diese Einstellung geändert wird, ist das Update nicht zulässig.

InstanceType(Erforderlich,String)

Der Instanztyp, der in dieser Slurm Rechenressource verwendet wird. Alle Instanztypen in einem Cluster müssen dieselbe Prozessorarchitektur verwenden. Instanzen können entweder die x86_64 oder arm64 -Architektur verwenden.

Die Clusterkonfiguration muss entweder InstanceType oder Instanzen definieren. Wenn beide definiert sind, AWS ParallelCluster schlägt dies fehl.

Wenn Sie definierenInstanceType, können Sie nicht mehrere Subnetze definieren. Wenn Sie nur einen Instanztyp konfigurieren und mehrere Subnetze verwenden möchten, definieren Sie Ihren Instanztyp in und Instances nicht in. InstanceType Weitere Informationen finden Sie unter Networking/SubnetIds.

Wenn Sie einen hpc6id Instance-Typ p4d OR oder einen anderen Instance-Typ definieren, der über mehrere Netzwerkschnittstellen oder eine Netzwerkschnittstellenkarte verfügt, müssen Sie die Compute-Instances im privaten Subnetz starten, wie unter beschrieben. AWS ParallelCluster unter Verwendung von zwei Subnetzen AWS Öffentliche IPs können nur Instances zugewiesen werden, die mit einer einzigen Netzwerkschnittstelle gestartet werden. Weitere Informationen finden Sie unter Zuweisen einer öffentlichen IPv4-Adresse beim Start der Instance im Amazon EC2-Benutzerhandbuch für Linux-Instances.

Anmerkung

Ab AWS ParallelCluster Version 3.15.0 gilt diese Anforderung auch, wenn Sie Efa auf einem Instance-Typ mit einer einzelnen Netzwerkkarte aktivieren, der mehr als eine Netzwerkschnittstelle unterstützt. Weitere Informationen finden Sie unter Elastic Fabric Adapter.

Aktualisierungsrichtlinie: Die Rechenflotte muss gestoppt werden, damit diese Einstellung für ein Update geändert werden kann.

Instances(Erforderlich)

Gibt die Liste der Instanztypen für eine Rechenressource an. Informationen zur Angabe der Zuweisungsstrategie für die Liste der Instanztypen finden Sie unter AllocationStrategy.

Die Clusterkonfiguration muss entweder InstanceType oder definieren Instances. Wenn beide definiert sind, AWS ParallelCluster schlägt dies fehl.

Weitere Informationen finden Sie unter Zuweisung mehrerer Instanztypen mit Slurm.

Instances: - InstanceType: string
Anmerkung

Ab AWS ParallelCluster Version 3.7.0 EnableMemoryBasedScheduling kann es aktiviert werden, wenn Sie mehrere Instanztypen in Instances konfigurieren.

Für die AWS ParallelCluster Versionen 3.2.0 bis 3.6. x, EnableMemoryBasedScheduling kann nicht aktiviert werden, wenn Sie mehrere Instanztypen in Instances konfigurieren.

Richtlinie aktualisieren: Bei dieser Einstellung für Listenwerte kann während eines Updates ein neuer Wert hinzugefügt werden, oder die Rechenflotte muss gestoppt werden, wenn ein vorhandener Wert entfernt wird.

InstanceType(Erforderlich,String)

Der Instanztyp, der in dieser Slurm Rechenressource verwendet werden soll. Alle Instanztypen in einem Cluster müssen dieselbe Prozessorarchitektur verwenden, entweder x86_64 oderarm64.

Die unter aufgeführten Instanztypen Instances müssen über Folgendes verfügen:

  • Dieselbe Anzahl von vCPUs oder, falls auf DisableSimultaneousMultithreading gesetzttrue, dieselbe Anzahl von Kernen.

  • Die gleiche Anzahl von Beschleunigern derselben Hersteller.

  • EFA wird unterstützt, wenn Efa/auf Enabled gesetzt ist. true

Die Instanztypen, die unter aufgeführt sind, Instances können Folgendes haben:

  • Unterschiedliche Speichermenge.

    In diesem Fall muss der Mindestspeicher als verbrauchbare Slurm Ressource festgelegt werden.

    Anmerkung

    Ab AWS ParallelCluster Version 3.7.0 EnableMemoryBasedScheduling kann es aktiviert werden, wenn Sie mehrere Instanztypen in Instances konfigurieren.

    Für die AWS ParallelCluster Versionen 3.2.0 bis 3.6. x, EnableMemoryBasedScheduling kann nicht aktiviert werden, wenn Sie mehrere Instanztypen in Instances konfigurieren.

  • Verschiedene Netzwerkkarten.

    In diesem Fall wird die Anzahl der für die Rechenressource konfigurierten Netzwerkschnittstellen durch den Instanztyp mit der kleinsten Anzahl von Netzwerkkarten definiert.

  • Unterschiedliche Netzwerkbandbreite.

  • Unterschiedliche Größe des Instance-Speichers.

Wenn Sie einen hpc6id OR-Instance-Typ p4d oder einen anderen Instance-Typ definieren, der über mehrere Netzwerkschnittstellen oder eine Netzwerkschnittstellenkarte verfügt, müssen Sie die Compute-Instances im privaten Subnetz starten, wie unter beschrieben. AWS ParallelCluster unter Verwendung von zwei Subnetzen AWS Öffentliche IPs können nur Instances zugewiesen werden, die mit einer einzigen Netzwerkschnittstelle gestartet wurden. Weitere Informationen finden Sie unter Zuweisen einer öffentlichen IPv4-Adresse beim Start der Instance im Amazon EC2-Benutzerhandbuch für Linux-Instances.

Anmerkung

Ab AWS ParallelCluster Version 3.15.0 gilt diese Anforderung auch, wenn Sie Efa auf einem Instance-Typ mit einer einzelnen Netzwerkkarte aktivieren, der mehr als eine Netzwerkschnittstelle unterstützt. Weitere Informationen finden Sie unter Elastic Fabric Adapter.

Aktualisierungsrichtlinie: Die Rechenflotte muss gestoppt werden, damit diese Einstellung für ein Update geändert werden kann.

Anmerkung

Instanceswird ab Version 3.3.0 unterstützt. AWS ParallelCluster

MinCount(Fakultativ,Integer)

Die Mindestanzahl von Instanzen, die die Slurm Rechenressource verwendet. Der Standardwert ist 0.

Anmerkung

Die Clustergröße kann sich während eines Updates ändern. Weitere Informationen finden Sie unter Größe und Aktualisierung der Clusterkapazität

Aktualisierungsrichtlinie: Die Rechenflotte muss gestoppt werden, damit diese Einstellung für ein Update geändert werden kann.

MaxCount(Fakultativ,Integer)

Die maximale Anzahl von Instanzen, die die Slurm Rechenressource verwendet. Der Standardwert ist 10.

Wenn Sie sie verwendenCapacityType = CAPACITY_BLOCK, MaxCount muss sie gleich MinCount und größer als 0 sein, da alle Instanzen, die Teil der Capacity Block-Reservierung sind, als statische Knoten verwaltet werden.

Bei der Clustererstellung wartet der Hauptknoten darauf, dass alle statischen Knoten bereit sind, bevor er den Erfolg der Clustererstellung signalisiert. Wenn Sie dies jedoch verwendenCapacityType = CAPACITY_BLOCK, werden die Knoten, die Teil der Rechenressourcen sind, die Kapazitätsblöcken zugeordnet sind, bei dieser Prüfung nicht berücksichtigt. Der Cluster wird auch dann erstellt, wenn nicht alle konfigurierten Kapazitätsblöcke aktiv sind.

Anmerkung

Die Clustergröße kann sich während eines Updates ändern. Weitere Informationen finden Sie unter Größe und Aktualisierung der Clusterkapazität

DynamicNodePriority(Fakultativ,Integer)

Die Priorität dynamischer Knoten in einer Warteschlangenberechnungsressource. Die Priorität wird dem Slurm Weight Knotenkonfigurationsparameter für die dynamischen Knoten der Rechenressource zugeordnet. Der Standardwert ist 1000.

Slurmpriorisiert zuerst Knoten mit den niedrigsten Weight Werten.

Warnung

Die Verwendung vieler verschiedener Weight Werte in einer Slurm Partition (Warteschlange) kann die Geschwindigkeit der Auftragsplanung in der Warteschlange verlangsamen.

In AWS ParallelCluster Versionen vor Version 3.7.0 wurde sowohl statischen als auch dynamischen Knoten das gleiche Standardgewicht von 1 zugewiesen. In diesem Fall Slurm könnte inaktiven dynamischen Knoten aufgrund des Benennungsschemas für statische und dynamische Knoten Vorrang vor inaktiven statischen Knoten eingeräumt werden. Wenn alles andere gleich ist, werden Knoten Slurm alphabetisch nach Namen sortiert.

Anmerkung

DynamicNodePrioritywurde in AWS ParallelCluster Version 3.7.0 hinzugefügt.

Aktualisierungsrichtlinie: Diese Einstellung kann während eines Updates geändert werden.

StaticNodePriority(Fakultativ,Integer)

Die Priorität statischer Knoten in einer Warteschlangenberechnungsressource. Die Priorität wird dem Slurm Weight Knotenkonfigurationsparameter für die statischen Knoten der Rechenressource zugeordnet. Der Standardwert ist 1.

Slurmpriorisiert zuerst Knoten mit den niedrigsten Weight Werten.

Warnung

Die Verwendung vieler verschiedener Weight Werte in einer Slurm Partition (Warteschlange) kann die Geschwindigkeit der Auftragsplanung in der Warteschlange verlangsamen.

Anmerkung

StaticNodePrioritywurde in AWS ParallelCluster Version 3.7.0 hinzugefügt.

Aktualisierungsrichtlinie: Diese Einstellung kann während eines Updates geändert werden.

SpotPrice(Fakultativ,Float)

Der Höchstpreis, der für eine Amazon EC2 Spot-Instance gezahlt wurde, bevor irgendwelche Instances gestartet wurden. Der Standardwert ist der On-Demand Preis.

Richtlinie aktualisieren: Die Rechenflotte muss gestoppt oder QueueUpdateStrategyeingerichtet sein, damit diese Einstellung für ein Update geändert werden kann.

DisableSimultaneousMultithreading(Fakultativ,Boolean)

Wenntrue, ist Multithreading auf den Knoten in der Slurm Warteschlange deaktiviert. Der Standardwert ist false.

Nicht alle Instanztypen können Multithreading deaktivieren. Eine Liste der Instance-Typen, die die Deaktivierung von Multithreading unterstützen, finden Sie im Amazon EC2-Benutzerhandbuch unter CPU-Kerne und Threads für jeden CPU-Kern pro Instance-Typ.

Aktualisierungsrichtlinie: Die Rechenflotte muss gestoppt werden, damit diese Einstellung für ein Update geändert werden kann.

SchedulableMemory(Fakultativ,) Integer

Die Speichermenge in MiB, die im Slurm Parameter RealMemory für die Rechenknoten einer Rechenressource konfiguriert ist. Dieser Wert ist die Obergrenze für den Knotenspeicher, der Jobs zur Verfügung steht, wenn SlurmSettings/aktiviert EnableMemoryBasedScheduling ist. Der Standardwert ist 95 Prozent des Speichers, der in den Amazon EC2-Instance-Typen aufgeführt ist und von der Amazon EC2-API zurückgegeben wird. DescribeInstanceTypes Stellen Sie sicher, dass Sie Werte, die in GiB angegeben sind, in MiB konvertieren.

Unterstützte Werte: 1-EC2Memory

EC2Memoryist der Speicher (in MiB), der in Amazon EC2-Instance-Typen aufgeführt ist und von der Amazon EC2-API zurückgegeben wird. DescribeInstanceTypes Stellen Sie sicher, dass Sie Werte, die in GiB angegeben sind, in MiB konvertieren.

Diese Option ist am relevantesten, wenn SlurmSettings/aktiviert EnableMemoryBasedScheduling ist. Weitere Informationen finden Sie unter Slurm speicherbasierte Terminplanung.

Anmerkung

SchedulableMemorywird ab AWS ParallelCluster Version 3.2.0 unterstützt.

Ab Version 3.2.0 werden standardmäßig 95 Prozent des Speichers, der von der Amazon EC2-API zurückgegeben wird, RealMemory für Slurm Rechenknoten AWS ParallelCluster konfiguriert. DescribeInstanceTypes Diese Konfiguration ist unabhängig vom Wert von. EnableMemoryBasedScheduling

Richtlinie aktualisieren: Die Rechenflotte muss gestoppt oder QueueUpdateStrategyeingerichtet sein, damit diese Einstellung für ein Update geändert werden kann.

HealthChecks(Fakultativ)

Geben Sie Zustandsprüfungen für eine Rechenressource an.

Gpu(Fakultativ)

Geben Sie GPU-Zustandsprüfungen für eine Rechenressource an.

Enabled(Optional,Boolean)

Ob AWS ParallelCluster beim Berechnen einer Ressource in einer Warteschlange GPU-Zustandsprüfungen durchgeführt werden. Der Standardwert ist false.

Anmerkung

AWS ParallelCluster unterstütztHealthChecks/nicht Gpu in Knoten, die alinux2 ARM-Betriebssysteme verwenden. Diese Plattformen unterstützen den NVIDIA Data Center GPU Manager (DCGM) nicht.

Verhalten bei der GPU-Zustandsprüfung
  • WennGpu/auf gesetzt Enabled isttrue, AWS ParallelCluster führt GPU-Integritätsprüfungen für eine Rechenressource durch.

  • Die Gpu Zustandsprüfung führt Integritätsprüfungen für eine Rechenressource durch, um zu verhindern, dass Aufträge auf Knoten mit einer heruntergefahrenen GPU gesendet werden.

  • Wenn ein Rechenknoten eine Gpu Zustandsprüfung nicht besteht, ändert sich der Status des Rechenknotens inDRAIN. Neue Jobs werden auf diesem Knoten nicht gestartet. Bestehende Jobs werden bis zum Abschluss ausgeführt. Nach Abschluss aller laufenden Jobs wird der Rechenknoten beendet, wenn es sich um einen dynamischen Knoten handelt, und er wird ersetzt, wenn es sich um einen statischen Knoten handelt.

  • Die Dauer der Gpu Integritätsprüfung hängt vom ausgewählten Instance-Typ, der Anzahl der GPUs in der Instance und der Anzahl der Gpu Integritätsprüfungsziele ab (entspricht der Anzahl der Job-GPU-Ziele). Bei einer Instance mit 8 GPUs beträgt die typische Dauer weniger als 3 Minuten.

  • Wenn die Gpu Integritätsprüfung auf einer Instanz ausgeführt wird, die nicht unterstützt wird, wird sie beendet und der Job wird auf dem Rechenknoten ausgeführt. Wenn eine Instance beispielsweise keine GPU hat oder wenn eine Instance eine GPU hat, es sich aber nicht um eine NVIDIA-GPU handelt, wird die Integritätsprüfung beendet und der Job wird auf dem Rechenknoten ausgeführt. Nur NVIDIA-GPUs werden unterstützt.

  • Bei der Gpu Integritätsprüfung wird das dcgmi Tool verwendet, um Systemdiagnosen auf einem Knoten durchzuführen. Dabei werden die folgenden Schritte ausgeführt:

    Wenn die Gpu Zustandsprüfung in einem Knoten beginnt:

    1. Es erkennt, ob die nvidia-fabricmanager Dienste nvidia-dcgm und ausgeführt werden.

    2. Wenn diese Dienste nicht ausgeführt werden, werden sie durch die Gpu Systemdiagnose gestartet.

    3. Es erkennt, ob der Persistenzmodus aktiviert ist.

    4. Wenn der Persistenzmodus nicht aktiviert ist, wird er durch die Gpu Integritätsprüfung aktiviert.

    Am Ende der Integritätsprüfung stellt die Gpu Integritätsprüfung diese Dienste und Ressourcen in ihren ursprünglichen Zustand zurück.

  • Wenn der Job einer bestimmten Gruppe von Knoten-GPUs zugewiesen ist, wird die Gpu Integritätsprüfung nur für diese bestimmte Gruppe ausgeführt. Andernfalls wird die Gpu Integritätsprüfung auf allen GPUs im Knoten ausgeführt.

  • Wenn ein Rechenknoten zwei oder mehr Gpu Integritätsprüfungsanforderungen gleichzeitig empfängt, wird nur die erste Integritätsprüfung ausgeführt und die anderen übersprungen. Dies ist auch bei Zustandsprüfungen der Fall, die auf Knoten-GPUs abzielen. Sie können die Protokolldateien auf zusätzliche Informationen zu dieser Situation überprüfen.

  • Das Integritätsprüfungsprotokoll für einen bestimmten Rechenknoten ist in der /var/log/parallelcluster/slurm_health_check.log Datei verfügbar. Diese Datei ist bei Amazon CloudWatch in der CloudWatch Cluster-Protokollgruppe verfügbar. Dort finden Sie:

    • Einzelheiten zur Aktion, die von der Gpu Integritätsprüfung ausgeführt wurde, einschließlich der Aktivierung und Deaktivierung von Diensten und des Persistenzmodus.

    • Die GPU-Kennung, die serielle ID und die UUID.

    • Die Ausgabe des Gesundheitschecks.

Aktualisierungsrichtlinie: Diese Einstellung kann während eines Updates geändert werden.

Anmerkung

HealthCheckswird ab AWS ParallelCluster Version 3.6.0 unterstützt.

Efa(Fakultativ)

Gibt die Elastic Fabric Adapter (EFA) -Einstellungen für die Knoten in der Slurm Warteschlange an.

Efa: Enabled: boolean GdrSupport: boolean

Richtlinie aktualisieren: Die Rechenflotte muss gestoppt oder QueueUpdateStrategyeingerichtet sein, damit diese Einstellung für ein Update geändert werden kann.

Enabled(Optional,Boolean)

Gibt an, dass Elastic Fabric Adapter (EFA) aktiviert ist. Eine Liste der Amazon EC2-Instances, die EFA unterstützen, finden Sie unter Unterstützte Instance-Typen im Amazon EC2-Benutzerhandbuch für Linux-Instances. Weitere Informationen finden Sie unter Elastic Fabric Adapter. Wir empfehlen, einen Cluster SlurmQueues/Networking/PlacementGroupzu verwenden, um die Latenzen zwischen den Instances zu minimieren.

Der Standardwert ist false.

Anmerkung

Elastic Fabric Adapter (EFA) wird in verschiedenen Verfügbarkeitszonen nicht unterstützt. Weitere Informationen finden Sie unter SubnetIds.

Warnung

Wenn Sie eine benutzerdefinierte Sicherheitsgruppe in definieren, stellen Sie sicher SecurityGroups, dass Ihre EFA-enabled Instances Mitglieder einer Sicherheitsgruppe sind, die den gesamten eingehenden und ausgehenden Datenverkehr für sich selbst zulässt.

Richtlinie aktualisieren: Die Rechenflotte muss gestoppt oder QueueUpdateStrategyeingerichtet sein, damit diese Einstellung für ein Update geändert werden kann.

GdrSupport(Optional,) Boolean

(Optional) Ab AWS ParallelCluster Version 3.0.2 hat diese Einstellung keine Auswirkung. Die Elastic Fabric Adapter (EFA) -Unterstützung für GPUDirect RDMA (Remote Direct Memory Access) ist immer aktiviert, wenn sie vom Instance-Typ für die Slurm Rechenressource und das Betriebssystem unterstützt wird.

Richtlinie aktualisieren: Die Rechenflotte muss gestoppt oder QueueUpdateStrategyeingerichtet sein, damit diese Einstellung für ein Update geändert werden kann.

CapacityReservationTarget
CapacityReservationTarget: CapacityReservationId: string CapacityReservationResourceGroupArn: string

Gibt die On-Demand-Kapazitätsreservierung an, die für die Rechenressource verwendet werden soll.

CapacityReservationId(Optional,String)

Die ID der vorhandenen Kapazitätsreservierung als Ziel für die Rechenressourcen der Warteschlange. Die ID kann sich auf einen ODCR oder einen Kapazitätsblock für ML beziehen.

Wenn dieser Parameter auf Rechenressourcenebene angegeben wird, InstanceType ist er optional. Er wird automatisch aus der Reservierung abgerufen.

CapacityReservationResourceGroupArn(Fakultativ,String)

Gibt den Amazon-Ressourcennamen (ARN) der Ressourcengruppe an, die als serviceverknüpfte Gruppe von Kapazitätsreservierungen für die Rechenressource dient. AWS ParallelCluster identifiziert und verwendet die am besten geeignete Kapazitätsreservierung aus der Gruppe. Die Ressourcengruppe muss mindestens einen ODCR für jeden Instanztyp haben, der für die Rechenressource aufgeführt ist. Weitere Informationen finden Sie unter Starten Sie Instances mit On-Demand-Kapazitätsreservierungen (ODCR).

Richtlinie aktualisieren: Die Rechenflotte muss gestoppt oder QueueUpdateStrategyeingerichtet sein, damit diese Einstellung für ein Update geändert werden kann.

Anmerkung

CapacityReservationTargetwird mit AWS ParallelCluster Version 3.3.0 hinzugefügt.

Networking
Networking: PlacementGroup: Enabled: boolean Name: string

Aktualisierungsrichtlinie: Alle Rechenknoten müssen gestoppt werden, damit eine verwaltete Platzierungsgruppe gelöscht werden kann. Die Rechenflotte muss gestoppt oder QueueUpdateStrategyeingerichtet sein, damit diese Einstellung für ein Update geändert werden kann.

PlacementGroup(Fakultativ)

Gibt die Platzierungsgruppeneinstellungen für die Rechenressource an.

Enabled(Optional,Boolean)

Gibt an, ob eine Platzierungsgruppe für die Rechenressource verwendet wird.

  • Wenn dieser Wert auf gesetzt isttrue, ohne einen Name definierten Wert, wird dieser Rechenressource unabhängig von der PlacementGroup Einstellung SlurmQueues/Networking/eine eigene verwaltete Platzierungsgruppe zugewiesen.

  • Wenn dieser Wert auf true gesetzt ist und ein Name Wert definiert ist, wird dieser Rechenressource unabhängig von den SlurmQueuesNetworking//PlacementGroup-Einstellungen die benannte Platzierungsgruppe zugewiesen.

Richtlinie aktualisieren: Die Rechenflotte muss gestoppt oder QueueUpdateStrategyeingerichtet sein, damit diese Einstellung für ein Update geändert werden kann.

Name(Optional,String)

Der Platzierungsgruppenname für eine vorhandene Cluster-Platzierungsgruppe, die für die Rechenressource verwendet wird.

Richtlinie aktualisieren: Die Rechenflotte muss gestoppt oder QueueUpdateStrategyeingerichtet sein, damit diese Einstellung für ein Update geändert werden kann.

Anmerkung
  • Wenn Enabled sowohlPlacementGroup/als auch Name nicht gesetzt sind, werden für ihre jeweiligen Werte standardmäßig die PlacementGroup Einstellungen SlurmQueues/Networking/verwendet.

  • Wenn Sie eine Kapazitätsblockreservierung verwenden, sollte keine Beschränkung für Platzierungsgruppen festgelegt werden, da aufgrund von Platzierungsbeschränkungen außerhalb der Reservierung Fehler bei unzureichender Kapazität auftreten können, selbst wenn die Kapazitätsreservierung über Restkapazität verfügt.

  • ComputeResources/Networking/PlacementGroupwurde mit AWS ParallelCluster Version 3.3.0 hinzugefügt.

CustomSlurmSettings(Fakultativ,Dict)

(Optional) Definiert die Konfigurationseinstellungen für den benutzerdefinierten Slurm Knoten (Rechenressource).

Gibt ein Wörterbuch mit Schlüssel-Wert-Paaren benutzerdefinierter Slurm Konfigurationsparameter an, die für Slurm Knoten (Rechenressourcen) gelten.

Jedes einzelne Schlüssel-Wert-Paar, z. B.Param1: Value1, wird im Format separat am Ende der Slurm Knotenkonfigurationszeile hinzugefügt. Param1=Value1

Sie können nur Slurm Konfigurationsparameter angeben, die nicht in der Liste „Ablehnen“ aufgeführt sind. CustomSlurmSettings Hinweise zu Slurm Konfigurationsparametern, die auf der Liste der Verweigerer stehen, finden Sie unter. Auf der Denim-Liste Slurm Konfigurationsparameter für CustomSlurmSettings

AWS ParallelCluster prüft nur, ob ein Parameter in einer Ablehnungsliste enthalten ist. AWS ParallelCluster validiert die Syntax oder Semantik Ihrer benutzerdefinierten Slurm Konfigurationsparameter nicht. Es liegt in Ihrer Verantwortung, Ihre benutzerdefinierten Slurm Konfigurationsparameter zu überprüfen. Ungültige benutzerdefinierte Slurm Konfigurationsparameter können zu Slurm Daemon-Ausfällen führen, die zu Fehlern bei der Clustererstellung und -aktualisierung führen können.

Weitere Hinweise zur Angabe benutzerdefinierter Slurm Konfigurationsparameter mit finden Sie AWS ParallelCluster unterSlurm Anpassung der Konfiguration.

Weitere Informationen zu Slurm Konfigurationsparametern finden Sie in der Dokumentation unter slurm.conf. Slurm

Aktualisierungsrichtlinie: Diese Einstellung kann während eines Updates geändert werden.

Anmerkung

CustomSlurmSettingswird ab Version 3.6.0 unterstützt. AWS ParallelCluster

Tags(Optional, [Zeichenfolge])

Eine Liste von Tag-Schlüssel-Wert-Paaren. ComputeResourceTags überschreiben doppelte Tags, die in Tag-Bereich oder SlurmQueues/angegeben sind. Tags

Key(Fakultativ,String)

Der Tag-Schlüssel.

Value(Fakultativ,String)

Der Tag-Wert.

Richtlinie aktualisieren: Die Rechenflotte muss gestoppt oder QueueUpdateStrategyeingerichtet sein, damit diese Einstellung für ein Update geändert werden kann.

LaunchTemplateOverrides(Fakultativ)
Anmerkung

LaunchTemplateOverrideswird mit AWS ParallelCluster Version 3.15.0 hinzugefügt.

Gibt eine Startvorlage an, die die Standardstartvorlage überschreibt, die für die AWS ParallelCluster Rechenressource erstellt wird. Die Startvorlage sollte nur Überschreibungen für Netzwerkschnittstellen enthalten. AWS ParallelCluster validiert die Startvorlage und verhindert das Überschreiben anderer Parameter. Weitere Informationen zur Verwendung dieser Überschreibung finden Sie unter. Passen Sie die Netzwerkschnittstellen für Rechenknoten mit Überschreibungen für Startvorlagen an

LaunchTemplateOverrides: LaunchTemplateId: string Version: string

ComputeSettings

(Erforderlich) Definiert die ComputeSettings Konfiguration für die Slurm Warteschlange.

ComputeSettings-Eigenschaften

Gibt die Eigenschaften ComputeSettings der Knoten in der Slurm Warteschlange an.

ComputeSettings: LocalStorage: RootVolume: Size: integer Encrypted: boolean VolumeType: string Iops: integer Throughput: integer EphemeralVolume: MountDir: string

Richtlinie aktualisieren: Die Rechenflotte muss gestoppt oder QueueUpdateStrategyeingerichtet sein, damit diese Einstellung für ein Update geändert werden kann.

LocalStorage(Fakultativ)

Gibt die Eigenschaften LocalStorage der Knoten in der Slurm Warteschlange an.

LocalStorage: RootVolume: Size: integer Encrypted: boolean VolumeType: string Iops: integer Throughput: integer EphemeralVolume: MountDir: string

Richtlinie aktualisieren: Die Rechenflotte muss gestoppt oder QueueUpdateStrategyeingerichtet sein, damit diese Einstellung für ein Update geändert werden kann.

RootVolume(Fakultativ)

Gibt die Details des Root-Volumes der Knoten in der Slurm Warteschlange an.

RootVolume: Size: integer Encrypted: boolean VolumeType: string Iops: integer Throughput: integer

Richtlinie aktualisieren: Die Rechenflotte muss gestoppt oder QueueUpdateStrategyeingerichtet sein, damit diese Einstellung für ein Update geändert werden kann.

Size(Fakultativ,Integer)

Gibt die Größe des Root-Volumes in Gibibytes (GiB) für die Knoten in der Slurm Warteschlange an. Die Standardgröße stammt vom AMI. Die Verwendung einer anderen Größe erfordert, dass das AMI dies unterstütztgrowroot.

Richtlinie aktualisieren: Die Rechenflotte muss gestoppt oder QueueUpdateStrategyeingerichtet sein, damit diese Einstellung für ein Update geändert werden kann.

Encrypted(Fakultativ,Boolean)

Wenntrue, ist das Root-Volume der Knoten in der Slurm Warteschlange verschlüsselt. Der Standardwert ist true.

Richtlinie aktualisieren: Die Rechenflotte muss gestoppt oder QueueUpdateStrategyeingerichtet sein, damit diese Einstellung für ein Update geändert werden kann.

VolumeType(Fakultativ,String)

Gibt den Amazon EBS-Volume-Typ der Knoten in der Slurm Warteschlange an. Unterstützte Werte sind gp2gp3,io1,io2, sc1st1, undstandard. Der Standardwert ist gp3.

Weitere Informationen finden Sie unter Amazon EBS-Volume-Typen im Amazon EC2-Benutzerhandbuch.

Richtlinie aktualisieren: Die Rechenflotte muss gestoppt oder QueueUpdateStrategyeingerichtet sein, damit diese Einstellung für ein Update geändert werden kann.

Iops(Fakultativ,Boolean)

Definiert die Anzahl der IOPS für io1 Volumes und gp3 Typen. io2

Der Standardwert, die unterstützten Werte und volume_iops das volume_size Verhältnis zwischen VolumeType und Size variieren.

VolumeType = io1

Standard Iops = 100

Unterstützte Werte Iops = 100—64000 †

Verhältnis von Maximum volume_iops zu volume_size Verhältnis = 50 IOPS pro GiB. 5000 IOPS erfordern mindestens 100 GiB. volume_size

VolumeType = io2

Standard Iops = 100

Unterstützte Werte Iops = 100—64000 (256000 für io2 Block Express-Volumes) †

Verhältnis von Maximum Iops zu Size Verhältnis = 500 IOPS pro GiB. 5000 IOPS erfordern mindestens 10 GiB. Size

VolumeType = gp3

Standard Iops = 3000

Unterstützte Werte Iops = 3000—16000 †

SizeVerhältnis von Maximum Iops zu IOPS = 500 IOPS pro GiB für Volumes mit IOPS über 3000.

† Die maximale IOPS wird nur für Instances garantiert, die auf dem Nitro-System basieren und die ebenfalls mit mehr als 32.000 IOPS ausgestattet sind. Andere Instanzen können bis zu 32.000 IOPS haben. Frühere io1 Volumes erreichen möglicherweise nicht die volle Leistung, es sei denn, Sie ändern das Volume. io2 Block Express-Volumes unterstützen volume_iops Werte bis zu 256000 für R5b Instance-Typen. Weitere Informationen finden Sie unter io2 Block Express-Volumes im Amazon EC2-Benutzerhandbuch.

Richtlinie aktualisieren: Die Rechenflotte muss gestoppt oder QueueUpdateStrategyeingerichtet sein, damit diese Einstellung für ein Update geändert werden kann.

Throughput(Fakultativ,Integer)

Definiert den Durchsatz für gp3 Volumentypen, in MiB/s. Diese Einstellung ist nur gültig, wenn VolumeTypegp3. Der Standardwert ist 125. Unterstützte Werte: 125—1000 MiB/s

Das Verhältnis von Throughput zu Iops darf nicht mehr als 0,25 betragen. Der maximale Durchsatz von 1000 MiB/s setzt voraus, dass die Iops Einstellung mindestens 4000 beträgt.

Richtlinie aktualisieren: Die Rechenflotte muss gestoppt oder QueueUpdateStrategyeingerichtet sein, damit diese Einstellung für ein Update geändert werden kann.

EphemeralVolume(Fakultativ,Boolean)

Gibt die Einstellungen für das kurzlebige Volumen an. Das temporäre Volume wird erstellt, indem alle Instance-Speicher-Volumes zu einem einzigen logischen Volume zusammengefasst werden, das mit dem Dateisystem formatiert ist. ext4 Der Standardwert ist /scratch. Wenn der Instanztyp keine Instance-Speicher-Volumes hat, wird kein temporäres Volume erstellt. Weitere Informationen finden Sie unter Instance-Speicher-Volumes im Amazon EC2-Benutzerhandbuch.

EphemeralVolume: MountDir: string

Richtlinie aktualisieren: Die Rechenflotte muss gestoppt oder QueueUpdateStrategyeingerichtet sein, damit diese Einstellung für ein Update geändert werden kann.

MountDir(Optional,) String

Das Mount-Verzeichnis für das temporäre Volume für jeden Knoten in der Slurm Warteschlange.

Richtlinie aktualisieren: Die Rechenflotte muss gestoppt oder QueueUpdateStrategyeingerichtet sein, damit diese Einstellung für ein Update geändert werden kann.

CustomActions

(Optional) Gibt benutzerdefinierte Skripts an, die auf den Knoten in der Slurm Warteschlange ausgeführt werden sollen.

CustomActions: OnNodeStart: Sequence: - Script: string Args: - string Script: string Args: - string OnNodeConfigured: Sequence: - Script: string Args: - string Script: string Args: - string

Richtlinie aktualisieren: Die Rechenflotte muss gestoppt oder QueueUpdateStrategyeingerichtet sein, damit diese Einstellung für ein Update geändert werden kann.

CustomActionsEigenschaften
OnNodeStart(Fakultativ,String)

Gibt eine Folge von Skripten oder ein einzelnes Skript an, das auf den Knoten in der Slurm Warteschlange ausgeführt werden soll, bevor eine Bootstrap-Aktion für die Knotenbereitstellung gestartet wird. AWS ParallelCluster unterstützt nicht, sowohl ein einzelnes Skript als auch Sequence dieselbe benutzerdefinierte Aktion einzubeziehen. Weitere Informationen finden Sie unter Benutzerdefinierte Bootstrap-Aktionen.

Richtlinie aktualisieren: Die Rechenflotte muss gestoppt oder QueueUpdateStrategyeingerichtet sein, damit diese Einstellung für ein Update geändert werden kann.

OnNodeConfigured(Fakultativ,String)

Gibt eine Folge von Skripten oder ein einzelnes Skript an, das auf den Knoten in der Slurm Warteschlange ausgeführt wird, nachdem alle Knoten-Bootstrap-Aktionen abgeschlossen sind. AWS ParallelCluster unterstützt nicht, sowohl ein einzelnes Skript als auch Sequence dieselbe benutzerdefinierte Aktion einzubeziehen. Weitere Informationen finden Sie unter Benutzerdefinierte Bootstrap-Aktionen.

Richtlinie aktualisieren: Die Rechenflotte muss gestoppt oder QueueUpdateStrategyeingerichtet sein, damit diese Einstellung für ein Update geändert werden kann.

Anmerkung

Sequencewird ab AWS ParallelCluster Version 3.6.0 hinzugefügt. Wenn Sie angebenSequence, können Sie mehrere Skripts für eine benutzerdefinierte Aktion auflisten. AWS ParallelCluster unterstützt weiterhin die Konfiguration einer benutzerdefinierten Aktion mit einem einzigen Skript, ohne dass ein Skript hinzugefügt wirdSequence.

AWS ParallelCluster unterstützt nicht, sowohl ein einzelnes Skript als auch Sequence dieselbe benutzerdefinierte Aktion einzubeziehen.

Iam

(Optional) Definiert optionale IAM-Einstellungen für die Slurm Warteschlange.

Iam: S3Access: - BucketName: string EnableWriteAccess: boolean KeyName: string AdditionalIamPolicies: - Policy: string InstanceProfile: string InstanceRole: string

Aktualisierungsrichtlinie: Diese Einstellung kann während eines Updates geändert werden.

IAM-Eigenschaften
InstanceProfile(Fakultativ,String)

Gibt ein Instanzprofil an, das die standardmäßige Instanzrolle oder das Standardinstanzprofil für die Slurm Warteschlange überschreibt. Sie können nicht sowohl als InstanceProfile auch angebenInstanceRole. Das Format ist arn:${Partition}:iam::${Account}:instance-profile/${InstanceProfileName}.

Wenn dies angegeben ist, können die AdditionalIamPolicies Einstellungen S3Access und nicht angegeben werden.

Es wird empfohlen, eine oder beide der S3Access AdditionalIamPolicies UND-Einstellungen anzugeben, da für hinzugefügte Funktionen AWS ParallelCluster häufig neue Berechtigungen erforderlich sind.

Aktualisierungsrichtlinie: Die Rechenflotte muss gestoppt werden, damit diese Einstellung für ein Update geändert werden kann.

InstanceRole(Fakultativ,String)

Gibt eine Instanzrolle an, um die Standard-Instanzrolle oder das Standard-Instanzprofil für die Slurm Warteschlange zu überschreiben. Sie können nicht sowohl als InstanceProfile auch angebenInstanceRole. Das Format ist arn:${Partition}:iam::${Account}:role/${RoleName}.

Wenn dies angegeben ist, können die AdditionalIamPolicies Einstellungen S3Access und nicht angegeben werden.

Es wird empfohlen, eine oder beide der S3Access AdditionalIamPolicies UND-Einstellungen anzugeben, da für hinzugefügte Funktionen AWS ParallelCluster häufig neue Berechtigungen erforderlich sind.

Aktualisierungsrichtlinie: Diese Einstellung kann während eines Updates geändert werden.

S3Access(Fakultativ)

Gibt einen Bucket für die Slurm Warteschlange an. Dies wird verwendet, um Richtlinien zu generieren, die den angegebenen Zugriff auf den Bucket in der Slurm Warteschlange gewähren.

Wenn dies angegeben ist, können die InstanceRole Einstellungen InstanceProfile und nicht angegeben werden.

Es wird empfohlen, eine oder beide der S3Access AdditionalIamPolicies UND-Einstellungen anzugeben, da für hinzugefügte Funktionen AWS ParallelCluster häufig neue Berechtigungen erforderlich sind.

S3Access: - BucketName: string EnableWriteAccess: boolean KeyName: string

Aktualisierungsrichtlinie: Diese Einstellung kann während eines Updates geändert werden.

BucketName(Erforderlich,String)

Der Name des -Buckets.

Aktualisierungsrichtlinie: Diese Einstellung kann während eines Updates geändert werden.

KeyName(Fakultativ,String)

Der Schlüssel für den Eimer. Der Standardwert ist *.

Aktualisierungsrichtlinie: Diese Einstellung kann während eines Updates geändert werden.

EnableWriteAccess(Fakultativ,Boolean)

Gibt an, ob der Schreibzugriff für den Bucket aktiviert ist.

Aktualisierungsrichtlinie: Diese Einstellung kann während eines Updates geändert werden.

AdditionalIamPolicies(Fakultativ)

Gibt eine Liste von Amazon Resource Names (ARNs) mit IAM-Richtlinien für Amazon EC2 an. Diese Liste ist zusätzlich zu den Berechtigungen, die für erforderlich sind, an die Root-Rolle angehängt, die für die Slurm Warteschlange verwendet wird. AWS ParallelCluster

Der Name einer IAM-Richtlinie und ihr ARN sind unterschiedlich. Namen können nicht verwendet werden.

Wenn dies angegeben ist, können die InstanceRole Einstellungen InstanceProfile und nicht angegeben werden.

Wir empfehlen, dass Sie verwenden, AdditionalIamPolicies weil zu den erforderlichen Berechtigungen hinzugefügt AdditionalIamPolicies werden und dass AWS ParallelCluster alle erforderlichen Berechtigungen enthalten InstanceRole müssen. Die erforderlichen Berechtigungen ändern sich häufig von Version zu Version, da Funktionen hinzugefügt werden.

Es gibt keinen Standardwert.

AdditionalIamPolicies: - Policy: string

Aktualisierungsrichtlinie: Diese Einstellung kann während eines Updates geändert werden.

SlurmSettings

(Optional) Definiert die EinstellungenSlurm, die für den gesamten Cluster gelten.

SlurmSettings: ScaledownIdletime: integer QueueUpdateStrategy: string EnableMemoryBasedScheduling: boolean CustomSlurmSettings: [dict] CustomSlurmSettingsIncludeFile: string Database: Uri: string UserName: string PasswordSecretArn: string ExternalSlurmdbd: Host: string Port: integer Dns: DisableManagedDns: boolean HostedZoneId: string UseEc2Hostnames: boolean

SlurmSettingsEigenschaften

ScaledownIdletime(Fakultativ,Integer)

Definiert den Zeitraum (in Minuten), in dem kein Job ausgeführt wird und der Slurm Knoten beendet wird.

Der Standardwert ist 10.

Aktualisierungsrichtlinie: Die Rechenflotte muss gestoppt werden, damit diese Einstellung für ein Update geändert werden kann.

MungeKeySecretArn(Fakultativ,String)

Der Amazon-Ressourcenname (ARN) des AWS Secrets Manager-Geheimnisses im Klartext, das den Base64-kodierten Munge-Schlüssel enthält, der im Cluster verwendet werden soll. Slurm Dieser Munge-Schlüssel wird zur Authentifizierung von RPC-Aufrufen zwischen Slurm Client-Befehlen und Daemons verwendet, die als Remote-Server agieren. Slurm Wenn er nicht angegeben MungeKeySecretArn wird, AWS ParallelCluster wird ein zufälliger Munge-Schlüssel für den Cluster generiert.

Anmerkung

MungeKeySecretArnwird ab AWS ParallelCluster Version 3.8.0 unterstützt.

Warnung

Wenn der MungeKeySecretArn neu zu einem bestehenden Cluster hinzugefügt ParallelCluster wird, wird der vorherige Munge-Schlüssel im Falle eines Rollbacks oder beim späteren Entfernen nicht wiederhergestellt. MungeKeySecretArn Stattdessen wird ein neuer zufälliger Munge-Schlüssel generiert.

Ob der AWS ParallelCluster Benutzer die Erlaubnis hat, DescribeSecret auf diese bestimmte geheime Ressource zuzugreifen, MungeKeySecretArn wird validiert. MungeKeySecretArn ist gültig, wenn:

  • Das angegebene Geheimnis existiert und

  • Das Geheimnis ist Klartext und enthält eine gültige Base64-kodierte Zeichenfolge, und

  • Der dekodierte binäre Munge-Schlüssel hat eine Größe zwischen 256 und 8192 Bit.

Wenn die Pcluster-Benutzer-IAM-Richtlinie Folgendes nicht enthält DescribeSecret, MungeKeySecretArn wird es nicht validiert und es wird eine Warnmeldung angezeigt. Weitere Informationen finden Sie unter Base AWS ParallelCluster pcluster-Benutzerrichtlinie.

Bei der Aktualisierung müssen MungeKeySecretArn die Rechenflotte und alle Anmeldeknoten gestoppt werden.

Wenn der geheime Wert im geheimen ARN geändert wird, während der ARN derselbe bleibt, wird der Cluster nicht automatisch mit dem neuen Munge-Schlüssel aktualisiert. Um den neuen Munge-Schlüssel des geheimen ARN verwenden zu können, müssen Sie die Rechenflotte und die Anmeldeknoten anhalten und dann den folgenden Befehl vom Hauptknoten aus ausführen.

sudo /opt/parallelcluster/scripts/slurm/update_munge_key.sh

Nachdem Sie den Befehl ausgeführt haben, können Sie sowohl die Rechenflotte als auch die Anmeldeknoten wieder aufnehmen: Die neu bereitgestellten Rechen- und Anmeldeknoten beginnen automatisch, den neuen Munge-Schlüssel zu verwenden.

Um einen Base64-kodierten benutzerdefinierten Munge-Schlüssel zu generieren, können Sie das Mungekey-Hilfsprogramm verwenden, das im Lieferumfang der Munge-Software enthalten ist, und es dann mit dem in Ihrem Betriebssystem allgemein verfügbaren Base64-Hilfsprogramm codieren. Alternativ verwenden Sie entweder bash (bitte setzen Sie den Parameter bs zwischen 32 und 1024)

dd if=/dev/random bs=128 count=1 2>/dev/null | base64 -w 0

oder Python wie folgt:

import random import os import base64 # key length in bytes key_length=128 base64.b64encode(os.urandom(key_length)).decode("utf-8")

Aktualisierungsrichtlinie: Die Rechenflotte und die Anmeldeknoten müssen gestoppt werden, damit diese Einstellung für ein Update geändert werden kann.

QueueUpdateStrategy(Fakultativ,String)

Gibt die Ersetzungsstrategie für die SlurmQueues Abschnittsparameter an, für die die folgende Aktualisierungsrichtlinie gilt:

Aktualisierungsrichtlinie: Die Rechenflotte muss gestoppt oder QueueUpdateStrategy eingerichtet sein, damit diese Einstellung für ein Update geändert werden kann.

Der QueueUpdateStrategy Wert wird nur verwendet, wenn ein Cluster-Aktualisierungsprozess gestartet wird.

Zulässige Werte: COMPUTE_FLEET_STOP | DRAIN | TERMINATE

Standardwert: COMPUTE_FLEET_STOP

DRAIN

Knoten in Warteschlangen mit geänderten Parameterwerten werden auf DRAINING gesetzt. Knoten in diesem Status akzeptieren keine neuen Jobs und laufende Jobs werden bis zum Abschluss fortgesetzt.

Wenn ein Knoten zu idle (DRAINED) wird, wird ein Knoten ersetzt, wenn der Knoten statisch ist, und der Knoten wird beendet, wenn der Knoten dynamisch ist. Andere Knoten in anderen Warteschlangen ohne geänderte Parameterwerte sind davon nicht betroffen.

Die Zeit, die diese Strategie benötigt, um alle Warteschlangenknoten durch geänderte Parameterwerte zu ersetzen, hängt von der laufenden Arbeitslast ab.

COMPUTE_FLEET_STOP

Der Standardwert des QueueUpdateStrategy Parameters. Bei dieser Einstellung müssen Sie für die Aktualisierung der Parameter in diesem SlurmQueues Abschnitt die Rechenflotte anhalten, bevor Sie ein Cluster-Update durchführen:

$ pcluster update-compute-fleet --status STOP_REQUESTED
TERMINATE

In Warteschlangen mit geänderten Parameterwerten werden laufende Jobs beendet und die Knoten werden sofort heruntergefahren.

Statische Knoten werden ersetzt und dynamische Knoten werden beendet.

Andere Knoten in anderen Warteschlangen ohne geänderte Parameterwerte sind nicht betroffen.

Aktualisierungsrichtlinie: Diese Einstellung wird während eines Updates nicht analysiert.

Anmerkung

QueueUpdateStrategywird ab AWS ParallelCluster Version 3.2.0 unterstützt.

EnableMemoryBasedScheduling(Fakultativ,Boolean)

Wenn true die speicherbasierte Planung in aktiviert ist. Slurm Weitere Informationen finden Sie unter SlurmQueues//ComputeResources. SchedulableMemory

Der Standardwert ist false.

Warnung

Die Aktivierung der speicherbasierten Planung wirkt sich auf die Art und Weise aus, wie der Slurm Scheduler Jobs und die Knotenzuweisung verarbeitet.

Weitere Informationen finden Sie unter Slurm speicherbasierte Terminplanung.

Anmerkung

EnableMemoryBasedSchedulingwird ab Version 3.2.0 unterstützt. AWS ParallelCluster

Anmerkung

Ab AWS ParallelCluster Version 3.7.0 EnableMemoryBasedScheduling kann es aktiviert werden, wenn Sie mehrere Instanztypen in Instances konfigurieren.

Für die AWS ParallelCluster Versionen 3.2.0 bis 3.6. x, EnableMemoryBasedScheduling kann nicht aktiviert werden, wenn Sie mehrere Instanztypen in Instances konfigurieren.

Aktualisierungsrichtlinie: Die Rechenflotte muss gestoppt werden, damit diese Einstellung für ein Update geändert werden kann.

CustomSlurmSettings(Optional,[Dict])

Definiert die benutzerdefinierten Slurm Einstellungen, die für den gesamten Cluster gelten.

Gibt eine Liste von Slurm Konfigurationswörterbüchern mit Schlüssel-Wert-Paaren an, die an das Ende der generierten Datei angehängt werden. slurm.conf AWS ParallelCluster

Jedes Wörterbuch in der Liste wird als separate Zeile angezeigt, die der Konfigurationsdatei hinzugefügt wird. Slurm Sie können entweder einfache oder komplexe Parameter angeben.

Einfache Parameter bestehen aus einem einzigen Schlüsselpaar, wie in den folgenden Beispielen gezeigt:

- Param1: 100 - Param2: "SubParam1,SubParam2=SubValue2"

In der Slurm Konfiguration gerendertes Beispiel:

Param1=100 Param2=SubParam1,SubParam2=SubValue2

Komplexe Slurm Konfigurationsparameter bestehen aus mehreren durch Leerzeichen getrennten Schlüssel-Wert-Paaren, wie in den nächsten Beispielen gezeigt:

- NodeName: test-nodes[1-10] CPUs: 4 RealMemory: 4196 ... # other node settings - NodeSet: test-nodeset Nodes: test-nodes[1-10] ... # other nodeset settings - PartitionName: test-partition Nodes: test-nodeset ... # other partition settings

Beispiel, gerendert in der Konfiguration: Slurm

NodeName=test-nodes[1-10] CPUs=4 RealMemory=4196 ... # other node settings NodeSet=test-nodeset Nodes=test-nodes[1-10] ... # other nodeset settings PartitionName=test-partition Nodes=test-nodeset ... # other partition settings
Anmerkung

Benutzerdefinierte Slurm Knoten dürfen in ihren Namen keine -st- -dy- ODER-Muster enthalten. Diese Muster sind Knoten vorbehalten, die von verwaltet werden AWS ParallelCluster.

Wenn Sie benutzerdefinierte Slurm Konfigurationsparameter in angebenCustomSlurmSettings, dürfen Sie keine benutzerdefinierten Slurm Konfigurationsparameter für angebenCustomSlurmSettingsIncludeFile.

Sie können nur Slurm Konfigurationsparameter angeben, die nicht in der Liste „Ablehnen“ aufgeführt sind. CustomSlurmSettings Hinweise zu Slurm Konfigurationsparametern, die auf der Liste der Verweigerer stehen, finden Sie unter. Auf der Denim-Liste Slurm Konfigurationsparameter für CustomSlurmSettings

AWS ParallelCluster prüft nur, ob ein Parameter in einer Ablehnungsliste enthalten ist. AWS ParallelCluster validiert die Syntax oder Semantik Ihrer benutzerdefinierten Slurm Konfigurationsparameter nicht. Es liegt in Ihrer Verantwortung, Ihre benutzerdefinierten Slurm Konfigurationsparameter zu überprüfen. Ungültige benutzerdefinierte Slurm Konfigurationsparameter können zu Slurm Daemon-Ausfällen führen, die zu Fehlern bei der Clustererstellung und -aktualisierung führen können.

Weitere Hinweise zur Angabe benutzerdefinierter Slurm Konfigurationsparameter mit finden Sie AWS ParallelCluster unterSlurm Anpassung der Konfiguration.

Weitere Informationen zu Slurm Konfigurationsparametern finden Sie in der Dokumentation unter slurm.conf. Slurm

Aktualisierungsrichtlinie: Diese Einstellung kann während eines Updates geändert werden.

Anmerkung

CustomSlurmSettingswird ab Version 3.6.0 unterstützt. AWS ParallelCluster

CustomSlurmSettingsIncludeFile(Fakultativ,String)

Definiert die benutzerdefinierten Slurm Einstellungen, die für den gesamten Cluster gelten.

Gibt die benutzerdefinierte Slurm Datei an, die aus benutzerdefinierten Slurm Konfigurationsparametern besteht, die am Ende der AWS ParallelCluster generierten slurm.conf Datei angehängt werden soll.

Sie müssen den Pfad zur Datei angeben. Der Pfad kann mit https:// oder beginnens3://.

Wenn Sie benutzerdefinierte Slurm Konfigurationsparameter für angebenCustomSlurmSettingsIncludeFile, dürfen Sie keine benutzerdefinierten Slurm Konfigurationsparameter für angebenCustomSlurmSettings.

Anmerkung

Benutzerdefinierte Slurm Knoten dürfen keine -dy- Oder-Muster in ihren Namen enthalten. -st- Diese Muster sind Knoten vorbehalten, die von verwaltet werden AWS ParallelCluster.

Sie können nur Slurm Konfigurationsparameter angeben, die nicht in der Liste „Ablehnen“ aufgeführt sind. CustomSlurmSettingsIncludeFile Hinweise zu Slurm Konfigurationsparametern, die auf der Liste der Verweigerer stehen, finden Sie unter. Auf der Denim-Liste Slurm Konfigurationsparameter für CustomSlurmSettings

AWS ParallelCluster prüft nur, ob ein Parameter in einer Ablehnungsliste enthalten ist. AWS ParallelCluster validiert die Syntax oder Semantik Ihrer benutzerdefinierten Slurm Konfigurationsparameter nicht. Es liegt in Ihrer Verantwortung, Ihre benutzerdefinierten Slurm Konfigurationsparameter zu überprüfen. Ungültige benutzerdefinierte Slurm Konfigurationsparameter können zu Slurm Daemon-Ausfällen führen, die zu Fehlern bei der Clustererstellung und -aktualisierung führen können.

Weitere Hinweise zur Angabe benutzerdefinierter Slurm Konfigurationsparameter mit finden Sie AWS ParallelCluster unterSlurm Anpassung der Konfiguration.

Weitere Informationen zu Slurm Konfigurationsparametern finden Sie in der Dokumentation unter slurm.conf. Slurm

Aktualisierungsrichtlinie: Diese Einstellung kann während eines Updates geändert werden.

Anmerkung

CustomSlurmSettingswird ab Version 3.6.0 unterstützt. AWS ParallelCluster

Datenbank

(Optional) Definiert die Einstellungen, um Slurm Accounting auf dem Cluster zu aktivieren. Weitere Informationen finden Sie unter SlurmAbrechnung mit AWS ParallelCluster.

Database: Uri: string UserName: string PasswordSecretArn: string

Aktualisierungsrichtlinie: Die Rechenflotte muss gestoppt werden, damit diese Einstellung für ein Update geändert werden kann.

Eigenschaften der Datenbank

Uri(Erforderlich,String)

Die Adresse des Datenbankservers, der als Backend für die Slurm Buchhaltung verwendet wird. Dieser URI muss als ein Schema formatiert sein host:port und darf kein Schema enthalten, z. B. mysql:// Der Host kann entweder eine IP-Adresse oder ein DNS-Name sein, der vom Kopfknoten aufgelöst werden kann. Wenn kein Port bereitgestellt wird, wird der MySQL Standardport 3306 AWS ParallelCluster verwendet.

AWS ParallelCluster Die Slurm Accounting-Datenbank wird per Bootstrap auf den Cluster übertragen und muss auf die Datenbank zugreifen.

Die Datenbank muss erreichbar sein, bevor Folgendes passiert:

  • Ein Cluster wird erstellt.

  • SlurmDie Buchhaltung wird mit einem Cluster-Update aktiviert.

Aktualisierungsrichtlinie: Die Rechenflotte muss gestoppt werden, damit diese Einstellung für ein Update geändert werden kann.

UserName(Erforderlich,String)

Die Identität, die Slurm verwendet wird, um eine Verbindung zur Datenbank herzustellen, Kontoführungsprotokolle zu schreiben und Abfragen durchzuführen. Der Benutzer muss sowohl Lese- als auch Schreibberechtigungen für die Datenbank haben.

Aktualisierungsrichtlinie: Die Rechenflotte muss gestoppt werden, damit diese Einstellung für ein Update geändert werden kann.

PasswordSecretArn(Erforderlich,String)

Der Amazon-Ressourcenname (ARN) des AWS Secrets Manager Geheimnisses, das das UserName Klartext-Passwort enthält. Dieses Passwort wird zusammen mit UserName der Slurm Buchhaltung verwendet, um sich auf dem Datenbankserver zu authentifizieren.

Anmerkung
  • Wenn Sie mithilfe der AWS Secrets Manager Konsole ein Geheimnis erstellen, achten Sie darauf, „Andere Art von Geheimnis“ auszuwählen, wählen Sie Klartext aus und nehmen Sie nur den Passworttext in das Passwort auf.

  • Du kannst das Zeichen '#' nicht im Datenbank-Passwort verwenden, da Slurm es in slurmdbd.conf nicht unterstützt.

  • Weitere Informationen zur Verwendung zum Erstellen eines Geheimnisses findest du unter Create AWS Secrets Manager an Secret. AWS Secrets Manager

Ob der Benutzer dazu berechtigt PasswordSecretArn ist DescribeSecret, wird bestätigt. PasswordSecretArnist gültig, wenn das angegebene Geheimnis existiert. Wenn die Benutzer-IAM-Richtlinie Folgendes nicht enthältDescribeSecret, wird es PasswordSecretArn nicht validiert und es wird eine Warnmeldung angezeigt. Weitere Informationen finden Sie unter Base AWS ParallelCluster pcluster-Benutzerrichtlinie.

Bei der Aktualisierung muss PasswordSecretArn die Rechenflotte gestoppt werden. Wenn sich der geheime Wert ändert und sich der geheime ARN nicht ändert, wird der Cluster nicht automatisch mit dem neuen Datenbankkennwort aktualisiert. Um den Cluster für den neuen geheimen Wert zu aktualisieren, müssen Sie den folgenden Befehl vom Hauptknoten aus ausführen, nachdem die Rechenflotte gestoppt wurde.

$ sudo /opt/parallelcluster/scripts/slurm/update_slurm_database_password.sh
Warnung

Wir empfehlen, das Datenbankkennwort nur zu ändern, wenn die Rechenflotte gestoppt wird, um den Verlust von Buchhaltungsdaten zu vermeiden.

Aktualisierungsrichtlinie: Die Rechenflotte muss gestoppt werden, damit diese Einstellung für ein Update geändert werden kann.

DatabaseName(Fakultativ,String)

Name der Datenbank auf dem Datenbankserver (definiert durch den Parameter Uri), die für Slurm Accounting verwendet werden soll.

Der Name der Datenbank kann Kleinbuchstaben, Zahlen und Unterstriche enthalten. Der Name darf nicht länger als 64 Zeichen sein.

Dieser Parameter entspricht dem StorageLoc Parameter von https://slurm.schedmd.com/slurmdbd.conf.html#OPT_StorageLoc slurmdbd.conf.

Wenn DatabaseName er nicht angegeben ParallelCluster wird, wird der Name des Clusters verwendet, um einen Wert für zu definieren. StorageLoc

Eine Aktualisierung von DatabaseName ist zulässig, allerdings unter Berücksichtigung der folgenden Überlegungen:

  • Wenn eine Datenbank mit einem Namen auf dem Datenbankserver noch nicht DatabaseName existiert, wird slurmdbd sie erstellen. Es liegt in Ihrer Verantwortung, die neue Datenbank nach Bedarf neu zu konfigurieren (z. B. Hinzufügen der buchhalterischen Entitäten — Cluster, Konten, Benutzer, Verbände, QoSS usw.).

  • Wenn auf dem Datenbankserver DatabaseName bereits eine Datenbank mit einem Namen existiert, wird slurmdbd sie für die Buchhaltungsfunktion verwenden. Slurm

Aktualisierungsrichtlinie: Die Rechenflotte muss gestoppt werden, damit diese Einstellung für ein Update geändert werden kann.

Anmerkung

Databasewird ab Version 3.3.0 hinzugefügt.

ExternalSlurmdbd

(Optional) Definiert die Einstellungen, um Slurm Accounting mit einem externen slurmdbd-Server zu aktivieren. Weitere Informationen finden Sie unter Slurm Buchhaltung mit. AWS ParallelCluster

ExternalSlurmdbd: Host: string Port: integer

ExternalSlurmdbd-Eigenschaften

Host(Erforderlich,String)

Die Adresse zum externen slurmdbd-Server für die Buchhaltung. Slurm Der Host kann entweder eine IP-Adresse oder ein DNS-Name sein, der vom Hauptknoten aufgelöst werden kann.

Aktualisierungsrichtlinie: Diese Einstellung kann während eines Updates geändert werden.

Port(Fakultativ,Integer)

Der Port, auf den der slurmdbd-Dienst lauscht. Der Standardwert ist 6819.

Aktualisierungsrichtlinie: Diese Einstellung kann während eines Updates geändert werden.

DNS

(Optional) Definiert die EinstellungenSlurm, die für den gesamten Cluster gelten.

Dns: DisableManagedDns: boolean HostedZoneId: string UseEc2Hostnames: boolean

Dns-Eigenschaften

DisableManagedDns(Fakultativ,Boolean)

Wenntrue, werden die DNS-Einträge für den Cluster nicht erstellt und die Slurm Knotennamen können nicht aufgelöst werden.

AWS ParallelCluster Erstellt standardmäßig eine von Route 53 gehostete Zone, in der Knoten beim Start registriert werden. Der Standardwert ist false. Wenn auf gesetzt DisableManagedDns isttrue, wird die gehostete Zone nicht von erstellt AWS ParallelCluster.

Informationen zur Verwendung dieser Einstellung zum Bereitstellen von Clustern in Subnetzen ohne Internetzugang finden Sie unterAWS ParallelCluster in einem einzigen Subnetz ohne Internetzugang.

Warnung

Für den ordnungsgemäßen Betrieb des Clusters ist ein System zur Namensauflösung erforderlich. Wenn auf gesetzt DisableManagedDns isttrue, müssen Sie ein System zur Namensauflösung angeben. Um den Amazon EC2-Standard-DNS zu verwenden, setzen Sie ihn UseEc2Hostnames auftrue. Konfigurieren Sie alternativ Ihren eigenen DNS-Resolver und stellen Sie sicher, dass die Knotennamen registriert werden, wenn Instances gestartet werden. Sie können dies beispielsweise tun, indem Sie CustomActions/OnNodeStartkonfigurieren.

Aktualisierungsrichtlinie: Wenn diese Einstellung geändert wird, ist das Update nicht zulässig.

HostedZoneId(Fakultativ,String)

Definiert eine benutzerdefinierte ID der gehosteten Route 53-Zone, die für die DNS-Namensauflösung für den Cluster verwendet wird. Wenn angegeben, werden Clusterknoten in der angegebenen gehosteten Zone AWS ParallelCluster registriert und keine verwaltete gehostete Zone erstellt.

Aktualisierungsrichtlinie: Wenn diese Einstellung geändert wird, ist das Update nicht zulässig.

UseEc2Hostnames(Fakultativ,Boolean)

Wenntrue, werden Cluster-Rechenknoten mit dem standardmäßigen EC2-Hostnamen konfiguriert. Der Slurm NodeHostName wird ebenfalls mit diesen Informationen aktualisiert. Der Standardwert ist false.

Informationen zur Verwendung dieser Einstellung zum Bereitstellen von Clustern in Subnetzen ohne Internetzugang finden Sie unterAWS ParallelCluster in einem einzigen Subnetz ohne Internetzugang.

Anmerkung

Dieser Hinweis ist ab AWS ParallelCluster Version 3.3.0 nicht mehr relevant.

Für AWS ParallelCluster unterstützte Versionen vor 3.3.0:

Wenn auf gesetzt UseEc2Hostnames isttrue, wird die Slurm-Konfigurationsdatei mit den AWS ParallelCluster prolog und-Skripten epilog gesetzt:

  • prologwird ausgeführt, um Knoteninformationen zu /etc/hosts den Rechenknoten hinzuzufügen, wenn jeder Job zugewiesen wird.

  • epilogwird ausgeführt, um Inhalte zu bereinigen, die von geschrieben wurdenprolog.

Um benutzerdefinierte epilog Skripte prolog oder Skripte hinzuzufügen, fügen Sie sie den jeweiligen /opt/slurm/etc/pcluster/epilog.d/ Ordnern /opt/slurm/etc/pcluster/prolog.d/ oder hinzu.

Aktualisierungsrichtlinie: Wenn diese Einstellung geändert wird, ist das Update nicht zulässig.