Service-Ereignismeldungen - Amazon ECS

Service-Ereignismeldungen

Wenn Sie ein Problem mit einem Service beheben möchten, sollten Sie zuerst im Service-Ereignisprotokoll nach Diagnoseinformationen suchen. Sie können Service-Ereignisse mit dem DescribeServices-API, AWS CLI oder mithilfe der AWS Management Console ansehen.

Beim Anzeigen von Service-Ereignismeldungen mit der Amazon ECS-API werden nur die Ereignisse aus dem Service-Scheduler zurückgegeben. Dazu gehören die aktuellste Aufgabenplatzierung und Instance-Integritätsereignisse. Die Amazon ECS-Konsole zeigt jedoch Service-Ereignisse aus den folgenden Quellen an.

  • Aufgabenplatzierung und Instance-Integritätsereignisse aus dem Amazon-ECS-Service-Scheduler. Diese Ereignisse haben ein Präfix von service (service-name). Um sicherzustellen, dass diese Ereignisansicht hilfreich ist, zeigen wir nur die 100 aktuellsten Ereignisse an und doppelte Ereignismeldungen werden weggelassen, bis entweder die Ursache behoben ist oder sechs Stunden vergangen sind. Wenn die Ursache nicht innerhalb von sechs Stunden behoben wird, werden Sie eine weitere Service-Ereignismeldung für diese Ursache erhalten.

  • Service Auto Scaling-Events. Diese Ereignisse haben ein Präfix von Message (Meldung). Die 10 letzten Skalierungsereignisse werden angezeigt. Diese Ereignisse treten nur auf, wenn ein Dienst mit einer Application Auto Scaling-Skalierungsrichtlinie konfiguriert ist.

Gehen Sie wie folgt vor, um Ihre aktuellen Service-Ereignismeldungen anzuzeigen.

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

  2. Klicken Sie im Navigationsbereich auf Clusters (Cluster).

  3. Wählen Sie auf der Cluster-Seite den Cluster aus.

  4. Wählen Sie auf der Seite Cluster : Name die Registerkarte Services aus.

  5. Wählen Sie den zu untersuchenden Service aus.

  6. Zeigen Sie im Abschnitt Benachrichtigungen die Nachrichten an.

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

  2. Wählen Sie auf der Seite Clusters den Cluster aus, in dem sich die gestoppte Aufgabe befindet.

  3. Wählen Sie auf der Seite Cluster: clustername die Option Tasks (Aufgaben).

  4. Wählen Sie in der Tabellenüberschrift Desired task status (Gewünschter Aufgabenstatus) die Option Stopped (Gestoppt), und wählen Sie dann die gestoppte Aufgabe aus, die Sie überprüfen möchten. Die neuesten gestoppten Aufgaben werden zuerst aufgelistet.

  5. Entnehmen dem Feld Stopped reason im Bereich Details die Ursache, weswegen die Aufgabe gestoppt wurde.

    
                            Ursache der gestoppten Aufgabe
  6. Erweitern Sie einen gestoppten Container und überprüfen Sie die Zeile Status reason, um festzustellen, aus welchem Grund sich der Aufgabenzustand geändert hat.

    
                            Fehler für gestoppte Container

    Im vorherigen Beispiel konnte der Name des Container-Images nicht gefunden werden. Dies kann der Fall sein, wenn Sie der Abbild-Name nicht richtig geschrieben wurde.

    Wenn diese Kontrolle nicht aufschlussreich genug ist, finden Sie weitere Informationen unter Fehlercodes für angehaltene Aufgaben.

AWS CLI

Verwenden Sie den Befehl describe-services, um die Dienstereignismeldungen für einen angegebenen Dienst anzuzeigen.

Folgendes AWS CLI-Beispiel beschreibt den service-name-Dienst im default-Cluster, der die neuesten Dienstereignismeldungen bereitstellt.

aws ecs describe-services \ --cluster default \ --services service-name \ --region us-west-2

Service-Ereignismeldungen

Im Folgenden finden Sie Beispiele für Service-Ereignismeldungen, die in der Amazon ECS-Konsole angezeigt werden können:

Dieser Service enthält Aufgaben, die nach mehrmaligen Versuchen nicht gestartet werden konnten. Zu diesem Zeitpunkt beginnt der Service-Scheduler, die Zeit zwischen erneuten Versuchen inkrementell zu erhöhen. Sie sollten eine Fehlersuche durchführen, um festzustellen, warum Ihre Aufgaben nicht starten. Weitere Informationen finden Sie unter Service-Drosselungslogik.

Nachdem der Service aktualisiert wurde, z. B. durch eine aktualisierte Aufgabendefinition, nimmt der Service-Scheduler sein normales Verhalten wieder auf.

Dieser Dienst kann aufgrund von API-Beschränkungen keine weiteren Aufgaben starten. Sobald der Service-Scheduler in der Lage ist, weitere Aufgaben zu starten, wird er fortgesetzt.

Wenn Sie eine Kontingenterhöhung des API-Ratenlimits beantragen möchten, öffnen Sie die Seite AWS Support-Center, melden sich gegebenenfalls an und wählen Create case (Fall erstellen). Wählen Sie Service Limit increase (Erhöhung des Servicelimits). Füllen Sie das Formular aus und senden Sie es ab.

Dieser Dienst kann Aufgaben während einer Dienstbereitstellung aufgrund der Bereitstellungskonfiguration nicht anhalten oder starten. Die Bereitstellungskonfiguration besteht aus den minimumHealthyPercent- und maximumPercent-Werten, die beim Erstellen des Service definiert werden, aber auch für einen vorhandenen Service aktualisiert werden können.

minimumHealthyPercent stellt die Untergrenze für die Anzahl der Aufgaben dar, die für einen Dienst während einer Bereitstellung oder wenn eine Container-Instance entleert wird, als Prozentsatz der gewünschten Anzahl von Aufgaben für den Dienst. Dieser Wert wird aufgerundet. Zum Beispiel, wenn der minimale gesunde Prozentsatz 50 ist und die gewünschte Aufgabenanzahl vier ist, kann der Scheduler zwei bestehende Aufgaben stoppen, bevor er zwei neue Aufgaben startet. Ebenso kann der Scheduler, wenn der minimale fehlerfreie Prozentsatz 75 % beträgt und die gewünschte Anzahl zwei ist, keine Aufgaben stoppen, da der resultierende Wert auch zwei ist.

maximumPercent stellt die Obergrenze für die Anzahl der Aufgaben dar, die für einen Dienst während einer Bereitstellung oder wenn eine Container-Instance entleert wird, als Prozentsatz der gewünschten Anzahl von Aufgaben für einen Dienst. Dieser Wert wird abgerundet. Zum Beispiel, wenn der maximale Prozentsatz 200 ist und die gewünschte Aufgabenanzahl vier ist, kann der Scheduler vier neue Aufgaben starten, bevor er vier vorhandene Aufgaben beendet. Ebenso, wenn der maximale Prozentsatz 125. ist und die gewünschte Aufgabenanzahl drei ist, kann der Scheduler keine Aufgaben starten, da der resultierende Wert ebenfalls drei ist.

Wenn Sie einen minimalen fehlerfreien Prozentsatz oder einen maximalen Prozentsatz festlegen, sollten Sie sicherstellen, dass der Scheduler mindestens eine Aufgabe anhalten oder starten kann, wenn eine Bereitstellung ausgelöst wird.

Sie können eine Kontingenterhöhung für die Ressource anfordern, die den Fehler verursacht hat. Weitere Informationen finden Sie unter Amazon-ECS-Service-Kontingente. Informationen zum Anfordern einer Kontingenterhöhung finden Sie unter Beantragen einer Kontingenterhöhung im Benutzerhandbuch zu Service Quotas.

Der Service kann eine Aufgabe nicht starten, da sich ein Subnetz in einer nicht unterstützten Availability Zone befindet.

Informationen zu den unterstützten Fargate-Regionen und Availability Zones finden Sie unter Unterstützte Regionen für Amazon ECS auf AWS Fargate.

Weitere Informationen zum Anzeigen der Subnetz-Availability-Zone finden Sie unter Anzeigen Ihres Subnetzes im Benutzerhandbuch zu Amazon VPC.

Sie können eine Kontingenterhöhung für die Ressource anfordern, die den Fehler verursacht hat. Weitere Informationen finden Sie unter Amazon-ECS-Service-Kontingente. Informationen zum Anfordern einer Kontingenterhöhung finden Sie unter Beantragen einer Kontingenterhöhung im Benutzerhandbuch zu Service Quotas.

Sie können eine Kontingenterhöhung für die Ressource anfordern, die den Fehler verursacht hat. Weitere Informationen finden Sie unter Amazon-ECS-Service-Kontingente. Informationen zum Anfordern einer Kontingenterhöhung finden Sie unter Beantragen einer Kontingenterhöhung im Benutzerhandbuch zu Service Quotas.