Erläuterungen zu Jobs

Ein Job ist eine Aktion, die Autonomous Linux für eine oder mehrere Instanzen ausführt, wie die Installation von Updates oder das Anhängen von Softwarequellen. Wenn ein Job ausgeführt wird, führt er die erforderliche Arbeit aus, um den Job zu erfüllen, verteilt die Arbeit an Instanzen und meldet die Ergebnisse an den Service zurück.

Sie können einen Job sofort ausführen oder für ein zukünftiges Datum und eine zukünftige Uhrzeit planen. Sie können einige Jobs wie Aktualisierungsjobs als wiederkehrendes Ereignis planen oder festlegen, dass sie automatisch wiederholt werden. Wenn die automatische Wiederholung ausgewählt ist und ein Job bei der ersten Ausführung nicht erfolgreich ausgeführt werden kann, wiederholt der Service den Job bis zu dreimal im Abstand von jeweils fünf Minuten. Geplante Jobs können getaggt werden.

Jobstatus

Geplante Jobs zeigen die folgenden Informationen an:

  • Nächste Ausführung: Datum und Uhrzeit der Ausführung des Jobs.
  • Wiederkehrend: Gibt an, ob der Job in einem wiederkehrenden Zeitplan festgelegt ist.
  • Ziele: Gibt die Anzahl der Zielinstanzen für den Job an.

Nach der Disposition ist ein Job entweder in Bearbeitung oder abgeschlossen.

  • In Bearbeitung befindliche Jobs melden die folgenden möglichen Statuswerte:
    • Akzeptiert: Der Service hat den Job akzeptiert und ist für Instanzen bereit. Wenn ein Job nicht von einem Agent übernommen wird und 24 Stunden im akzeptierten Status bleibt, markiert der Service den Job als nicht erfolgreich.
    • In Bearbeitung: Ein Agent hat die akzeptierte Arbeit aufgenommen und führt sie auf einer Instanz aus.
    • Abbrechen: Der Job wird abgebrochen.
  • Abgeschlossene Jobs melden die folgenden möglichen Statuswerte:
    • Erfolgreich: Der Job wurde ohne Fehler abgeschlossen.
    • Nicht erfolgreich: Der Job war nicht erfolgreich.
    • Abgebrochen: Der Job wurde abgebrochen

Sie können die detaillierten Ergebnisse eines Jobs anzeigen, indem Sie das Joblog und Fehlermeldungen anzeigen. Wenn ein Job eine Hierarchie aufweist und ein untergeordneter Job nicht erfolgreich ist, markiert der Service den übergeordneten Job als nicht erfolgreich.

Fehlgeschlagenen Job erneut ausführen

Wenn ein Job nicht erfolgreich verläuft, können Sie den nicht erfolgreichen Job erneut ausführen, anstatt manuell einen neuen Job zu erstellen, um die nicht erfolgreiche Aktion zu wiederholen. Sie können einen nicht erfolgreichen Job sofort erneut ausführen oder die Ausführung zu einem späteren Zeitpunkt planen. Eine erneute Ausführung erstellt einen neuen Job mit derselben Aktion (z.B. Einspielen von Updates oder Anhängen von Softwarequellen). Der ursprüngliche Job und sein Status bleiben unverändert für Auditing- und historische Zwecke.

Bei Jobs in einer Hierarchie können Sie den übergeordneten Job erneut ausführen oder untergeordnete Jobs einzeln erneut ausführen. Wenn Sie ein nicht erfolgreiches übergeordnetes Element erneut ausführen, zielt der Service nur auf die nicht erfolgreichen untergeordneten Jobs ab. Beispiel: Sie haben eine Gruppe von zehn Instanzen, und ein Aktualisierungsjob verläuft auf drei Instanzen nicht erfolgreich. Nachdem Sie das Joblog und die Fehlermeldungen geprüft und die gemeldeten Probleme behoben haben, können Sie den nicht erfolgreichen Job für die Gruppe erneut ausführen. Die erneute Ausführung zielt nur auf die drei Instanzen ab, bei denen der ursprüngliche Fehler aufgetreten ist.

Eingeschränkter geplanter Job

Jede Instanz in Autonomous Linux verfügt über einen eingeschränkten geplanten Job mit dem Aktualisierungstyp "Alle", der täglich ausgeführt wird, um die Instanz auf dem neuesten Stand zu halten. Dies wird als Job für autonome Updates bezeichnet. Sie können die Tageszeit bearbeiten, die der Job ausführt, aber die Häufigkeit nicht ändern oder den Job nicht löschen.

Jobhierarchie

Einige Jobs sind in kleinere Aufgaben unterteilt. Der Service erstellt eine Jobhierarchie, in der der anfängliche Job "übergeordnet" und die kleineren Aufgaben "untergeordnet" ist. Bei größeren Jobs oder Jobs, die sich auf mehrere Instanzen auswirken, können Sie ganz einfach bestimmen, welche Aufgaben in einem Job erfolgreich oder nicht erfolgreich waren. Sie können untergeordnete Tätigkeiten im Abschnitt Zugehörige Arbeit auf der Detailseite der übergeordneten Tätigkeit anzeigen.

Beispiel: Ein Aktualisierungsjob "Alle" erstellt untergeordnete Jobs für jeden Aktualisierungstyp: Sicherheit, Fehlerbehebung, Verbesserung, Sonstiges.

--Update All (parent)
  |--Update Security    (child)
  |--Update Bug fix     (child)
  |--Update Enhancement (child)
  |--Update Other       (child)

Jobs befinden sich im selben Compartment wie die zugehörige Ressource. Bei Jobs, die einer Gruppe zugeordnet sind, kann dies bedeuten, dass sich die übergeordneten und untergeordneten Jobs in verschiedenen Compartments befinden. Der übergeordnete Job befindet sich im Compartment, das mit der Gruppe verknüpft ist, während sich die untergeordneten Jobs im Compartment befinden, das mit jeder Instanz verknüpft ist. Best Practices finden Sie unter Überlegungen zu Compartments.

Beispiel: Wenn Sie einer Gruppe mit drei Mitgliedern eine Softwarequelle hinzufügen, wird ein einzelner übergeordneter Job mit drei untergeordneten Jobs erstellt, einer für jede Instanz.
--Set software sources for dev group (parent in dev compartment)
  |--Set software source Instance 1 (child in dev compartment)
  |--Set software source Instance 2 (child in test compartment)
  |--Set software source Instance 3 (child in preview compartment)