AWS Häufig FAQs zur Fargate-Aufgabenwartung - Amazon Elastic Container Service

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.

AWS Häufig FAQs zur Fargate-Aufgabenwartung

Was ist Fargate-Aufgabenwartung und -ausmusterung?

AWS ist für die Wartung der zugrunde liegenden Infrastruktur für AWS Fargate verantwortlich. AWS bestimmt, wann eine Plattformversionsrevision durch eine neue Revision ersetzt werden muss. Dies wird als Außerbetriebnahme AWS von Aufgaben bezeichnet. sendet eine Benachrichtigung über die Außerbetriebnahme von Aufgaben, wenn eine Plattformversionsrevision außer Betrieb genommen wird. Wir aktualisieren regelmäßig unsere unterstützten Plattformversionen, um eine neue Revision einzuführen, die Updates der Fargate-Laufzeitsoftware und zugrunde liegende Abhängigkeiten wie Betriebssystem und Container-Laufzeit enthält. Sobald eine neuere Revision verfügbar gemacht wurde, nehmen wir die ältere Revision außer Betrieb, um sicherzustellen, dass alle Kunden-Workloads auf der aktuellsten Version der Fargate-Plattformversion ausgeführt werden. Wenn eine Version außer Betrieb genommen wird, werden alle Aufgaben, die für diese Version ausgeführt werden, gestoppt.

Amazon-ECS-Aufgaben können entweder als Serviceaufgaben oder als eigenständige Aufgaben kategorisiert werden. Serviceaufgaben werden als Teil eines Service bereitgestellt und durch den Amazon-ECS-Zeitplan gesteuert. Weitere Informationen finden Sie unter Amazon-ECS-Dienstleistungen. Eigenständige Aufgaben sind Aufgaben, die von der Amazon-ECSRunTask-API entweder direkt oder von einem externen Scheduler gestartet werden, z. B. geplante Aufgaben (die von Amazon gestartet werden EventBridge) AWS Batch oder AWS Step Functions.

Für Serviceaufgaben müssen Sie keine Maßnahmen ergreifen, es sei denn, Sie möchten diese Aufgaben zuvor ersetzen AWS . Wenn der Amazon-ECS-Scheduler die Aufgaben stoppt, verwendet er den minimalen fehlerfreien Prozentsatz und startet eine neue Aufgabe, um die gewünschte Anzahl für den Service beizubehalten. Standardmäßig beträgt der minimale fehlerfreie Prozentsatz eines Services 100 Prozent, sodass eine neue Aufgabe zuerst gestartet wird, bevor eine Aufgabe beendet wird. Serviceaufgaben werden routinemäßig auf die gleiche Weise ersetzt, wenn Sie den Service skalieren, Konfigurationsänderungen bereitstellen oder Revisionen der Aufgabendefinition bereitstellen. Um sich auf den Prozess der Aufgaben-Außerbetriebnahme vorzubereiten, empfehlen wir, das Verhalten Ihrer Anwendung durch Simulieren dieses Szenarios zu testen. Halten Sie dazu eine Aufgabe in Ihrem Service an, um einen Test auf Ausfallsicherheit durchzuführen.

Bei der Außerbetriebnahme eigenständiger Aufgaben AWS stoppt die Aufgabe am oder nach dem Datum der Außerbetriebnahme der Aufgabe. Wir starten keine Ersatzaufgabe, wenn eine Aufgabe gestoppt wird. Wenn Sie diese Aufgaben weiter ausführen müssen, müssen Sie die laufenden Aufgaben beenden und eine Ersatzaufgabe vor dem in der Benachrichtigung angegebenen Zeitpunkt starten. Daher empfehlen wir unseren Kunden, den Status der eigenständigen Aufgaben zu überwachen und bei Bedarf Logik zu implementieren, um die gestoppten Aufgaben zu ersetzen.

Wenn eine Aufgabe in einem der Szenarien gestoppt wird, können Sie describe-tasks ausführen. Der stoppedReason in der Antwort ist ECS is performing maintenance on the underlying infrastructure hosting the task.

Was ist in der Benachrichtigung zur Außerbetriebnahme von Aufgaben enthalten?

Die Benachrichtigungen zur Außerbetriebnahme von Aufgaben werden über das AWS Health Dashboard sowie per E-Mail an die registrierte E-Mail-Adresse gesendet und enthalten die folgenden Informationen:

  • Das Datum der Außerbetriebnahme der Aufgabe – Die Aufgabe wird an oder nach diesem Datum beendet.

  • Bei eigenständigen Aufgaben die IDs der Aufgaben.

  • Bei Serviceaufgaben die ID des Clusters, auf dem der Service ausgeführt wird, und die IDs des Services.

  • Die nächsten Schritte, die Sie unternehmen müssen.

In der Regel senden wir jeweils eine Benachrichtigung für Service- und eigenständige Aufgaben in jeder AWS-Region. In bestimmten Fällen erhalten Sie jedoch möglicherweise mehr als ein Ereignis für jeden Aufgabentyp, z. B. wenn zu viele Aufgaben außer Betrieb genommen werden müssen, die die Grenzwerte in unseren Benachrichtigungsmechanismen überschreiten.

Es gibt folgende Möglichkeiten, Aufgaben zu identifizieren, die für die Außerbetriebnahme vorgesehen sind:

  • Die AWS Health Dashboard

    AWS Health -Benachrichtigungen können über Amazon EventBridge an Archivierungsspeicher wie Amazon Simple Storage Service gesendet werden, automatisierte Aktionen wie das Ausführen einer - AWS Lambda Funktion oder andere Benachrichtigungssysteme wie Amazon Simple Notification Service ausführen. Weitere Informationen finden Sie unter Überwachen von AWS Health Ereignissen mit Amazon EventBridge. Eine Beispielkonfiguration zum Senden von Benachrichtigungen an Amazon Chime, Slack oder Microsoft Teams finden Sie im AWS Health Aware-Repository auf GitHub.

    Im Folgenden finden Sie ein EventBridge Beispielereignis.

    { "version": "0", "id": "3c268027-f43c-0171-7425-1d799EXAMPLE", "detail-type": "AWS Health Event", "source": "aws.health", "account": "123456789012", "time": "2023-08-16T23:18:51Z", "region": "us-east-1", "resources": [ "cluster/service", "cluster/service" ], "detail": { "eventArn": "arn:aws:health:us-east-1::event/ECS/AWS_ECS_TASK_PATCHING_RETIREMENT/AWS_ECS_TASK_PATCHING_RETIREMENT_test1", "service": "ECS", "eventScopeCode": "ACCOUNT_SPECIFIC", "communicationId": "7988399e2e6fb0b905ddc88e0e2de1fd17e4c9fa60349577446d95a18EXAMPLE", "lastUpdatedTime": "Wed, 16 Aug 2023 23:18:52 GMT", "eventRegion": "us-east-1", "eventTypeCode": "AWS_ECS_TASK_PATCHING_RETIREMENT", "eventTypeCategory": "scheduledChange", "startTime": "Wed, 16 Aug 2023 23:18:51 GMT", "endTime": "Fri, 18 Aug 2023 23:18:51 GMT", "eventDescription": [ { "language": "en_US", "latestDescription": "\\nA software update has been deployed to Fargate which includes CVE patches or other critical patches. No action is required on your part. All new tasks launched automatically uses the latest software version. For existing tasks, your tasks need to be restarted in order for these updates to apply. Your tasks running as part of the following ECS Services will be automatically updated beginning Wed, 16 Aug 2023 23:18:51 GMT.\\n\\nAfter Wed, 16 Aug 2023 23:18:51 GMT, the ECS scheduler will gradually replace these tasks, respecting the deployment settings for your service. Typically, services should see little to no interruption during the update and no action is required. When AWS stops tasks, AWS uses the minimum healthy percent (1) and launches a new task in an attempt to maintain the desired count for the service. By default, the minimum healthy percent of a service is 100 percent, so a new task is started first before a task is stopped. Service tasks are routinely replaced in the same way when you scale the service or deploy configuration changes or deploy task definition revisions. If you would like to control the timing of this restart you can update the service before Wed, 16 Aug 2023 23:18:51 GMT, by running the update-service command from the ECS command-line interface specifying force-new-deployment for services using Rolling update deployment type. For example:\\n\\n$ aws ecs update-service -service service_name \\\n--cluster cluster_name -force-new-deployment\\n\\nFor services using Blue/Green deployment type with AWS CodeDeploy:\\nPlease refer to create-deployment document (2) and create new deployment using same task definition revision.\\n\\nFor further details on ECS deployment types, please refer to ECS Deployment Developer Guide (1).\\nFor further details on Fargate's update process, please refer to the AWS Fargate User Guide (3).\\nIf you have any questions or concerns, please contact AWS Support (4).\\n\\n(1) https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-types.html\\n(2) https://docs.aws.amazon.com/cli/latest/reference/deploy/create-deployment.html\\n(3) https://docs.aws.amazon.com/AmazonECS/latest/userguide/task-maintenance.html\\n(4) https://aws.amazon.com/support\\n\\nA list of your affected resources(s) can be found in the 'Affected resources' tab in the 'Cluster/ Service' format in the AWS Health Dashboard. \\n\\n" } ], "affectedEntities": [ { "entityValue": "cluster/service" }, { "entityValue": "cluster/service" } ] } }
  • Email

    Für die AWS-Konto ID wird eine E-Mail an die registrierte E-Mail gesendet.

Kann ich die Wartezeit für die Außerbetriebnahme von Aufgaben ändern?

Sie können den Zeitpunkt konfigurieren, zu dem Fargate mit der Außerbetriebnahme der Aufgabe beginnt. Wählen Sie für Workloads, die eine sofortige Anwendung der Updates erfordern, die Einstellung „Sofort“ (0). Wenn Sie mehr Kontrolle benötigen, z. B. wenn eine Aufgabe nur während eines bestimmten Zeitfensters gestoppt werden kann, konfigurieren Sie die Optionen 7 Tage (7) oder 14 Tage (14).

Wir empfehlen Ihnen, eine kürzere Wartezeit zu wählen, damit Sie neuere Versionen der Plattformversionen früher erwerben können.

Konfigurieren Sie die Wartezeit, indem Sie put-account-setting-default oder put-account-setting als Stammbenutzer oder Administratorbenutzer ausführen. Verwenden Sie die Option fargateTaskRetirementWaitPeriod für name und die Option value, die auf einen der folgenden Werte eingestellt ist:

  • 0 - AWS sendet die Benachrichtigung und beginnt sofort, die betroffenen Aufgaben außer Betrieb zu nehmen.

  • 7 - AWS sendet die Benachrichtigung und wartet 7 Tage, bevor mit der Außerbetriebnahme der betroffenen Aufgaben begonnen wird.

  • 14 – AWS sendet die Benachrichtigung und wartet 14 Kalendertage, bevor mit der Außerbetriebnahme der betroffenen Aufgaben begonnen wird.

Der Standardwert ist 7 Tage.

Weitere Informationen finden Sie unter put-account-setting-default und put-account-setting in der Amazon Elastic Container Service API-Referenz.

Weitere Informationen finden Sie unter AWS Fargate Wartezeit für die Außerbetriebnahme von Aufgaben.

Kann ich Benachrichtigungen über die Außerbetriebnahme von Aufgaben über andere - AWS Services erhalten?

AWS sendet eine Benachrichtigung über die Außerbetriebnahme von Aufgaben an die AWS Health Dashboard und an den primären E-Mail-Kontakt auf der AWS-Konto. Die AWS Health Dashboard bietet eine Reihe von Integrationen in andere - AWS Services, einschließlich EventBridge. Sie können verwenden EventBridge , um die Sichtbarkeit der Benachrichtigungen zu automatisieren (z. B. Weiterleiten der Nachricht an ein ChatOps Tool). Weitere Informationen finden Sie unter Lösungsübersicht: Erfassen von Benachrichtigungen über die Außerbetriebnahme von Aufgaben.

Kann ich eine Aufgabenausmusterung ändern, nachdem sie geplant wurde?

Nein. Der Zeitplan basiert auf der Wartezeit für die Außerbetriebnahme von Aufgaben, die standardmäßig 7 Tage beträgt. Wenn Sie mehr Zeit benötigen, können Sie die Wartezeit auf 14 Tage konfigurieren. Weitere Informationen finden Sie unter Kann ich die Wartezeit für die Außerbetriebnahme von Aufgaben ändern?. Die Änderung dieser Konfiguration gilt für Außerbetriebnahmen, die in Zukunft geplant werden. Derzeit geplante Ausmusterungen sind nicht betroffen. Wenn Sie weitere Bedenken haben, wenden Sie sich an AWS Support.

Kann ich den Zeitpunkt eines Aufgabenaustauschs steuern?

Für Services, die eine fortlaufende Bereitstellung verwenden, aktualisieren Sie den Service mit update-service mit der force-deployment Option vor der Startzeit der Außerbetriebnahme.

Im folgenden update-service Beispiel wird die force-deployment Option verwendet.

aws ecs update-service —service service_name \ --cluster cluster_name \ --force-new-deployment

Für Services, die die Blau/Grün-Bereitstellung verwenden, müssen Sie eine neue Bereitstellung in erstellen AWS CodeDeploy. Informationen zum Erstellen der Bereitstellung finden Sie unter create-deployment in der AWS Command Line Interface -Referenz.

Wie verarbeitet Amazon ECS Aufgaben, die Teil eines Services sind?

Amazon ECS ersetzt die betroffenen Aufgaben in Ihrem Service schrittweise, wenn die Fargate-Außerbetriebnahmephase beginnt. Wenn Amazon ECS eine Aufgabe beendet, verwendet es den minimalen fehlerfreien Prozentsatz des Services und startet eine neue Aufgabe, um die gewünschte Aufgabenanzahl für den Service beizubehalten. Eine neue Aufgabe wird gestartet, bevor eine Aufgabe gestoppt wird, da der standardmäßige Mindestzustand 100 beträgt. Serviceaufgaben werden routinemäßig auf die gleiche Weise ersetzt, wenn Sie den Service skalieren, Konfigurationsänderungen bereitstellen oder Revisionen der Aufgabendefinition bereitstellen. Weitere Informationen zum minimalen fehlerfreien Prozentsatz finden Sie unter Bereitstellungskonfiguration.

Kann Amazon ECS eigenständige Aufgaben automatisch verarbeiten?

Nein. AWS kann keine Ersatzaufgabe für eigenständige Aufgaben erstellen, die von RunTask, geplanten Aufgaben (z. B. über EventBridge Scheduler) AWS Batch oder gestartet werden AWS Step Functions. Amazon ECS verwaltet nur Aufgaben, die Teil eines Services sind.