Geplante Aufgaben - Amazon ECS

Geplante Aufgaben

Amazon ECS unterstützt das Erstellen geplanter Tasks. Geplante Tasks verwenden Amazon EventBridge Regeln, um Tasks entweder nach einem Zeitplan oder als Antwort auf ein EventBridge-Ereignis auszuführen.

Wenn in Ihrem Cluster in festgelegten Intervallen Aufgaben wie etwa eine Backup-Operation oder ein Protokollscan ausgeführt werden sollen, können Sie eine geplante Aufgabe erstellen, die zu den angegebenen Zeiten eine oder mehrere Aufgaben ausführt. Sie können ein bestimmtes Intervall festlegen (alle N Minuten, Stunden oder Tage ausführen) oder, im Falle einer komplizierteren Planung, einen cron-Ausdruck verwenden. Weitere Informationen erhalten in Cron-Ausdrücken und Rate-Ausdrücken im Amazon EventBridge-Benutzerhandbuch.

Wenn Sie Aufgaben ausführen möchten, die durch ein Ereignis ausgelöst werden, gibt es von AWS verwaltete Ereignisse für Services (z .B. Amazon-ECS-Aufgaben- und Container-Instance-Änderungsereignisse) oder Sie können ein benutzerdefiniertes Ereignismuster erstellen. Weitere Informationen finden Sie unter Ereignismuster im Amazon EventBridge-Benutzerhandbuch.

Erstellen einer geplanten Aufgabe

Geplante Tasks werden durch Amazon EventBridge-Regeln ausgelöst, die Sie mit der EventBridge-Konsole erstellen können. Obwohl Sie eine geplante Aufgabe in der Amazon ECS-Konsole erstellen können, bietet die EventBridge Konsole derzeit mehr Funktionen. Die folgenden Schritte führen Sie durch das Erstellen einer EventBridge-Regel, die einen geplanten Task auslöst.

Erstellen eines geplanten Tasks (EventBridge-Konsole)

  1. Öffnen Sie die Amazon EventBridge-Konsole unter https://console.aws.amazon.com/events/.

  2. Wählen Sie im Navigationsbereich Rules aus.

  3. Wählen Sie Create rule (Regel erstellen).

  4. Geben Sie einen Namen und eine Beschreibung für die Regel ein.

    Anmerkung

    Eine Regel darf nicht denselben Namen wie eine andere Regel in derselben Region und auf demselben Ereignisbus haben.

  5. Wählen Sie für Event bus (Ereignisbus) den Ereignisbus aus, den Sie dieser Regel zuordnen möchten. Wenn Sie möchten, dass diese Regel mit Ereignissen aus Ihrem eigenenKonto übereinstimmt, wählen Sie AWS-Standardereignisbus aus. Wenn ein AWS-Service in Ihrem Konto ein Ereignis ausgibt, wird es stets an den Standardereignisbus Ihres Kontos weitergeleitet.

  6. Bestimmen Sie, wie die Aufgabe geplant werden soll.

    So erstellen Sie eine Regel auf der Basis von … Vorgehensweise

    Veranstaltung

    1. Bei Rule type (Regeltyp) wählen Sie Rule with an event pattern (Regel mit einem Ereignismuster) aus.

    2. Wählen Sie Next (Weiter).

    3. Wählen Sie unter Event source (Ereignisquelle) die Option AWS events (AWS-Ereignisse) aus.

    4. Gehen Sie bei Event pattern (Ereignismuster) wie folgt vor:

      • Um eine Vorlage zum Erstellen Ihres Ereignismusters zu verwenden, wählen Sie Event pattern form (Ereignismusterformular) und dann die gewünschten Einstellungen für Event source (Ereignisquelle), AWS service (AWS-Service) und Event type (Ereignistyp) aus. Wenn Sie den Ereignistyp All Events (Alle Ereignisse) auswählen, stimmen alle von diesem AWS-Service ausgegebenen Ereignisse mit der Regel überein.

        Um die Vorlage anzupassen, wählen Sie Custom pattern (JSON editor) (Benutzerdefiniertes Muster (JSON-Editor)) und nehmen Sie die erforderlichen Änderungen vor.

      • Wenn Sie ein benutzerdefiniertes Ereignismuster verwenden möchten, wählen Sie Custom pattern (JSON editor) (Benutzerdefiniertes Muster (JSON-Editor)) und erstellen Sie Ihr Ereignismuster.

    Plan
    1. Wählen Sie unter Rule type (Regeltyp) die Option Schedule (Zeitplan) aus.

    2. Wählen Sie Next (Weiter).

    3. Gehen Sie bei Schedule pattern (Zeitplanmuster) wie folgt vor:

      • Um den Zeitplan mithilfe eines Cron-Ausdrucks zu definieren, wählen Sie A fine-grained schedule that runs at a specific time, such as 8:00 a.m. PST on the first Monday of every month (Detaillierter Zeitplan, der zu einem bestimmten Zeitpunkt (z. B. 8:00 Uhr) PST am ersten Montag jedes Monats PST ausgeführt wird) und geben Sie den Cron-Ausdruck ein.

      • Um den Zeitplan mithilfe eines Rate-Ausdrucks zu definieren, wählen Sie A schedule that runs at a regular rate, such as every 10 minutes (Zeitplan, der mit einer regulären Rate läuft, z. B. alle 10 Minuten) und geben Sie den Rate-Ausdruck ein.

  7. Wählen Sie Next (Weiter).

  8. Bei Target types (Zieltypen) wählen Sie AWS-Service aus.

  9. Wählen Sie unter Select a target (Ziel auswählen) die Option ECS task (ECS-Aufgabe) aus.

  10. Wählen Sie für Cluster einen Amazon ECS-Cluster aus.

  11. Wählen Sie für Aufgabendefinition eine Aufgabendefinitionsfamilie aus.

  12. Wählen Sie für Revision der Aufgabendefinition entweder Neueste oder Revision und wählen Sie eine bestimmte Aufgabendefinitionsrevision aus, die verwendet werden soll.

  13. Geben Sie für Anzahl die gewünschte Anzahl der Aufgaben an, die ausgeführt werden sollen.

  14. Wählen Sie aus, wie Ihre geplante Aufgabe auf Ihre Cluster-Infrastruktur aufgeteilt ist.

    Verteilungsmethode Schritte

    Kapazitätsanbieterstrategie

    1. Wählen Sie im Bereich Compute options (Datenverarbeitungs-Optionen) die Option Capacity provider strategy (Kapazitätsanbieterstrategie) aus.

    2. Wählen Sie eine Strategie aus:

      • Um die standardmäßige Kapazitätsanbieter-Strategie des Clusters zu verwenden, wählen Sie Use cluster default (Cluster-Standard verwenden).

      • Wenn Ihr Cluster keine Standardstrategie für Kapazitätsanbieter hat oder eine benutzerdefinierte Strategie verwendet werden soll, wählen Sie Use custom (Benutzerdefiniert nutzen), Add capacity provider strategy (Kapazitätsanbieter-Strategie hinzufügen) und definieren Sie Ihre benutzerdefinierte Kapazitätsanbieter-Strategie, indem Sie eine Basis (Base), einen Kapazitätsanbieter (Capacity provider) und ein Gewicht (Weight) angeben.

    Anmerkung

    Damit Kapazitätsanbieter in einer Strategie verwendet werden kann, muss er dem Cluster zugeordnet sein. Weitere Hinweise zu Kapazitätsanbieter-Strategien finden Sie unter Amazon ECS-Kapazitätsanbieter.

    Starttyp
    1. Wählen Sie im Bereich Compute options (Datenverarbeitungs-Optionen) die Option Launch type (Starttyp) aus.

    2. Wählen Sie unter Launch type (Starttyp) einen Starttyp aus.

    3. (Optional) Wenn der Fargate Starttyp angegeben ist, geben Sie für Plattformversion die zu verwendende Plattformversion an. Ist keine Plattformversion angegeben, wird standardmäßig die LATEST-Plattformversion verwendet.

  15. Wenn die Aufgabe auf Fargate gehostet wird oder den awsvpc-Netzwerkmodus verwendet, erweitern Sie Configure network configuration (Netzwerkkonfiguration konfigurieren) und geben Sie eine Netzwerkkonfiguration an.

    1. Geben Sie für Subnetze eine oder mehrere Subnetz-IDs an.

    2. Geben Sie für Sicherheitsgruppen eine oder mehrere Sicherheitsgruppen-IDs an.

    3. Geben Sie für Automatische Zuweisen öffentlicher IP an, ob der Aufgabe eine öffentliche IP-Adresse zugewiesen wird.

  16. (Optional) Wenn Sie zusätzliche Parameter für Ihre Aufgaben angeben möchten, erweitern Sie Configure additional properties (Zusätzliche Eigenschaften konfigurieren).

    1. Geben Sie für Aufgabengruppe einen Aufgabengruppennamen an. Der Name der Aufgabengruppe wird verwendet, um eine Gruppe zusammenhängender Aufgaben zu identifizieren und wird in Verbindung mit der spread-Aufgabenplatzierungsstrategie genutzt, um sicherzustellen, dass Aufgaben in derselben Aufgabengruppe gleichmäßig auf die Container-Instances im Cluster verteilt werden.

    2. Wählen Sie für Tags Hinzufügen von Tags, um Schlüsselwertpaar-Tags für die Aufgabe zu verknüpfen.

    3. Um Tags für die Überprüfung der Kostenzuweisung in Ihrem Kosten- und Nutzungsbericht hinzuzufügen, wählen Sie für Configure managed tags (Verwaltete Tags konfigurieren) die Option Enable managed tags (Verwaltete Tags aktivieren) aus. Weitere Informationen finden Sie unter Markieren von Ressourcen für die Fakturierung.

    4. Um die ECS Exec-Funktionalität für die Aufgabe zu aktivieren, wählen Sie für Configure execute command (Befehl ausführen konfigurieren) die Option Enable execute command (Ausführbefehl aktivieren). Weitere Informationen finden Sie unter Verwenden von Amazon ECS Exec zum Debuggen.

    5. Wenn die mit der Aufgabendefinition verknüpften Tags zu Ihrer Aufgabe hinzugefügt werden sollen, wählen Sie für Configure propagate tags (Propagate-Tags konfigurieren) die Option Propagate tags from task definition (Tags aus Aufgabendefinition propagieren) aus. Weitere Informationen finden Sie unter Markieren Ihrer -Ressourcen.

      Anmerkung

      Wenn Sie ein Tag mit demselben Schlüssel im Abschnitt Tags angeben, wird das Tag überschrieben, das aus der Aufgabendefinition propagiert wird.

  17. Für viele Zieltypen benötigt EventBridge Berechtigungen zum Senden von Ereignissen an das Ziel. In diesen Fällen kann EventBridge die IAM-Rolle erstellen, die zum Ausführen Ihrer Regel erforderlich ist. Führen Sie eine der folgenden Aktionen aus:

    • Um automatisch eine IAM-Rolle zu erstellen, wählen Sie Create a new role for this specific resource (Eine neue Rolle für diese spezifische Ressource erstellen).

    • Wenn Sie eine zuvor erstellte IAM-Rolle verwenden möchten, wählen Sie Use existing role (Vorhandene Rolle verwenden) und wählen Sie die vorhandene Rolle aus der Dropdown-Liste aus.

  18. (Optional) Gehen Sie unter Additional settings (Weitere Einstellungen) wie folgt vor:

    1. Geben Sie für Maximum age of event (Maximales Alter des Ereignisses) einen Wert zwischen einer Minute (00:01) und 24 Stunden (24:00) ein.

    2. Geben Sie für Wiederholungsversuche eine Zahl zwischen 0 und 185 ein.

    3. Wählen Sie für Warteschlange unzustellbare Nachrichten aus, ob Sie eine Amazon SQS-Standardwarteschlange als Warteschlange für unzustellbare Nachrichten verwenden möchten. EventBridge sendet Ereignisse, die dieser Regel entsprechen, an die Warteschlange für Dead-Letter, wenn sie nicht erfolgreich an das Ziel übermittelt wurden. Führen Sie eine der folgenden Aktionen aus:

      • Klicken Sie auf Keine, um keine Warteschlange für unzustellbare Nachrichten zu verwenden.

      • Klicken Sie auf Select an Amazon SQS queue in the current AWS account to use as the dead-letter queue (Wählen Sie eine Amazon SQS Warteschlange im aktuellen AWS-Konto als Warteschlange für unzustellbare Nachrichten) und wählen Sie dann die Warteschlange aus der Dropdown-Liste aus.

      • Klicken Sie auf Wählen Sie eine Amazon SQS Warteschlange in einem anderen AWS-Konto als Warteschlange für unzustellbare Nachrichten und geben Sie dann den ARN der Warteschlange ein, die verwendet werden soll. Sie müssen eine ressourcenbasierte Richtlinie an die Warteschlange anhängen, die EventBridge Berechtigung zum Senden von Nachrichten an die Warteschlange erteilt. Weitere Informationen finden Sie unter Erteilen von Berechtigungen für unzustellbare Nachrichten im Amazon EventBridge-Benutzerhandbuch.

  19. Wählen Sie Next (Weiter).

  20. (Optional) Geben Sie ein oder mehrere Tags für die Regel ein. Weitere Informationen finden Sie unter Amazon-EventBridge-Tags im Benutzerhandbuch zu Amazon EventBridge.

  21. Wählen Sie Next (Weiter).

  22. Überprüfen Sie die Details der Regel und wählen Sie dann Create rule (Regel erstellen) aus.

Anzeigen Ihrer geplanten Aufgaben

Sie können Ihre geplanten Aufgaben in der klassischen Amazon ECS-Konsole anzeigen. Sie können auch die Amazon EventBridge Regeln anzeigen, mit denen die geplanten Tasks in der EventBridge-Konsole ausgelöst werden.

So zeigen Sie Ihre geplanten Tasks an (Amazon ECS-Konsole)

  1. Öffnen Sie die Amazon ECS-Konsole unter https://console.aws.amazon.com/ecs/.

  2. Wählen Sie den Cluster aus, in dem Ihre geplanten Tasks ausgeführt werden.

  3. Wählen Sie auf der Seite Cluster: cluster-name Scheduled Tasks aus.

  4. Alle Ihrer geplanten Aufgaben werden aufgelistet.

Bearbeiten einer geplanten Aufgabe

Sie können Ihre geplanten Aufgaben in der klassischen Amazon ECS-Konsole bearbeiten. Sie können auch die Amazon EventBridge Regeln bearbeiten, die die geplanten Tasks in der EventBridge-Konsole auslösen.

So bearbeiten Sie eine geplante Aufgabe (Amazon ECS-Konsole)

  1. Öffnen Sie die Amazon ECS-Konsole unter https://console.aws.amazon.com/ecs/.

  2. Wählen Sie den Cluster aus, in dem Ihre geplante Aufgabe bearbeitet werden soll.

  3. Wählen Sie auf der Seite Cluster: cluster-name Scheduled Tasks aus.

  4. Aktivieren Sie das Kontrollkästchen links neben der Zeitplanregel, die bearbeitet werden soll, und wählen Bearbeiten aus.

  5. Bearbeiten Sie die zu aktualisierenden Felder und wählen Sie Aktualisieren aus.