

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.

# Erstellen einer Compute-Knotengruppe in AWS STK.
<a name="working-with_cng_create"></a>

Dieses Thema bietet einen Überblick über die verfügbaren Optionen und beschreibt, was zu beachten ist, wenn Sie eine Rechenknotengruppe in AWS Parallel Computing Service (AWS PCS) erstellen. Wenn Sie zum ersten Mal eine Rechenknotengruppe in AWS PCS erstellen, empfehlen wir Ihnen, das Tutorial unter zu befolgen[Erste Schritte mit AWS Parallel Computing Service](getting-started.md). Das Tutorial kann Ihnen helfen, ein funktionierendes HPC-System zu erstellen, ohne auf alle verfügbaren Optionen und Systemarchitekturen eingehen zu müssen, die möglich sind.

**Anmerkung**  
Sie können benutzerdefinierte Slurm-Einstellungen für Compute-Knotengruppen konfigurieren, um die Ressourcennutzung und das Verhalten auf Knotenebene zu kontrollieren. Weitere Informationen finden Sie unter [Konfiguration benutzerdefinierter Slurm-Einstellungen in AWS STK.](slurm-custom-settings.md).

**Wichtig**  
AWS PCS benötigt derzeit einen Kernel mit IPv4-Unterstützung für die Kommunikation mit lokalen Knoten, auch wenn Sie AWS PCS in einem Netzwerk verwenden. IPv6-only Weitere Informationen finden Sie unter [Benutzerdefinierte Amazon Machine Images (AMIs) für AWS PCS](working-with_ami_custom.md).

## Voraussetzungen
<a name="working-with_cng_create_prereq"></a>
+ Ausreichende Servicekontingenten, um die gewünschte Anzahl von EC2-Instances in Ihrem zu starten. AWS-Region Sie können das verwenden [AWS-Managementkonsole](https://console.aws.amazon.com/servicequotas), um eine Erhöhung Ihrer Servicekontingenten zu überprüfen und zu beantragen.
+ Eine bestehende VPC und Subnetze, die die AWS PCS-Netzwerkanforderungen erfüllen. Wir empfehlen, dass Sie sich gründlich mit diesen Anforderungen vertraut machen, bevor Sie einen Cluster für die Produktion bereitstellen. Weitere Informationen finden Sie unter [AWS Anforderungen und Überlegungen zu PCS VPC und Subnetzen](working-with_networking_vpc-requirements.md). Sie können auch eine CloudFormation Vorlage verwenden, um eine VPC und Subnetze zu erstellen. AWS stellt ein HPC-Rezept für die Vorlage bereit. CloudFormation Weitere Informationen finden Sie unter [aws-hpc-recipes](https://github.com/aws-samples/aws-hpc-recipes/tree/main/recipes/net/hpc_large_scale) on. GitHub
+ Ein IAM-Instanzprofil mit Berechtigungen zum Aufrufen der AWS `RegisterComputeNodeGroupInstance` PCS-API-Aktion und zum Zugriff auf alle anderen AWS Ressourcen, die für Ihre Knotengruppen-Instances erforderlich sind. Weitere Informationen finden Sie unter [IAM-Instanzprofile für AWS Dienst für parallele Datenverarbeitung](security-instance-profiles.md).
+ Eine Startvorlage für Ihre Knotengruppen-Instances. Weitere Informationen finden Sie unter [Verwenden von Amazon EC2 EC2-Startvorlagen mit AWS PCS](working-with_launch-templates.md).
+  Um eine Compute-Knotengruppe zu erstellen, die Amazon **EC2-Spot-Instances** verwendet, müssen Sie die **AWSServiceRoleForEC2Spot**serviceverknüpfte Rolle in Ihrer haben. AWS-Konto Weitere Informationen finden Sie unter [Amazon EC2 Spot-Rolle für AWS STK.](spot-role.md). 

## Erstellen Sie eine Rechenknotengruppe in AWS STK.
<a name="working-with_cng_create_steps"></a>

Sie können eine Compute-Knotengruppe mit dem AWS-Managementkonsole oder dem erstellen AWS CLI.

------
#### [ AWS-Managementkonsole ]

**Um Ihre Compute-Knotengruppe mithilfe der Konsole zu erstellen**

1. Öffnen Sie die [AWS PCS-Konsole](https://console.aws.amazon.com/pcs/home#/clusters).

1. Wählen Sie den Cluster aus, in dem Sie eine Compute-Knotengruppe erstellen möchten. Navigieren Sie zu **Compute-Knotengruppen** und wählen Sie **Create** aus.

1. Geben **Sie im Abschnitt Konfiguration der Compute-Knotengruppe** einen Namen für Ihre Knotengruppe ein. Der Name darf nur alphanumerische Zeichen und Bindestriche enthalten, bei denen Groß- und Kleinschreibung beachtet wird. Er muss mit einem alphabetischen Zeichen beginnen und darf nicht länger als 25 Zeichen sein. Der Name muss innerhalb des Clusters eindeutig sein.

1. Geben Sie unter **Computerkonfiguration** die folgenden Werte ein, oder wählen Sie sie aus:

   1. **EC2-Startvorlage** — Wählen Sie eine benutzerdefinierte Startvorlage aus, die für diese Knotengruppe verwendet werden soll. Startvorlagen können verwendet werden, um Netzwerkeinstellungen wie Subnetz und Sicherheitsgruppen, Überwachungskonfiguration und Speicher auf Instanzebene anzupassen. Falls Sie noch keine Startvorlage vorbereitet haben, erfahren Sie unter, wie [Verwenden von Amazon EC2 EC2-Startvorlagen mit AWS PCS](working-with_launch-templates.md) Sie eine erstellen.
**Wichtig**  
AWS PCS erstellt eine verwaltete Startvorlage für jede Rechenknotengruppe. Diese sind benannt`pcs-{{identifier}}-do-not-delete`. Wählen Sie diese nicht aus, wenn Sie eine Compute-Knotengruppe erstellen oder aktualisieren, da die Knotengruppe sonst nicht richtig funktioniert.

   1. **Version der EC2-Startvorlage** — Sie müssen eine Version Ihrer benutzerdefinierten Startvorlage auswählen. Wenn Sie die Version später ändern, müssen Sie die Compute-Knotengruppe aktualisieren, um Änderungen in der Startvorlage zu erkennen. Weitere Informationen finden Sie unter [Aktualisierung eines AWS PCS-Compute-Knotengruppe](working-with_cng_update.md).

   1. **AMI-ID** — Wenn Ihre Startvorlage keine AMI-ID enthält oder wenn Sie den Wert in der Startvorlage überschreiben möchten, geben Sie hier eine AMI-ID ein. Beachten Sie, dass das für die Knotengruppe verwendete AMI mit AWS PCS kompatibel sein muss. Sie können auch ein Beispiel-AMI auswählen, das von bereitgestellt wird AWS. Weitere Informationen zu diesem Thema finden Sie unter[Amazon Machine Images (AMIs) für AWS STK.](working-with_ami.md).

   1. **IAM-Instanzprofil** — Wählen Sie ein Instanzprofil für die Knotengruppe aus. Ein Instanzprofil gewährt der Instanz Berechtigungen für den sicheren Zugriff auf AWS Ressourcen und Dienste. Wenn Sie noch kein Basisprofil vorbereitet haben, können Sie „**Basisprofil erstellen**“ auswählen, damit AWS PCS eines für Sie mit der Mindestrichtlinie erstellt, oder sehen Sie nach[IAM-Instanzprofile für AWS Dienst für parallele Datenverarbeitung](security-instance-profiles.md).

   1. **Subnetze** — Wählen Sie ein oder mehrere Subnetze in der VPC aus, in der Ihr AWS PCS-Cluster bereitgestellt wird. Wenn Sie mehrere Subnetze auswählen, ist die EFA-Kommunikation zwischen den Knoten nicht verfügbar, und die Kommunikation zwischen Knoten in verschiedenen Subnetzen kann zu einer erhöhten Latenz führen. Stellen Sie sicher, dass die Subnetze, die Sie hier angeben, mit denen übereinstimmen, die Sie in der EC2-Startvorlage definiert haben.

   1. **Instances** — Wählen Sie einen oder mehrere Instance-Typen aus, um Skalierungsanforderungen in der Knotengruppe zu erfüllen. Alle Instance-Typen müssen dieselbe Prozessorarchitektur (x86\_64 oder arm64) und dieselbe Anzahl von vCPUs haben. Wenn die Instanzen GPUs haben, müssen alle Instanztypen dieselbe Anzahl von GPUs haben.

   1. **Skalierungskonfiguration** — Geben Sie die Mindest- und Höchstanzahl von Instanzen für die Knotengruppe an. Stellen Sie das Minimum (min) gleich dem Maximum (max.) für die statische Kapazität ein (z. B. 5 min, 5 max.). Stellen Sie das Minimum für eine volldynamische Skalierung auf 0 ein (z. B. 0 min, 10 max). Bei Slurm 24.05 oder höher können Sie das Minimum für gemischte Kapazitäten auf einen Wert über 0 und unter den Höchstwert setzen. Dadurch wird eine Basisanzahl von Instanzen beibehalten und bei Bedarf hochskaliert (z. B. 2 Minuten, maximal 10).

1. (Optional) Geben Sie unter **Zusätzliche Einstellungen** Folgendes an:

   1. **Kaufoption** — Wählen Sie On-Demand Instances, Spot-Instances, eine unterbrechbare Kapazitätsreservierung oder einen vorhandenen Kapazitätsblock aus. Wählen Sie aus, **On-Demand**ob Sie eine On-Demand Kapazitätsreservierung (ODCR) verwenden möchten. Weitere Informationen finden Sie unter [Verwendung ODCRs mit AWS PCS](capacity-reservations-odcr.md). Wählen Sie „**Unterbrechbare Kapazitätsreservierung**“, um ein gemeinsam genutztes unterbrechbares ODCR () zu verwenden. I-ODCR Weitere Informationen finden Sie unter [Verwenden I-ODCRs mit AWS STK.](capacity-reservations-iodcr.md). Wählen Sie **Capacity Block**, um einen vorhandenen Amazon EC2 EC2-Kapazitätsblock für die ML-Reservierung zu verwenden. Weitere Informationen finden Sie unter [Verwenden von Amazon EC2 EC2-Kapazitätsblöcken für ML mit AWS PCS](capacity-blocks.md).

   1. **Zuweisungsstrategie** — Wenn Sie die Spot-Kaufoption ausgewählt haben, können Sie angeben, wie Spot-Kapazitätspools beim Starten von Instances in der Knotengruppe ausgewählt werden. Weitere Informationen finden Sie unter [Zuweisungsstrategien für Spot-Instances](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-allocation-strategy.html) im *Amazon Elastic Compute Cloud-Benutzerhandbuch*. Diese Option hat keine Auswirkung, wenn Sie die On-demand Kaufoption ausgewählt haben.

1. (Optional) Im Abschnitt „**Scheduler-Konfiguration**“ können Sie Folgendes angeben:

   1. **Scale-down Leerlaufzeit** — (Optional) Die Zeit in Sekunden, bis ein inaktiver Knoten in dieser Knotengruppe herunterskaliert wird. Wenn nicht festgelegt, wird der Wert auf Clusterebene verwendet. Für diese Einstellung ist Slurm Version 25.11 oder höher erforderlich.

1. (Optional) Im Bereich für **Slurmbenutzerdefinierte Einstellungen** können Sie Parameternamen- und Wertepaare hinzufügen, um zusätzliche Slurm-Einstellungen zu konfigurieren. Eine vollständige Liste der unterstützten Parameter finden Sie unter[Benutzerdefinierte Slurm-Einstellungen für AWS PCS-Compute-Knotengruppen](slurm-custom-settings-cng.md).

1. (Optional) Fügen Sie unter **Tags** beliebige Tags zu Ihrer Compute-Knotengruppe hinzu.

1. Wählen Sie **Compute-Knotengruppe erstellen** aus. Im Feld **Status** wird angezeigt, `Creating` während AWS PCS die Knotengruppe bereitstellt. Dies kann mehrere Minuten dauern.

**Als nächster Schritt wird empfohlen**
+ Fügen Sie Ihre Knotengruppe zu einer Warteschlange in AWS PCS hinzu, damit sie Jobs verarbeiten kann.

------
#### [ AWS CLI ]

**So erstellen Sie Ihre Compute-Knotengruppe mit AWS CLI**

Erstellen Sie Ihre Warteschlange mit dem folgenden Befehl. Nehmen Sie vor der Ausführung des Befehls die folgenden Ersetzungen vor:

1. {{region}}Ersetzen Sie es durch die ID des AWS-Region , in dem Sie Ihren Cluster erstellen möchten, z. `us-east-1` B.

1. {{my-cluster}}Ersetzen Sie durch den Namen oder `clusterId` Ihres Clusters.

1. {{my-node-group}}Ersetzen Sie es durch den Namen für Ihre Compute-Knotengruppe. Der Name darf nur alphanumerische Zeichen (wobei die Groß- und Kleinschreibung beachtet werden muss) und Bindestriche enthalten. Er muss mit einem alphabetischen Zeichen beginnen und darf nicht länger als 25 Zeichen sein. Der Name muss innerhalb des Clusters eindeutig sein.

1. {{subnet-ExampleID1}}Ersetzen Sie durch eine oder mehrere Subnetz-IDs aus Ihrer Cluster-VPC.

1. {{lt-ExampleID1}}Ersetzen Sie es durch die ID für Ihre benutzerdefinierte Startvorlage. Falls Sie noch keine vorbereitet haben, erfahren [Verwenden von Amazon EC2 EC2-Startvorlagen mit AWS PCS](working-with_launch-templates.md) Sie unter, wie Sie eine erstellen.
**Wichtig**  
AWS PCS erstellt für jede Rechenknotengruppe eine verwaltete Startvorlage. Diese sind benannt`pcs-{{identifier}}-do-not-delete`. Wählen Sie diese nicht aus, wenn Sie eine Compute-Knotengruppe erstellen oder aktualisieren, da die Knotengruppe sonst nicht richtig funktioniert.

1. {{launch-template-version}}Ersetzen Sie sie durch eine bestimmte Version der Startvorlage. AWS PCS ordnet Ihre Knotengruppe dieser spezifischen Version der Startvorlage zu.

1. {{arn:InstanceProfile}}Ersetzen Sie es durch den ARN Ihres IAM-Instanzprofils. Falls Sie noch keinen vorbereitet haben, finden Sie weitere [Verwenden von Amazon EC2 EC2-Startvorlagen mit AWS PCS](working-with_launch-templates.md) Informationen unter. 

1. Ersetzen Sie {{min-instances}} und durch {{max-instances}} ganzzahlige Werte. Stellen Sie das Minimum (min) gleich dem Maximum (max) für die statische Kapazität ein (z. B. 5 min, 5 max.). Stellen Sie das Minimum für eine volldynamische Skalierung auf 0 ein (z. B. 0 min, 10 max). Bei Slurm 24.05 oder höher können Sie das Minimum für gemischte Kapazitäten auf einen Wert über 0 und unter den Höchstwert setzen. Dadurch wird eine Basisanzahl von Instanzen beibehalten und bei Bedarf hochskaliert (z. B. 2 Minuten, maximal 10).

1. Durch einen {{t3.large}} anderen Instanztyp ersetzen. Sie können weitere Instanztypen hinzufügen, indem Sie eine Liste mit `instanceType` Einstellungen angeben. Beispiel, {{--instance-configs instanceType=c6i.16xlarge instanceType=c6a.16xlarge}}. Alle Instance-Typen müssen dieselbe Prozessorarchitektur (x86\_64 oder arm64) und dieselbe Anzahl von vCPUs haben. Wenn die Instanzen GPUs haben, müssen alle Instanztypen dieselbe Anzahl von GPUs haben.

```
aws pcs create-compute-node-group --region {{region}} \
    --cluster-identifier {{my-cluster}} \
    --compute-node-group-name {{my-node-group}} \
    --subnet-ids {{subnet-ExampleID1}} \
    --custom-launch-template id={{lt-ExampleID1}},version='{{launch-template-version}}' \
    --iam-instance-profile-arn={{arn:InstanceProfile}} \
    --scaling-config minInstanceCount={{min-instances}},maxInstanceCount={{max-instance}} \
    --instance-configs instanceType={{t3.large}}
```

**Example — Erstellen einer Compute-Knotengruppe mit benutzerdefinierten Slurm-Einstellungen**  

```
aws pcs create-compute-node-group --region {{region}} \
    --cluster-identifier {{my-cluster}} \
    --compute-node-group-name {{my-node-group}} \
    --subnet-ids {{subnet-ExampleID1}} \
    --custom-launch-template id={{lt-ExampleID1}},version='{{launch-template-version}}' \
    --iam-instance-profile-arn={{arn:InstanceProfile}} \
    --scaling-config minInstanceCount={{min-instances}},maxInstanceCount={{max-instance}} \
    --instance-configs instanceType={{t3.large}} \
    --slurm-configuration \
    'slurmCustomSettings=[{parameterName=Features,parameterValue="{{gpu,nvme}}"}]'
```
Weitere Informationen finden Sie unter [Benutzerdefinierte Slurm-Einstellungen für AWS PCS-Compute-Knotengruppen](slurm-custom-settings-cng.md).

**Example — Erstellung einer Rechenknotengruppe mit einer nach unten skalierten Leerlaufzeit**  

```
aws pcs create-compute-node-group --region {{region}} \
    --cluster-identifier {{my-cluster}} \
    --compute-node-group-name {{my-gpu-nodes}} \
    --subnet-ids {{subnet-ExampleID1}} \
    --custom-launch-template id={{lt-ExampleID1}},version='{{1}}' \
    --iam-instance-profile-arn={{arn:InstanceProfile}} \
    --scaling-config minInstanceCount={{0}},maxInstanceCount={{10}} \
    --instance-configs instanceType={{p4d.24xlarge}} \
    --slurm-configuration scaleDownIdleTimeInSeconds={{300}}
```
Die `scaleDownIdleTimeInSeconds` Einstellung auf der Ebene der Compute-Knotengruppe hat Vorrang vor dem Wert auf Clusterebene für Knoten in dieser Gruppe. Für diese Einstellung ist Slurm Version 25.11 oder höher erforderlich.

Es gibt mehrere optionale Konfigurationseinstellungen, die Sie dem `create-compute-node-group` Befehl hinzufügen können.
+ Sie können angeben, `--amiId` ob Ihre benutzerdefinierte Startvorlage keinen Verweis auf ein AMI enthält oder ob Sie diesen Wert überschreiben möchten. Beachten Sie, dass das für die Knotengruppe verwendete AMI mit AWS PCS kompatibel sein muss. Sie können auch ein Beispiel-AMI auswählen, das von bereitgestellt wird AWS. Weitere Informationen zu diesem Thema finden Sie unter[Amazon Machine Images (AMIs) für AWS STK.](working-with_ami.md).
+ Dient `--purchase-option` zur Auswahl der Art und Weise, wie AWS PCS EC2-Instances für Ihre Compute-Knotengruppe kauft. On-Demand ist die Standardeinstellung. 
  +  `ONDEMAND`— Verwenden Sie On-Demand Instanzen. Wählen Sie diese Option auch, wenn Sie eine On-Demand Kapazitätsreservierung (ODCR) verwenden möchten. Weitere Informationen finden Sie unter [Verwendung ODCRs mit AWS PCS](capacity-reservations-odcr.md). 
  +  `SPOT`— Verwenden Sie Spot-Instances. Wenn Sie Spot-Instances wählen, können Sie `--allocation-strategy` damit auch definieren, wie AWS PCS Spot-Kapazitätspools auswählt, wenn Instances in der Knotengruppe gestartet werden. Weitere Informationen finden Sie unter [Zuweisungsstrategien für Spot-Instances](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-allocation-strategy.html) im *Amazon Elastic Compute Cloud-Benutzerhandbuch*.
  +  `CAPACITY_BLOCK`— Verwenden Sie einen vorhandenen Amazon EC2 EC2-Kapazitätsblock für die ML-Reservierung. Weitere Informationen finden Sie unter [Verwenden von Amazon EC2 EC2-Kapazitätsblöcken für ML mit AWS PCS](capacity-blocks.md). 
  +  `INTERRUPTIBLE_CAPACITY_RESERVATION`— Verwenden Sie ein gemeinsam genutztes unterbrechbares ODCR (). I-ODCR Weitere Informationen finden Sie unter [Verwenden I-ODCRs mit AWS STK.](capacity-reservations-iodcr.md). 
+ Es ist möglich, Slurm Konfigurationsoptionen für die Knoten in der Knotengruppe mithilfe von bereitzustellen. `--slurm-configuration` Sie können die Gewichtung (Scheduling-Priorität) und den tatsächlichen Arbeitsspeicher festlegen. Knoten mit niedrigerer Gewichtung haben eine höhere Priorität, und die Einheiten sind willkürlich. Weitere Informationen finden Sie in der Slurm Dokumentation unter [Gewicht](https://slurm.schedmd.com/slurm.conf.html#OPT_Weight). Realer Speicher legt die Größe (in GB) des realen Speichers auf Knoten in der Knotengruppe fest. Er soll in Verbindung mit der `CR_CPU_Memory` Option für den Cluster in AWS PCS in Ihrer Slurm Konfiguration verwendet werden. Weitere Informationen finden Sie unter [RealMemory](https://slurm.schedmd.com/slurm.conf.html#OPT_RealMemory) in der Slurm-Dokumentation.

**Wichtig**  
Die Erstellung der Compute-Knotengruppe kann mehrere Minuten dauern. 

Sie können den Status Ihrer Knotengruppe mit dem folgenden Befehl abfragen. Sie können die Knotengruppe erst dann einer Warteschlange zuordnen, wenn ihr Status erreicht ist`ACTIVE`.

```
aws pcs get-compute-node-group --region {{region}} \
    --cluster-identifier {{my-cluster}} \
    --compute-node-group-identifier {{my-node-group}}
```

------