Aktive Jobs stoppen oder beenden

Nach dem Aufrufen eines Arbeitsbereichsjobs wie plan, apply oder destroy können Sie den aktiven Job oder die Bereitstellung von Ressourcen stoppen. Beim Stoppen oder Abbrechen eines Jobs mit langer Laufzeit ist es ratsam, zuerst die Jobprotokolle zu überprüfen, um festzustellen, ob der Job tatsächlich blockiert ist und gestoppt werden muss, oder ob er Operationen mit langer Laufzeit ausführt, deren Ausführung einige Zeit in Anspruch nimmt.

Schematics bietet eine Reihe von Optionen, mit denen Benutzer den laufenden Job je nach Dringlichkeit und Auswirkung des Stoppvorgangs „ (gracefully) stop “, „ force-stop “ oder „ terminate “ können.

Jobtypen stoppen

Die Tabelle enthält die Liste der Stoppjobtypen:

Jobstopptypen
Typen Beschreibung
stop Sendet ein Interrupt-Signal an den laufenden Terraform-Befehl. Dadurch wird dieselbe Funktion wie bei der eigenständigen Ausführung von Terraform ausgeführt, wobei ein interrupt mit cntl-C oder ähnlich wie Terraform gesendet wird. Interruptsignale können mehrmals gesendet werden, um Terraform zum Stoppen zu benachrichtigen. Terraform versucht, den aktiven Befehl (planen, anwenden, löschen) zu stoppen, nachdem alle ausgeführten Ressourcenoperationen abgeschlossen und bereinigt wurden. Schematics wartet auf den Abschluss des Befehls. Nachdem der Befehl gestoppt oder beendet wurde, werden Status- und Protokolldateien erfasst und gespeichert.
force-stop Sendet ein Abbruchsignal vom Typ 'Kill' an den Terraform-Befehl, der ausgeführt wird. Verwenden Sie dies, wenn Sie den Terraform-Befehl beenden möchten, nachdem Sie festgestellt haben, dass der Stoppbefehl (Interrupts) den Befehl nicht stoppt. Ein „ force-stop “-Befehl kann so oft wie gewünscht gesendet werden, bis der Befehl abgeschlossen ist und der Job beendet wird. Wenn Terraform auf das Abbruchsignal reagieren kann, stoppt Terraform die aktiven Befehls-und Ressourcenoperationen sofort und führt eine Bereinigung durch. Nachdem der Befehl gestoppt oder beendet wurde, werden Statusdatei und Protokolldateien erfasst und gespeichert.
terminate Wenn die vorherigen Operationen fehlschlagen, wird der Job Schematics sofort beendet. Der Job wird als STOPPED markiert und der Arbeitsbereich freigegeben. Alle zuvor gespeicherten Kopien der Protokolle und statefile werden beibehalten. Wenn ein Job beendet wird, wird er abgebrochen, ohne dass am Ende Dateien separat gesammelt werden. Diese Option kann zu Datenverlust in der Protokolldatei und den neuesten Aktualisierungen von statefile führen und sollte sorgfältig verwendet werden.

Bis der Job gestoppt wird, können Sie eine beliebige Anzahl dieser Stoppsignale senden. Im Normalfall sollten Sie nicht mehr als drei Signale senden. Falls das Terraform-Gerät nicht auf „ stop “-Anfragen (Interrupt-Signale) reagiert, können Sie jederzeit „ force-stop “ verwenden. Wenn force-stop aufgrund eines Problems im Job nicht reagiert, können Sie den Job immer noch mit terminate sperren.

Job abbrechen

Befindet sich der Auftrag im Status „ pending “, führt jede Art von Stoppanforderung dazu, dass der Auftrag abgebrochen wird. Die Schaltfläche „ Cancel “ wird angezeigt, wenn sich der Auftrag im Status „ pending “ befindet; in diesem Fall kann er einfach abgebrochen werden. Das Abbrechen bewirkt, dass der Job aus der Warteschlange für anstehende Jobs entfernt wird. Wenn die Ausführung von plan, apply oder destroy in der Zwischenzeit gestartet wird, wird dies zu einem Stoppsignal (Interrupt) an Terraform.

Aktiven Job über die Benutzerschnittstelle stoppen

Mit den folgenden Schritten können Sie einen laufenden Workspace-Job über die Konsole anhalten.

  1. Wählen Sie im Arbeitsbereichsdashboardden Arbeitsbereich für den aktiven Job aus.

    Sie können den aktiven Job während der Ausführung eines Planungs-, eines Anwendungs- oder Zerstörungsvorgangs stoppen oder abbrechen (stornieren).

  2. Klicken Sie auf die Registerkarte „Job“, um die Schaltflächen „Stopp“, „Erzwungenes Beenden“, „Beenden“ und „Abbrechen“ anzuzeigen.

Jobstoppoptionen
Schaltfläche Beschreibung
Stoppen Entfernt den Job aus der Warteschlange für anstehende Jobs, falls er den Status 'Anstehend' hat. Andernfalls wird ein Unterbrechungssignal vom Typ 'Interrupt' an den Terraform-Befehl gesendet.
Stopp erzwingen Sendet ein Abbruchsignal vom Typ 'Kill' an den Terraform-Befehl, der ausgeführt wird.
Beenden Beendet den „ Schematics “-Job, kennzeichnet den Job als „STOPPED“ und entsperrt den Arbeitsbereich. Dieser Befehl sollte sorgfältig verwendet werden, da er zu Datenverlust führen kann.
Abbrechen Die Schaltfläche „ Cancel “ wird angezeigt, wenn sich der Auftrag im Status „ pending “ befindet; in diesem Fall kann er einfach abgebrochen werden. Das Abbrechen bewirkt, dass der Job aus der Warteschlange für anstehende Jobs entfernt wird. Wenn in der Zwischenzeit die Ausführung von plan, apply oder destroy gestartet wird, wird aus 'Abbrechen' ein Unterbrechungssignal für die Terraform-Ausführung.
  1. Geben Sie den Namen Ihrer <option> in das Textfeld Option zur Bestätigung eingeben ein.
  2. Klicken Sie auf die Schaltfläche Option bestätigen.

Aktiven Job über die Befehlszeilenschnittstelle stoppen

Beendet einen laufenden IBM Cloud Schematics-Workspace-Job.

Syntax

ibmcloud schematics workspace job stop --id WORKSPACE_ID --job-id JOB_ID [--stop] [--force-stop] [--terminate] [--no-prompt]

Befehlsoptionen

Schematics-Jobstoppflags
Flag Erforderlich / Optional Beschreibung
--id oder -i Erforderlich Die ID des Arbeitsbereichs, der aktualisiert werden soll.
--job-id oder --jid Erforderlich Die Job-ID des Jobs.
--stop Optionale Entfernt den Job aus der Warteschlange für anstehende Jobs, falls er den Status 'Anstehend' hat. Andernfalls wird ein Unterbrechungssignal vom Typ 'Interrupt' an den Terraform-Befehl gesendet.
--force-stop oder --fs Optionale Sendet ein Abbruchsignal vom Typ 'Kill' an die Terraform-Ausführung in der Engine, um die Ausführung sofort zu stoppen.
--terminate oder -t Optionale Die Beendigung der Engine wird erzwungen, der Job wird als gestoppt gekennzeichnet und Ihr Arbeitsbereich wird entsperrt. Mit diesem Flag werden keine Daten gespeichert.
--no-prompt Optionale Legen Sie dieses Flag fest, um den Befehl ohne einen interaktiven Modus auszuführen.

Beispiel

ibmcloud schematics workspace job stop --id <WORKSPACE_ID> --stop --job-id <JOB_ID>
ibmcloud schematics workspace job stop --id <WORKSPACE_ID> --force-stop --job-id <JOB_ID>
ibmcloud schematics workspace job stop --id <WORKSPACE_ID> --terminate --job-id <JOB_ID>

Aktiven Job über die Anwendungsprogrammierschnittstelle (API) stoppen

Mit den folgenden CURL-Befehlen können Sie einen aktiven Job für den IBM Cloud Schematics-Arbeitsbereich stoppen.

Syntax zum Stoppen aktiver Jobs

  1. Richten Sie Ihren REST-Client so ein, dass er die Schematics-Anwendungsprogrammierschnittstelle (API) ausführt.

  2. Verwenden Sie die Syntax und das Beispiel, um den laufenden Auftrag zu beenden.

    Syntax

    curl -X DELETE https://schematics.cloud.ibm.com/v1/workspaces/<wks_id>/actions/{job_id}?signal=interrupt -H "Authorization: <iam_token>"
    

    Beispiel

    curl -X DELETE https://schematics.cloud.ibm.com/v2/jobs/{job_id}?signal=interrupt -H "Authorization: <iam_token>"
    
  3. Orientieren Sie sich am Beispiel, wenn Sie den aktiven Job force-stop wollen.

    Beispiel

    curl -X DELETE https://schematics.cloud.ibm.com/v1/workspaces/<wks_id>/actions/{job_id}?signal=force-stop -H "Authorization: <iam_token>"
    
  4. Orientieren Sie sich am Beispiel, wenn Sie den aktiven Job terminate wollen.

    Beispiel

    curl -X DELETE https://schematics.cloud.ibm.com/v1/workspaces/<wks_id>/actions/{job_id}?signal=terminate -H "Authorization: <iam_token>"
    

    Weitere Informationen zum Beenden des laufenden Jobs finden Sie unter „Beenden und Löschen des laufenden Jobs“ (API).

Schematics Jobdetails überprüfen

Verwenden Sie die Schematics Jobseite in der Konsole, um die Historie aller Schematics Aktivitäten zu ermitteln, z. B. das Herunterladen Ihrer template, plan, applyund das Anzeigen der Protokolle der Jobs. Die Jobs werden erstellt, wenn Sie Ihre Vorlagen ausführen. Sie können auch die Anzahl der Ressourcen, die sich in planbefinden, oder apply von Jobs anzeigen, die sich in der hinzugefügten, geändertenoder zerstörten Status befinden. Weitere Informationen zum Ablauf der Auftragswarteschlange finden Sie unter „ Ablauf der Auftragswarteschlange von ‚ Schematics ‘ “.

Im Jobprotokoll kann eine Nachricht wie folgt angezeigt werden:

  • Aktivität ausgelöst. Warten auf die Protokolle. Dies bedeutet, dass der Job sich im Status "Anstehend" befindet und noch verarbeitet werden muss.

  • Ihr Job wurde übergeben und befindet sich in der Warteschlange an Position x von y. Hierbei steht x für die Position Ihres Jobs in der Warteschlange für anstehende Jobs und y für die Gesamtzahl der anstehenden Jobs. Die verfügbaren Ressourcen im Schematics-Back-End werden gleichmäßig auf die anstehenden Jobs verteilt. Wenn Sie eine große Anzahl von Jobs ausführen, können Sie sehen, wie sich die Position zusammen mit der Gesamtzahl erhöht.