Abbrechen von Schritten - Amazon EMR

Abbrechen von Schritten

Sie können ausstehende und ausgeführte Schritte mithilfe der AWS Management Console, der AWS CLI oder der Amazon-EMR-API abbrechen.

Anmerkung

Wir haben die Amazon-EMR-Konsole neu gestaltet, um sie benutzerfreundlicher zu gestalten. Unter Was ist neu an der Konsole? erfahren Sie mehr über die Unterschiede zwischen der alten und der neuen Konsolenerfahrung.

New console
So brechen Sie Schritte mit der neuen Konsole ab
  1. Melden Sie sich bei AWS Management Console an und öffnen Sie die Amazon-EMR-Konsole unter https://console.aws.amazon.com/emr.

  2. Wählen Sie im linken Navigationsbereich unter EMR in EC2 die Option Cluster und dann den Cluster aus, den Sie aktualisieren möchten.

  3. Klicken Sie auf der Seite Cluster-Details auf der Registerkarte Schritte auf das Kontrollkästchen neben dem Schritt, den Sie abbrechen möchten. Wählen Sie das Dropdownmenü Aktionen und dann Schritte abbrechen aus.

  4. Wählen Sie im Dialogfeld Schritt abbrechen entweder den Schritt abbrechen und warten, bis er beendet ist, oder ob Sie den Schritt abbrechen und das Beenden erzwingen möchten. Wählen Sie dann Confirm (Bestätigen) aus.

  5. Der Status der Schritte in der Tabelle Schritte ändert sich in CANCELLED.

Old console
So brechen Sie Schritte mit der alten Konsole ab
  1. Navigieren Sie zur neuen Amazon-EMR-Konsole und wählen Sie in der Seitennavigation die Option Zur alten Konsole wechseln aus. Weitere Informationen darüber, was Sie erwartet, wenn Sie zur alten Konsole wechseln, finden Sie unter Verwenden der alten Konsole.

  2. Erweitern Sie auf der Seite Cluster Details (Cluster-Details) den Abschnitt Steps (Schritte).

  3. Wählen Sie für jeden Schritt, den Sie abbrechen möchten, den Schritt aus der Liste Steps (Schritte)aus. Wählen Sie dann Cancel step (Schritt abbrechen) aus.

  4. Behalten Sie im Dialogfeld Cancel step (Schritt abbrechen) die Standardoption Cancel the step and wait for it to exit (Schritt abbrechen und warten, bis er beendet wird). Wenn Sie den Schritt sofort beenden möchten, ohne darauf zu warten, dass Prozesse abgeschlossen sind, wählen Sie Cancel the step and force it to exit (Schritt abbrechen und Beenden erzwingen) aus.

  5. Wählen Sie Cancel step (Schritt abbrechen) aus.

CLI
So brechen Sie mit der AWS CLI ab
  • Verwenden Sie den Befehl aws emr cancel-steps unter Angabe des Clusters und der abzubrechenden Schritte. Das folgende Beispiel zeigt einen AWS CLI-Befehl für den Abbruch von zwei Schritten.

    aws emr cancel-steps --cluster-id j-2QUAXXXXXXXXX \ --step-ids s-3M8DXXXXXXXXX s-3M8DXXXXXXXXX \ --step-cancellation-option SEND_INTERRUPT

Mit Amazon-EMR-Version 5.28.0 können Sie beim Abbrechen von Schritten eine der beiden folgenden Abbruchoptionen für StepCancellationOption-Parameter auswählen.

  • SEND_INTERRUPT – Dies ist die Standardoption. Wenn eine Anfrage zum Abbruch eines Schritts eingeht, sendet EMR ein SIGTERM-Signal an den Schritt. Fügen Sie Ihrer Schrittlogik einen SIGTERM-Signal-Handler hinzu, um dieses Signal abzufangen und die Prozesse der untergeordneten Schritte zu beenden oder zu warten, bis sie abgeschlossen sind.

  • TERMINATE_PROCESS – Wenn diese Option ausgewählt ist, sendet EMR ein SIGKILL-Signal an den Schritt und alle seine untergeordneten Prozesse, wodurch sie sofort beendet werden.

Was es bei der Stornierung von Schritten zu berücksichtigen gibt
  • Wenn Sie einen laufenden oder ausstehenden Schritt abbrechen, wird dieser Schritt aus der aktiven Schrittanzahl entfernt.

  • Wenn Sie einen laufenden Schritt abbrechen, kann ein ausstehender Schritt nicht ausgeführt werden, vorausgesetzt, dass keine Änderung an stepConcurrencyLevel vorgenommen wurde.

  • Durch das Abbrechen eines laufenden Schritts wird der Schritt ActionOnFailure nicht ausgelöst.

  • SEND_INTERRUPT StepCancellationOption sendet für EMR 5.32.0 und höher ein SIGTERM-Signal an den untergeordneten Schrittprozess. Sie sollten auf dieses Signal achten und eine Säuberung durchführen und das System ordnungsgemäß herunterfahren. TERMINATE_PROCESS StepCancellationOption sendet ein SIGKILL-Signal an den untergeordneten Schrittprozess und alle seine untergeordneten Prozesse. Asynchrone Prozesse sind jedoch nicht betroffen.