

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.

# Einen SageMaker HyperPod Cluster herunterskalieren
<a name="smcluster-scale-down"></a>

Sie können die Anzahl der Instances, die auf Ihrem SageMaker HyperPod Amazon-Cluster ausgeführt werden, reduzieren. Es kann verschiedene Gründe geben, warum Sie einen Cluster herunterskalieren möchten, beispielsweise eine geringere Ressourcennutzung oder Kostenoptimierung.

Die folgende Seite beschreibt zwei Hauptansätze zum Herunterskalieren:
+ **Herunterskalieren auf Instance-Gruppenebene:** Dieser Ansatz verwendet die `UpdateCluster`-API, mit der Sie:
  + Die Anzahl der Instances für bestimmte Instance-Gruppen unabhängig voneinander herunterskalieren. SageMaker KI verarbeitet die Terminierung von Knoten so, dass die Anzahl der neuen Zielinstanzen erreicht wird, die Sie für jede Gruppe festgelegt haben. Siehe [Verkleinern Sie eine Instance-Gruppe](#smcluster-scale-down-updatecluster).
  + Löschen Sie Instance-Gruppen vollständig aus Ihrem Cluster. Siehe [Instance-Gruppen löschen](#smcluster-remove-instancegroup).
+ **Herunterskalieren auf Instance-Ebene** Dieser Ansatz nutzt die `BatchDeleteClusterNodes`-API, mit der Sie die einzelnen Knoten angeben können, die Sie beenden möchten. Siehe [Herunterskalieren auf Instance-Ebene](#smcluster-scale-down-batchdelete).

**Anmerkung**  
Beim Herunterskalieren auf Instance-Ebene mit `BatchDeleteCusterNodes` können Sie nur maximal 99 Instances gleichzeitig beenden. `UpdateCluster` unterstützt das Beenden einer beliebigen Anzahl von Instances.

## Wichtige Überlegungen
<a name="smcluster-scale-down-considerations"></a>
+ Wenn Sie einen Cluster herunterskalieren, sollten Sie sicherstellen, dass die verbleibenden Ressourcen für Ihren Workload ausreichen und dass alle erforderlichen Datenmigrationen oder Neugewichtungen ordnungsgemäß durchgeführt werden, um Störungen zu vermeiden. 
+ Stellen Sie sicher, dass Sie Ihre Daten auf Amazon S3 oder einem FSx for Lustre-Dateisystem sichern, bevor Sie die API für eine Worker-Knotengruppe aufrufen. Dies kann dazu beitragen, potenziellen Datenverlust durch das Instance-Root-Volume zu verhindern. Weitere Informationen über Sicherungen finden Sie unter [Verwenden Sie das Backup-Skript von SageMaker HyperPod](sagemaker-hyperpod-operate-slurm-cli-command.md#sagemaker-hyperpod-operate-slurm-cli-command-update-cluster-software-backup).
+ Um diese API auf einem vorhandenen Cluster aufzurufen, müssen Sie zuerst den Cluster patchen, indem Sie die API ausführen. [ UpdateClusterSoftware](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UpdateClusterSoftware.html) Weitere Informationen zum Patchen eines Clusters finden Sie unter [Aktualisieren Sie die SageMaker HyperPod Plattformsoftware eines Clusters](sagemaker-hyperpod-operate-slurm-cli-command.md#sagemaker-hyperpod-operate-slurm-cli-command-update-cluster-software).
+ Die Zählung/Abrechnung für On-Demand-Instances wird nach der Herunterskalierung automatisch gestoppt. Wenn Sie die Erfassung von reservierten Instances mit reduzierter Kapazität beenden möchten, wenden Sie sich an Ihr AWS Account-Team, um Unterstützung zu erhalten.
+ Sie können die freigegebene Kapazität der herunterskalierten Reserved Instances verwenden, um einen anderen Cluster hochzuskalieren. SageMaker HyperPod 

## Herunterskalieren auf Instance-Gruppenebene
<a name="smcluster-scale-down-or-delete"></a>

Dieser [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UpdateCluster.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UpdateCluster.html)Vorgang ermöglicht es Ihnen, Änderungen an der Konfiguration Ihres SageMaker HyperPod Clusters vorzunehmen, z. B. die Anzahl der Instanzen einer Instanzgruppe zu reduzieren oder ganze Instanzgruppen zu entfernen. Dies kann nützlich sein, wenn Sie die Ihrem Cluster zugewiesenen Ressourcen an Änderungen Ihrer Arbeitslast anpassen, die Kosten optimieren oder den Instance-Typ einer Instance-Gruppe ändern möchten.

### Verkleinern Sie eine Instance-Gruppe
<a name="smcluster-scale-down-updatecluster"></a>

Verwenden Sie diesen Ansatz, wenn Sie eine Instance-Gruppe haben, die inaktiv ist und es sicher ist, eine der Instances zu beenden, um sie herunterzuskalieren. Wenn Sie eine `UpdateCluster` Anfrage zum Herunterskalieren einreichen, werden HyperPod nach dem Zufallsprinzip Instances für die Kündigung ausgewählt und auf die angegebene Anzahl von Knoten für die Instanzgruppe herunterskaliert.

**Anmerkung**  
Wenn Sie die Anzahl der Instances in einer Instance-Gruppe auf 0 herunterskalieren, werden alle Instances innerhalb dieser Gruppe beendet. Die Instanzgruppe selbst wird jedoch weiterhin als Teil des SageMaker HyperPod Clusters existieren. Sie können die Instance-Gruppe zu einem späteren Zeitpunkt mit derselben Instance-Gruppenkonfiguration wieder hochskalieren.   
Alternativ können Sie festlegen, dass eine Instance-Gruppe dauerhaft entfernt wird. Weitere Informationen finden Sie unter [Instance-Gruppen löschen](#smcluster-remove-instancegroup).

**So skalieren Sie mit `UpdateCluster`**

1. Befolgen Sie die in [Die SageMaker HyperPod Cluster-Konfiguration wird aktualisiert](sagemaker-hyperpod-eks-operate-cli-command-update-cluster.md) beschriebenen Schritte. Wenn Sie Schritt **1.d** erreicht haben, in dem Sie das **InstanceCount**Feld angeben, geben Sie eine Zahl ein, die kleiner ist als die aktuelle Anzahl von Instanzen, um den Cluster zu verkleinern.

1. Führen Sie den AWS CLI Befehl [update-cluster](https://docs.aws.amazon.com/cli/latest/reference/sagemaker/update-cluster.html) aus, um Ihre Anfrage einzureichen.

Nachfolgend finden Sie ein Beispiel für ein `UpdateCluster`-JSON-Objekt: Stellen Sie sich den Fall vor, dass Ihre Instance-Gruppe derzeit aus 2 laufenden Instances besteht. Wenn Sie das **InstanceCount**Feld auf 1 setzen, wie im Beispiel gezeigt, wählen Sie HyperPod nach dem Zufallsprinzip eine der Instanzen aus und beenden sie.

```
{
  "ClusterName": "name-of-cluster-to-update",
  "InstanceGroups": [
    {
      "InstanceGroupName": "training-instances",
      "InstanceType": "instance-type",
      "InstanceCount": 1,
      "LifeCycleConfig": {
        "SourceS3Uri": "s3://amzn-s3-demo-bucket/training-script.py",
        "OnCreate": "s3://amzn-s3-demo-bucket/setup-script.sh"
      },
      "ExecutionRole": "arn:aws:iam::123456789012:role/SageMakerRole",
      "ThreadsPerCore": number-of-threads,
      "OnStartDeepHealthChecks": [
        "InstanceStress",
        "InstanceConnectivity"
      ]
    }
  ],
  "NodeRecovery": "Automatic"
}
```

### Instance-Gruppen löschen
<a name="smcluster-remove-instancegroup"></a>

Sie können den [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UpdateCluster.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UpdateCluster.html)Vorgang verwenden, um ganze Instanzgruppen aus Ihrem SageMaker HyperPod Cluster zu entfernen, wenn sie nicht mehr benötigt werden. Dies geht über eine einfache Verkleinerung hinaus und ermöglicht es Ihnen, bestimmte Instance-Gruppen vollständig aus der Konfiguration Ihres Clusters zu entfernen. 

**Anmerkung**  
Gehen Sie beim Entfernen einer Instance-Gruppe wie folgt vor:  
Alle Instances innerhalb der Zielgruppe werden beendet.
Die gesamte Gruppenkonfiguration wird aus dem Cluster gelöscht.
Alle Workloads, die auf dieser Instance-Gruppe ausgeführt werden, werden gestoppt.

**So löschen Sie Instance-Gruppen mit `UpdateCluster`**

1. Wenn Sie die unter [Die SageMaker HyperPod Cluster-Konfiguration wird aktualisiert](sagemaker-hyperpod-eks-operate-cli-command-update-cluster.md) beschriebenen Schritte ausführen:

   1. Legen Sie den optionalen `InstanceGroupsToDelete`-Parameter in Ihrer `UpdateCluster`-JSON-Datei fest und übergeben Sie die kommagetrennte Liste der Instance-Gruppennamen, die Sie löschen möchten.

   1.  Wenn Sie die `InstanceGroups`-Liste angeben, stellen Sie sicher, dass die Spezifikationen der Instance-Gruppen, die Sie entfernen, nicht mehr in der `InstanceGroups`-Liste aufgeführt sind.

1. Führen Sie den AWS CLI Befehl [update-cluster](https://docs.aws.amazon.com/cli/latest/reference/sagemaker/update-cluster.html) aus, um Ihre Anfrage einzureichen.

**Wichtig**  
Ihr SageMaker HyperPod Cluster muss immer mindestens eine Instanzgruppe verwalten.
Stellen Sie sicher, dass alle wichtigen Daten gesichert sind, bevor Sie sie entfernen.
Die Entfernung kann nicht rückgängig gemacht werden.

Nachfolgend finden Sie ein Beispiel für ein `UpdateCluster`-JSON-Objekt: Betrachten wir den Fall, dass ein Cluster derzeit über drei Instance-Gruppen verfügt: eine *Trainingsgruppe*, eine *Prototyp-Trainingsgruppe* und eine *Inferenz-Servicegruppe*. Sie möchten die *Prototyp-Trainingsgruppe* löschen.

```
{
  "ClusterName": "name-of-cluster-to-update",
  "InstanceGroups": [
    {
      "InstanceGroupName": "training",
      "InstanceType": "instance-type",
      "InstanceCount": ,
      "LifeCycleConfig": {
        "SourceS3Uri": "s3://amzn-s3-demo-bucket/training-script.py",
        "OnCreate": "s3://amzn-s3-demo-bucket/setup-script.sh"
      },
      "ExecutionRole": "arn:aws:iam::123456789012:role/SageMakerRole",
      "ThreadsPerCore": number-of-threads,
      "OnStartDeepHealthChecks": [
        "InstanceStress",
        "InstanceConnectivity"
      ]
    },
    {
      "InstanceGroupName": "inference-serving",
      "InstanceType": "instance-type",
      "InstanceCount": 2,
      [...]
    },
  ],
  "InstanceGroupsToDelete": [ "prototype-training" ],
  "NodeRecovery": "Automatic"
}
```

## Herunterskalieren auf Instance-Ebene
<a name="smcluster-scale-down-batchdelete"></a>

Mit `BatchDeleteClusterNodes` diesem Vorgang können Sie einen SageMaker HyperPod Cluster herunterskalieren, indem Sie die einzelnen Knoten angeben, die Sie beenden möchten. `BatchDeleteClusterNodes`bietet eine detailliertere Steuerung für die gezielte Entfernung von Knoten und die Clusteroptimierung. Beispielsweise können Sie `BatchDeleteClusterNodes` verwenden, um bestimmte Knoten für Wartungszwecke, rollierende Upgrades oder die geografische Neuverteilung von Ressourcen zu löschen.

**API-Anforderung und -Antwort**

Wenn Sie eine `BatchDeleteClusterNodes` Anfrage einreichen, SageMaker HyperPod werden Knoten nach ihrer Instanz gelöscht. IDs Die API akzeptiert eine Anfrage mit dem Clusternamen und einer Liste der IDs zu löschenden Knoten. 

Die Antwort hat zwei Abschnitte: 
+  `Failed`: Eine Liste von Fehlern des Typs `[ BatchDeleteClusterNodesError ](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_BatchDeleteClusterNodesError.html)`– einer pro Instance-ID.
+  `Successful`: Die Liste der Instanzen IDs wurde erfolgreich beendet. 

**Validierung und Fehlerbehandlung**

Die API führt verschiedene Validierungen durch, wie zum Beispiel:
+ Überprüfung des Knoten-ID-Formats (Präfix von `i-` und Instance-ID-Struktur von Amazon EC2). 
+ Überprüfung der Länge der Knotenliste mit einem Limit von 99 oder weniger Knoten IDs in einer einzigen `BatchDeleteClusterNodes` Anfrage.
+ Stellen Sie sicher, dass ein gültiger SageMaker HyperPod Cluster mit dem eingegebenen Clusternamen vorhanden ist und dass keine Operationen auf Clusterebene (Aktualisierung, Systemaktualisierung, Patchen oder Löschen) im Gange sind.
+ Behandlung von Fällen, in denen Instances nicht gefunden wurden, einen ungültigen Status haben oder verwendet werden.

**API-Antwortcodes**
+  Die API gibt einen `200`-Statuscode für erfolgreiche (z. B. alle Eingabeknoten haben die Validierung bestanden) oder teilweise erfolgreiche Anfragen (z. B. einige Eingabeknoten haben die Validierung nicht bestanden) zurück. 
+  Wenn alle diese Validierungen fehlschlagen sind (z. B. wenn alle Eingabeknoten die Validierung nicht bestehen), gibt die API eine Antwort `400` Bad Request mit den entsprechenden Fehlermeldungen und Fehlercodes zurück. 

**Beispiel**

Im Folgenden finden Sie ein Beispiel für das **Herunterskalieren eines Clusters auf Instance-Ebene** unter Verwendung der AWS CLI:

```
aws sagemaker batch-delete-cluster-nodes --cluster-name "cluster-name" --node-ids '["i-111112222233333", "i-111112222233333"]'
```