

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.

# Arbeiten mit Spot-Instances
<a name="spot"></a>

AWS ParallelCluster verwendet Spot-Instances, wenn in der Cluster-Konfiguration auf [`cluster_type`](cluster-definition.md#cluster-type) = Spot gesetzt wurde. Spot-Instances sind kostengünstiger als On-Demand-Instances, sie können jedoch unterbrochen werden. Die Auswirkung der Unterbrechung hängt vom jeweils verwendeten Scheduler ab. Es kann hilfreich sein, *Spot-Instance-Unterbrechungsbenachrichtigungen* zu nutzen, die eine zweiminütige Warnung anzeigen, bevor Amazon EC2 Ihre Spot-Instance stoppen oder beenden muss. Weitere Informationen finden Sie unter [Spot-Instance-Unterbrechungen](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-interruptions.html) im *Amazon EC2 EC2-Benutzerhandbuch*. In den folgenden Abschnitten werden drei Szenarien beschrieben, in denen Spot-Instances unterbrochen werden können.

**Anmerkung**  
Die Verwendung von Spot-Instances setzt voraus, dass die mit dem `AWSServiceRoleForEC2Spot` Service verknüpfte Rolle in Ihrem Konto vorhanden ist. Führen Sie den folgenden Befehl aus AWS CLI, um diese Rolle in Ihrem Konto mithilfe von zu erstellen:  

```
aws iam create-service-linked-role --aws-service-name spot.amazonaws.com
```
Weitere Informationen finden Sie unter [Service-verknüpfte Rolle für Spot-Instance-Anfragen](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-requests.html#service-linked-roles-spot-instance-requests) im *Amazon EC2 EC2-Benutzerhandbuch*.

## Szenario 1: Spot-Instance ohne ausgeführte Aufgaben wird unterbrochen
<a name="no-jobs"></a>

Wenn diese Unterbrechung auftritt, wird AWS ParallelCluster versucht, die Instance zu ersetzen, falls die Scheduler-Warteschlange ausstehende Jobs enthält, für die zusätzliche Instances erforderlich sind, oder wenn die Anzahl der aktiven Instances unter der Einstellung liegt. [`initial_queue_size`](cluster-definition.md#configuration-initial-queue-size) Wenn keine neuen Instanzen bereitgestellt werden AWS ParallelCluster können, wird eine Anfrage für neue Instanzen regelmäßig wiederholt.

## Szenario 2: Spot-Instance mit Einzelknotenaufgaben wird unterbrochen
<a name="single-node"></a>

Das Verhalten dieser Unterbrechung hängt vom verwendeten Scheduler ab.

Slurm  
Der Job schlägt mit dem Statuscode von `NODE_FAIL` fehl und der Job wird in eine Warteschlange gestellt (sofern dies nicht `--no-requeue` beim Absenden des Jobs angegeben wurde). Wenn es sich bei dem Knoten um einen statischen Knoten handelt, wird er ersetzt. Wenn der Knoten ein dynamischer Knoten ist, wird der Knoten beendet und zurückgesetzt. Weitere Informationen über `sbatch` und einschließlich des `--no-requeue` Parameters finden Sie [https://slurm.schedmd.com/sbatch.html](https://slurm.schedmd.com/sbatch.html)in der *Slurm-Dokumentation*.  
Dieses Verhalten hat sich in AWS ParallelCluster Version 2.9.0 geändert. Frühere Versionen haben den Job mit dem Statuscode von beendet `NODE_FAIL` und der Knoten wurde aus der Scheduler-Warteschlange entfernt.

SGE  
Dies gilt nur für AWS ParallelCluster Versionen bis einschließlich Version 2.11.4. Ab Version 2.11.5 wird die Verwendung von oder AWS ParallelCluster -Schedulern nicht unterstützt. SGE Torque
Die Aufgabe wird beendet. Wenn für die Aufgabe die Markierung für erneute Ausführung aktiviert ist, (entweder mit `qsub -r yes` oder `qalter -r yes`) oder bei der Warteschlange die `rerun`-Konfiguration auf „`TRUE`“ festgelegt ist, wird die Aufgabe neu geplant. Die Datenverarbeitungs-Instance wird aus der Scheduler-Warteschlange entfernt. Dieses Verhalten stammt von den folgenden SGE-Konfigurationsparametern:  
+ `reschedule_unknown 00:00:30`
+ `ENABLE_FORCED_QDEL_IF_UNKNOWN`
+ `ENABLE_RESCHEDULE_KILL=1`

Torque  
Dies gilt nur für AWS ParallelCluster Versionen bis einschließlich Version 2.11.4. Ab Version 2.11.5 wird die Verwendung von oder AWS ParallelCluster -Schedulern nicht unterstützt. SGE Torque
Die Aufgabe wird aus dem System und der Knoten aus dem Scheduler entfernt. Der Job wird nicht erneut ausgeführt. Wenn mehrere Jobs auf der Instanz ausgeführt werden, während sie unterbrochen wird, kann es bei Torque beim Entfernen des Knotens zu einem Timeout kommen. In der [`sqswatcher`](processes.md#sqswatcher) Protokolldatei wird möglicherweise ein Fehler angezeigt. Dies hat keinen Einfluss auf die Skalierungslogik, und bei nachfolgenden Wiederholungsversuchen wird eine ordnungsgemäße Bereinigung durchgeführt.

## Szenario 3: Spot-Instance, auf der Aufgaben mit mehreren Knoten ausgeführt werden, wird unterbrochen
<a name="multi-node"></a>

Das Verhalten dieser Unterbrechung hängt vom verwendeten Scheduler ab.

Slurm  
Der Job schlägt mit dem Statuscode von fehl`NODE_FAIL`, und der Job wird in die Warteschlange gestellt (es sei denn, dies `--no-requeue` wurde bei der Übermittlung des Jobs angegeben). Wenn es sich bei dem Knoten um einen statischen Knoten handelt, wird er ersetzt. Wenn der Knoten ein dynamischer Knoten ist, wird der Knoten beendet und zurückgesetzt. Andere Knoten, auf denen die beendeten Jobs ausgeführt wurden, wurden möglicherweise anderen ausstehenden Jobs zugewiesen oder nach Ablauf der konfigurierten [`scaledown_idletime`](scaling-section.md#scaledown-idletime) Zeit herunterskaliert.  
Dieses Verhalten hat sich in AWS ParallelCluster Version 2.9.0 geändert. Frühere Versionen haben den Job mit dem Statuscode von beendet `NODE_FAIL` und der Knoten wurde aus der Scheduler-Warteschlange entfernt. Andere Knoten, auf denen die beendeten Jobs ausgeführt wurden, wurden möglicherweise nach Ablauf der konfigurierten [`scaledown_idletime`](scaling-section.md#scaledown-idletime) Zeit herunterskaliert.

SGE  
Dies gilt nur für AWS ParallelCluster Versionen bis einschließlich Version 2.11.4. Ab Version 2.11.5 wird die Verwendung von oder AWS ParallelCluster -Schedulern nicht unterstützt. SGE Torque
Der Job wurde nicht beendet und läuft weiterhin auf den verbleibenden Knoten. Der Datenverarbeitungsknoten wird aus der Scheduler-Warteschlange entfernt, aber in der Hosts-Liste als verwaister und nicht verfügbarer Knoten angezeigt.  
Der Benutzer muss die Aufgabe löschen, wenn dies geschieht (`qdel <jobid>`). Der Knoten wird weiterhin in der Hostliste (`qhost`) angezeigt, obwohl dies keine Auswirkungen hat AWS ParallelCluster. Um den Host aus der Liste zu entfernen, führen Sie nach dem Ersetzen der Instanz den folgenden Befehl aus.  

```
sudo -- bash -c 'source /etc/profile.d/sge.sh; qconf -dattr hostgroup hostlist <hostname> @allhosts; qconf -de <hostname>'
```

Torque  
Dies gilt nur für AWS ParallelCluster Versionen bis einschließlich Version 2.11.4. Ab Version 2.11.5 wird die Verwendung von oder AWS ParallelCluster -Schedulern nicht unterstützt. SGE Torque
Die Aufgabe wird aus dem System und der Knoten aus dem Scheduler entfernt. Der Job wird nicht erneut ausgeführt. Wenn mehrere Jobs auf der Instanz ausgeführt werden, während sie unterbrochen wird, kann es bei Torque beim Entfernen des Knotens zu einem Timeout kommen. In der [`sqswatcher`](processes.md#sqswatcher) Protokolldatei wird möglicherweise ein Fehler angezeigt. Dies hat keinen Einfluss auf die Skalierungslogik, und bei nachfolgenden Wiederholungsversuchen wird eine ordnungsgemäße Bereinigung durchgeführt.

Weitere Informationen zu Spot-Instances finden Sie unter [Spot-Instances](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-spot-instances.html) im *Amazon EC2 EC2-Benutzerhandbuch*.