Referenz: Cron- und Rate-Ausdrücke für System Manager - AWS Systems Manager

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.

Referenz: Cron- und Rate-Ausdrücke für System Manager

Wenn Sie eine State Manager-Zuordnung oder ein Wartungsfenster in AWS Systems Manager erstellen, geben Sie einen Zeitplan für die Ausführung des Fensters oder der Zuordnung an. Sie können einen Zeitplan als zeitbasierten Eintrag, einen sogenannten Cron-Ausdruck, oder als häufigkeitsbasierten Eintrag, einen sogenannten Rate-Ausdruck angeben.

Allgemeine Informationen zu Cron- und Rate-Ausdrücken

Die folgenden Informationen gelten für Cron- und Rate-Ausdrücke sowohl für Wartungsfenster als auch für Zuordnungen.

Zeitpläne für Einzelläufe

Wenn Sie ein eine Zuordnung oder ein Wartungsfenster erstellen, können Sie einen Zeitstempel in koordinierter Weltzeit (Coordinated Universal Time, UTC) angeben, damit es einmalig zum angegebenen Zeitpunkt ausgeführt wird. Zum Beispiel: "at(2020-07-07T15:55:00)"

Offsets planen

Assoziationen und Wartungsfenster unterstützen nur für Cron-Ausdrücke zudem auch Zeitplanversätze. Ein Zeitplanversatz ist die Anzahl der Tage, die nach dem über einen CRON-Ausdruck angegebenen Datum und der angegebenen Uhrzeit gewartet werden soll, bevor die Assoziation oder das Wartungsfenster ausgeführt wird.

Maintenance window example

Im folgenden Beispiel wird mit dem CRON-Ausdruck die Ausführung eines Wartungsfensters um 23.30 Uhr am dritten Dienstag jedes Monats geplant. Wenn der Zeitplanversatz jedoch 2 lautet, wird das Wartungsfenster erst zwei Tage später um 23:30 Uhr ausgeführt.

aws ssm create-maintenance-window \ --name "My-Cron-Offset-Maintenance-Window" \ --allow-unassociated-targets \ --schedule "cron(30 23 ? * TUE#3 *)" \ --duration 4 \ --cutoff 1 \ --schedule-offset 2
Association example

Im folgenden Befehl plant der Cron-Ausdruck, dass eine Zuordnung am zweiten Donnerstag eines jeden Monats ausgeführt wird. Da der Zeitplanversatz jedoch 3 ist, wird die Zuordnung erst am nächsten Sonntag, also drei Tage später, ausgeführt.

aws ssm create-association \ --name "AWS-UpdateSSMAgent" \ --targets "Key=instanceids,Values=i-0cb2b964d3e14fd9f" \ --schedule-expression "cron(0 0 ? * THU#2 *)" \ --schedule-offset 3 --apply-only-at-cron-interval
Anmerkung

Um einen Offset mit einer Zuordnung zu verwenden, müssen Sie die --apply-only-at-cron-interval-Option angeben. Diese Option sagt dem System eine Assoziation nicht unmittelbar nach der Erstellung auszuführen.

Wenn Sie eine Zuordnung oder ein Wartungsfenster mit einem Cron-Ausdruck erstellen, das sich auf einen im aktuellen Zeitraum bereits vergangenen Tag bezieht, jedoch ein Zeitplanversatzdatum hinzufügen, das in der Zukunft liegt, wird die Assoziation oder das Wartungsfenster in dem betreffenden Zeitraum nicht ausgeführt. Es wird im folgenden Zeitraum in Kraft treten. Wenn Sie beispielsweise einen Cron-Ausdruck angeben, der gestern ein Wartungsfenster ausgeführt hätte, und einen Zeitplanversatz von zwei Tagen hinzufügen, wird das Wartungsfenster morgen nicht ausgeführt.

Pflichtfelder

Cron-Ausdrücke für Wartungsfenster haben sechs erforderliche Felder. Cron-Ausdrücke für Zuordnungen haben fünf. (State Manager unterstützt derzeit nicht die Angabe von Monaten in Cron-Ausdrücken für Zuordnungen.) Ein zusätzliches Feld, das Feld Seconds (das erste in einem Cron-Ausdruck) ist optional. Die Felder werden durch Leerzeichen voneinander getrennt.

Beispiele für Cron-Ausdrücke
Minuten Stunden Tag des Monats Monat Wochentag Jahr Bedeutung
0 10 * * ? * Ausführung jeden Tag um 10:00 Uhr (UTC)
15 12 * * ? * Ausführung jeden Tag um 12:15 Uhr (UTC)
0 18 ? * MO-FR * Ausführung jeden Montag bis Freitag um 18:00 Uhr (UTC)
0 8 1 * ? * Ausführung jeden 1. Tag des Monats um 08:00 Uhr (UTC)
Unterstützte Werte

Die folgende Tabelle zeigt die Werte, die für erforderliche Cron-Einträge unterstützt werden.

Unterstützte Werte für Cron-Ausdrücke
Feld Werte Platzhalter
Minuten 0-59 , - * /
Stunden 0-23 , - * /
Day-of-month 1-31 , - * ? / L W
Monat (nur Wartungsfenster) 112 oder JANDEC , - * /
Day-of-week 17 oder SUNSAT , - * ? / L #
Jahr 1970-2199 , - * /
Anmerkung

Sie können keinen Wert in der day-of-month und in den day-of-week Feldern im selben Cron-Ausdruck angeben. Wenn Sie einen Wert in einem der Felder angeben, verwenden Sie ? (Fragezeichen) im anderen Feld.

Platzhalter für Cron-Ausdrücke

Die folgende Tabelle zeigt die Platzhalterwerte, die von Cron-Ausdrücken unterstützt werden.

Anmerkung

Cron-Ausdrücke, die zu schnelleren Häufigkeiten als fünf (5) führen, werden nicht unterstützt. Die Unterstützung für die Angabe von day-of-week sowohl einem - als auch einem day-of-month -Wert ist nicht abgeschlossen. Verwenden Sie das Fragezeichen (?) in einem dieser Felder.

Unterstützte Platzhalter für Cron-Ausdrücke
Platzhalter Beschreibung
, Das Platzhalterzeichen , (Komma) umfasst zusätzliche Werte. Im Feld "Monat" steht JAN, FEB, MAR für Januar, Februar und März.
- Das Platzhalterzeichen - (Bindestrich) gibt einen Bereich an. Im Feld "Tag" steht 1-15 für die Tage 1 bis 15 des angegebenen Monats.
* Das Platzhalterzeichen * (Sternchen) steht für alle Werte im Feld. Im Feld für die Stundenangaben steht * für alle Stunden.
/ Das Platzhalterzeichen / (Schrägstrich) steht für schrittweise Steigerungen. Im Feld „Minuten“ könnten Sie 1/10 eingeben, um jede 10. Minute beginnend mit der ersten Minute der Stunde anzugeben. 1/10 gibt daher die erste, 11., 21., 31. usw. Minute an.
? Das Platzhalterzeichen ? (Fragezeichen) steht für einen bestimmten Wert. In das ay-of-month Feld D könnten Sie 7 eingeben und wenn es Ihnen egal war, welcher Wochentag der 7. war, könnten Sie ? in das ay-of-week Feld D eingeben.
L Der L Platzhalter in den ay-of-week Feldern D ay-of-month oder D gibt den letzten Tag des Monats oder der Woche an.
W Der W Platzhalter im ay-of-month Feld D gibt einen Wochentag an. Im ay-of-month Feld D gibt 3W den Tag an, der dem dritten Wochentag des Monats am nächsten ist.
# Der # Platzhalter im day-of-week Feld gefolgt von einer Zahl zwischen eins und fünf gibt einen bestimmten Tag des Monats an. 5#3 gibt den 3. Donnerstag des Monats an.
Rate-Ausdrücke

Rate-Ausdrücke bestehen aus den folgenden zwei Pflichtfeldern. Felder werden durch Leerzeichen voneinander getrennt.

Pflichtfelder für Rate-Ausdrücke
Feld Werte

Wert

positive Zahl, z. B. 1 oder 15

Einheit

minute

minutes

hour

hours

day

days

Wenn der Wert gleich 1 ist, muss die Einheit im Singular stehen. Wenn die Werte größer als 1 sind, muss die Einheit im Plural stehen. Beispielsweise sind rate(1 hours) und rate(5 hour) ungültige, rate(1 hour) und rate(5 hours) jedoch gültige Werte.

Cron- und Rate-Ausdrücke für Zuordnungen

Dieser Abschnitt enthält Beispiele für Cron- und Rate-Ausdrücke für State Manager-Zuordnungen. Bevor Sie einen dieser Ausdrücke erstellen, beachten Sie die folgenden Informationen:

  • Zuordnungen unterstützen die folgenden Cron-Ausdrücke: Alle 1/2, 1, 2, 4, 8 oder 12 Stunden; jeden Tag, jede Woche oder jeden angegebenen Tag und jede bestimmte Uhrzeit der Woche; ein bestimmter Tag in einer bestimmten Woche des Monats oder der letzte x-Tag des Monats zu einer bestimmten Zeit.

  • Zuordnungen unterstützen die folgenden Rate-Ausdrücke: Intervalle von mindestens 30 Minuten und weniger als 31 Tagen.

  • Wenn Sie das optionale Feld Seconds angeben, kann dessen Wert 0 (null) sein. Zum Beispiel: cron(0 */30 * * * ? *)

  • Für eine Zuordnung, die Metadaten für Inventory sammelt, eine Funktion von AWS Systems Manager, wird empfohlen, einen Rate-Ausdruck zu verwenden.

  • State Manager unterstützt derzeit nicht die Angabe von Monaten in Cron-Ausdrücken für Assoziationen.

Assoziationen unterstützen Cron-Ausdrücke, die einen Wochentag und das Zahlenzeichen (#) enthalten, um den x-ten Tag eines Monats für die Ausführung einer Assoziation anzugeben. Hier ist ein Beispiel, das am dritten Dienstag jeden Monats um 23:30 Uhr UTC einen Cron-Zeitplan ausführt:

cron(30 23 ? * TUE#3 *)

Hier ist ein Beispiel, das am zweiten Donnerstag jeden Monats um Mitternacht UTC läuft:

cron(0 0 ? * THU#2 *)

Assoziationen unterstützen auch das (L)-Zeichen, um dens letzten XTag des Monats anzugeben. Hier ist ein Beispiel, das am letzten Dienstag jeden Monats um Mitternacht UTC einen Cron-Zeitplan ausführt:

cron(0 0 ? * 3L *)

Um weiter zu steuern, wann eine Assoziation ausgeführt wird, z. B. wenn Sie zwei Tage nach dem Patch-Dienstag eine Assoziation ausführen möchten, können Sie einen Offset angeben. Ein Offset definiert, wie viele Tage nach dem geplanten Tag gewartet werden müssen, um eine Assoziation auszuführen. Wenn Sie beispielsweise einen Cron-Zeitplan mit cron(0 0 ? * THU#2 *) angegeben haben, können Sie die Nummer 3 im Schedule offset (Planversatz)-Feld angeben, um die Assoziation jeden Sonntag nach dem zweiten Donnerstag im Monat auszuführen.

Um Offsets zu verwenden, müssen Sie entweder Apply association only at the next specified Cron interval (Übernehmen der Assoziation erst für das nächste angegebene Cron-Intervall)-Option in der Konsole auswählen oder Sie müssen den Nutze---apply-only-at-cron-interval-Parameter über die Befehlszeile angeben. Diese Option sagt State Manager eine Assoziation nicht unmittelbar nach der Erstellung auszuführen.

Die folgende Tabelle zeigt die Cron-Beispiele für Zuordnungen.

Cron-Beispiele für Zuordnungen
Beispiel Details

cron(0/30 * * * ? *)

Alle 30 Minuten

cron(0 0/1 * * ? *)

Stündlich

cron(0 0/2 * * ? *)

Alle 2 Stunden

cron(0 0/4 * * ? *)

Alle 4 Stunden

cron(0 0/8 * * ? *)

Alle 8 Stunden

cron(0 0/12 * * ? *)

Alle 12 Stunden

cron(15 13 ? * * *)

Täglich um 13:15 Uhr

cron(15 13 ? * MON *)

Jeden Montag um 13:15 Uhr

cron(30 23 ? * TUE#3 *)

Jeden dritten Dienstag im Monat um 23:30 Uhr

Hier sind einige Rate-Beispiele für Zuordnungen.

Rate-Beispiele für Zuordnungen
Beispiel Details

rate(30 minutes)

Alle 30 Minuten

rate(1 hour)

Stündlich

rate(5 hours)

Alle 5 Stunden

rate(15 days)

Alle 15 Tage

AWS CLI-Beispiele für Zuordnungen

Um State Manager-Zuordnungen über die AWS CLI zu erstellen, fügen Sie den Parameter --schedule-expression mit einem Cron- oder Rate-Ausdruck hinzu. Die folgenden Beispiele verwenden die AWS CLI auf einem lokalen Linux-Computer.

Anmerkung

Wenn Sie eine neue Zuordnung erstellen, führt das System diese standardmäßig sofort nach der Erstellung und dann nach dem angegebenen Zeitplan aus. Geben Sie --apply-only-at-cron-interval an, damit die Zuordnung nicht unmittelbar nach der Erstellung ausgeführt wird. Dieser Parameter wird nicht für Rate-Ausdrücke unterstützt.

aws ssm create-association \ --association-name "My-Cron-Association" \ --schedule-expression "cron(0 2 ? * SUN *)" \ --targets Key=tag:ServerRole,Values=WebServer \ --name AWS-UpdateSSMAgent
aws ssm create-association \ --association-name "My-Rate-Association" \ --schedule-expression "rate(7 days)" \ --targets Key=tag:ServerRole,Values=WebServer \ --name AWS-UpdateSSMAgent
aws ssm create-association \ --association-name "My-Rate-Association" \ --schedule-expression "at(2020-07-07T15:55:00)" \ --targets Key=tag:ServerRole,Values=WebServer \ --name AWS-UpdateSSMAgent \ --apply-only-at-cron-interval

Cron- und Rate-Ausdrücke für Wartungsfenster

Dieser Abschnitt enthält Beispiele für Cron- und Rate-Ausdrücke für Wartungsfenster.

Anders als State Manager-Zuordnungen unterstützen Wartungsfenster alle Cron- und Rate-Ausdrücke. Dies umfasst die Unterstützung für Werte im Sekundenfeld.

Beispielsweise führt der folgende Cron-Ausdruck mit 6 Feldern jeden Tag um 9:30 Uhr ein Wartungsfenster aus.

cron(30 09 ? * * *)

Durch Hinzufügen eines Werts zum Feld Seconds führt der folgende Cron-Ausdruck mit 7 Feldern jeden Tag um 9:30:24 Uhr ein Wartungsfenster aus.

cron(24 30 09 ? * * *)

Die folgende Tabelle enthält zusätzliche Beispiele für Cron-Ausdrücke mit 6 Feldern für Wartungsfenster.

Cron-Beispiele für Wartungsfenster
Beispiel Details

cron(0 2 ? * THU#3 *)

02:00 Uhr jeden dritten Donnerstag im Monat

cron(15 10 ? * * *)

10:15 Uhr jeden Tag

cron(15 10 ? * MON-FRI *)

10:15 Uhr jeden Montag, Dienstag, Mittwoch, Donnerstag und Freitag

cron(0 2 L * ? *)

02:00 Uhr jeden letzten Tag im Monat

cron(15 10 ? * 6L *)

10:15 Uhr jeden letzten Freitag im Monat

Die folgende Tabelle enthält Beispiele für Raten von Wartungsfenstern.

Rate-Beispiele für Wartungsfenster
Beispiel Details

rate(30 minutes)

Alle 30 Minuten

rate(1 hour)

Stündlich

rate(5 hours)

Alle 5 Stunden

rate(25 days)

Alle 25 Tage

AWS CLI-Beispiele für Wartungsfenster

Um Wartungsfenster mithilfe der AWS CLI zu erstellen, fügen Sie den Parameter --schedule mit einem Cron- oder Rate-Ausdruck oder einen Zeitstempel ein. Die folgenden Beispiele verwenden die AWS CLI auf einem lokalen Linux-Computer.

aws ssm create-maintenance-window \ --name "My-Cron-Maintenance-Window" \ --allow-unassociated-targets \ --schedule "cron(0 16 ? * TUE *)" \ --schedule-timezone "America/Los_Angeles" \ --start-date 2021-01-01T00:00:00-08:00 \ --end-date 2021-06-30T00:00:00-08:00 \ --duration 4 \ --cutoff 1
aws ssm create-maintenance-window \ --name "My-Rate-Maintenance-Window" \ --allow-unassociated-targets \ --schedule "rate(7 days)" \ --duration 4 \ --schedule-timezone "America/Los_Angeles" \ --cutoff 1
aws ssm create-maintenance-window \ --name "My-TimeStamp-Maintenance-Window" \ --allow-unassociated-targets \ --schedule "at(2021-07-07T13:15:30)" \ --duration 4 \ --schedule-timezone "America/Los_Angeles" \ --cutoff 1
Weitere Informationen

CRON-Ausdruck bei der Wikipedia-Webseite