Direkt zum Inhalt

Warum werden ordnungsgemäß funktionierende Amazon ECS-Aufgaben, die bei ELB registriert sind, als fehlerhaft markiert und ersetzt?

Lesedauer: 2 Minute
0

Elastic Load Balancing (ELB) meldet wiederholt ordnungsgemäß funktionierende Amazon Elastic Container Service (Amazon ECS) -Aufgaben als fehlerhaft. Diese falsch markierten Aufgaben werden gestoppt, und dann werden stattdessen neue Aufgaben gestartet.

Kurzbeschreibung

Einige Amazon ECS-Aufgaben haben mehrere Abhängigkeiten und langwierige Bootstrapping-Prozesse, welche die Kulanzfrist der ELB-Zustandsprüfung überschreiten können, selbst wenn sie wie vorgesehen funktionieren. Wenn Amazon ECS-Aufgaben innerhalb der Kulanzfrist nicht auf ELB-Zustandsprüfungen reagieren, werden sie als fehlerhaft gekennzeichnet. Gehe wie folgt vor, um die Kulanzfrist für die Zustandsprüfung für deinen Service zu verlängern.

Informationen zur Behebung von ECS-Aufgaben, die eine Application Load Balancer-Zustandsprüfung nicht bestehen, findest du unter Wie kann ich meine Amazon ECS-Aufgaben mithilfe des Amazon EC2-Starttyps ausführen, um die Application Load Balancer-Zustandsprüfung in Amazon ECS zu bestehen?

Lösung

Wenn keine Kulanzfrist konfiguriert ist, ersetzt der Service Scheduler sofort alle als fehlerhaft markierten Ziele. Ändere die Kulanzfrist, damit deine Amazon ECS-Aufgaben mehr Zeit haben, ihre Prozesse abzuschließen und die Zustandsprüfung zu bestehen.

Hinweis: Um die Kulanzfrist zu ändern, verwende die frühere Version der ECS-Konsole. Um zur früheren Version der Konsole zu wechseln, deaktiviere Neue ECS-Erfahrung oben im Navigationsbereich. Führe die folgenden Schritte aus.

  1. Öffne die AWS-Managementkonsole.
  2. Wähle in der Navigationsleiste Services und dann ECS aus der Liste aus.
  3. Wähle deinen Service aus der Liste der Service-Namen aus.
  4. Wähle Aktualisieren aus.
  5. Wähle Nächster Schritt aus.
  6. Bei Schritt 2: Konfiguriere die Netzwerkseite und ändere die Kulanzfrist für die Zustandsprüfung auf einen für deinen Service geeigneten Zeitraum. Der maximale Zeitraum beträgt 2.147.483.647 Sekunden.
    Vorsicht: Um zu verhindern, dass rechtmäßig fehlerhafte Amazon ECS-Aufgaben verzögert ersetzt werden, solltest du die erforderliche Kulanzfrist für deine längsten Aufgaben sorgfältig abschätzen. Berücksichtige bei der Festlegung deiner Kulanzfrist alle relevanten Faktoren, wie z. B. die Bootstrap-Zeit und die Zeit bis zum Abrufen von Container-Images.
  7. Wähle Nächster Schritt und dann Service aktualisieren aus.

Du kannst die Kulanzfrist auch auf folgende Weise verlängern:

  • Verwende den Parameter HealthCheckGracePeriodSeconds, der in der Ressource AWS::ECS::Service in AWS CloudFormation definiert ist.
  • Führe den Befehl UpdateService in der AWS Command Line Interface (AWS CLI) aus und erhöhe den Wert --health-check-grace-period-seconds.

Ähnliche Informationen

Amazon ECS fügt eine Kulanzfrist für die ELB-Zustandsprüfung hinzu

AWS OFFICIALAktualisiert vor 3 Jahren