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:
| 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.
-
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).
-
Klicken Sie auf die Registerkarte „Job“, um die Schaltflächen „Stopp“, „Erzwungenes Beenden“, „Beenden“ und „Abbrechen“ anzuzeigen.
| 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. |
- Geben Sie den Namen Ihrer
<option>in das Textfeld Option zur Bestätigung eingeben ein. - 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
| 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
-
Richten Sie Ihren REST-Client so ein, dass er die Schematics-Anwendungsprogrammierschnittstelle (API) ausführt.
-
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>" -
Orientieren Sie sich am Beispiel, wenn Sie den aktiven Job
force-stopwollen.Beispiel
curl -X DELETE https://schematics.cloud.ibm.com/v1/workspaces/<wks_id>/actions/{job_id}?signal=force-stop -H "Authorization: <iam_token>" -
Orientieren Sie sich am Beispiel, wenn Sie den aktiven Job
terminatewollen.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
xfür die Position Ihres Jobs in der Warteschlange für anstehende Jobs undyfü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.