Wie behebe ich den Fehler „[AWS-Service] konnte keine Aufgabe platzieren, da keine Container-Instance alle Voraussetzungen erfüllt hat“ in Amazon ECS?
Ich möchte eine Aufgabe in Amazon Elastic Container Service (Amazon ECS) platzieren. Ich erhalte jedoch die folgende Fehlermeldung: „[AWS-Service] konnte keine Aufgabe platzieren, da keine Container-Instance alle Voraussetzungen erfüllt hat.“
Kurzbeschreibung
Dieser Fehler kann aus einem oder mehreren der folgenden Gründe auftreten:
- In Ihrem Cluster wurden keine Container-Instances gefunden
- Der für die Aufgabe benötigte Port wird bereits verwendet
- Es ist nicht genügend Speicher für Ihre Aufgaben vorhanden
- Es sind nicht genügend CPU-Einheiten für Ihre Container-Instance vorhanden
- Es sind nicht genügend Zuordnungspunkte für Elastic-Network-Schnittstellen verfügbar
- Ein erforderliches Attribut für Ihre Container-Instance fehlt
Weitere Informationen zu diesen Problemen finden Sie unter Serviceereignis-Meldungen.
Hinweis: Wenn Sie die obige Fehlermeldung nicht erhalten haben, wählen Sie den entsprechenden Artikel für die Fehlermeldung aus, die Sie erhalten haben:
- [AWS service] konnte keine Aufgabe platzieren, da keine Container-Instance alle Voraussetzungen erfüllt hat. Die am ehesten passende Container-Instance-ID der Container-Instance verfügt über unzureichende CPU-Einheiten.
- [AWS service] konnte keine Aufgabe platzieren, da keine Container-Instance alle Voraussetzungen erfüllt hat. Bei der am ehesten passenden Container-Instance-ID der Container-Instance ist der Fehler „AGENT“ aufgetreten.
Lösung
Hinweis: Wenn Sie beim Ausführen von Befehlen in AWS CLI Fehlermeldungen erhalten, stellen Sie sicher, dass Sie die neueste Version von AWS CLI verwenden.
Um den Fehler zu beheben, wählen Sie eine Lösung, die Ihrem Anwendungsfall entspricht:
- Wenn in Ihrem Cluster keine Container-Instances registriert sind, fügen Sie Container-Instances zu Ihrem Cluster hinzu.
- Wenn der für die Aufgabe benötigte Port bereits verwendet wird, fügen Sie Ihrem Cluster Container-Instances hinzu oder reduzieren Sie die Anzahl der gewünschten Aufgaben.
**Hinweis:**Verwenden Sie nach Möglichkeit dynamische Portzuordnung, damit Ihre Aufgaben jeden verfügbaren Port auf einer Container-Instance verwenden können. - Wenn die Container-Instance nicht genügend Speicher für Ihre Aufgaben hat, reduzieren Sie die Speichermenge in Ihrer Aufgabendefinition. Oder starten Sie weitere Container-Instances in Ihrem Cluster. Weitere Informationen finden Sie im Abschnitt Nicht genügend Speicher unter Serviceereignis-Meldungen. Dieser Abschnitt befindet sich unter: Service (Service-Name) konnte keine Aufgabe platzieren, da keine Container-Instance alle Voraussetzungen erfüllt hat.
- Wenn die Container-Instance nicht über genügend CPU-Einheiten verfügt, passen Sie die für die Aufgaben benötigte CPU an oder starten Sie weitere Container-Instances in Ihrem Cluster.
Weitere Informationen finden Sie im Abschnitt Nicht genügend CPU unter Serviceereignis-Meldungen. Dieser Abschnitt befindet sich unter Service (Service-Name) konnte keine Aufgabe platzieren, da keine Container-Instance alle Voraussetzungen erfüllt hat. Oder lesen Sie den Artikel Wie löse ich den Fehler „Die am ehesten passende Container-Instance-ID der Container-Instance verfügt über unzureichende CPU-Einheiten“ in Amazon ECS? - Wenn die Container-Instance keine verfügbaren Zuordnungspunkte für Elastic-Network-Schnittstellen hat, fügen Sie Ihrem Cluster weitere Container-Instances hinzu. Weitere Informationen finden Sie im Abschnitt Nicht genügend ENI-Zuordnungspunkte unter Serviceereignis-Meldungen. Dieser Abschnitt befindet sich unter Service (Service-Name) konnte keine Aufgabe platzieren, da keine Container-Instance alle Voraussetzungen erfüllt hat. Wenn das Problem weiterhin besteht, ziehen Sie die Verwendung von awsvpcTrunking in Betracht, um die Dichte der Elastic-Network-Schnittstellen auf Ihren Amazon Elastic Compute Cloud (Amazon EC2)-Instances zu erhöhen.
- Wenn der Container-Instance ein erforderliches Attribut fehlt, lesen Sie den Abschnitt Container-Instance fehlt ein erforderliches Attribut unter Serviceereignis-Meldungen. Dieser Abschnitt befindet sich unter Service (Service-Name) konnte keine Aufgabe platzieren, da keine Container-Instance alle Voraussetzungen erfüllt hat. Um die fehlenden Attribute zu finden, führen Sie den Befehl ecs-cli check-attributes aus:
ecs-cli check-attributes --task-def Task_Definition --container-instances Container_Instance --cluster Cluster_Name
Hinweis: Geben Sie für „Task_Definition Name“ den Namen Ihrer Aufgabendefinition ein. Geben Sie für „Container_Instance“ den Namen Ihrer Container-Instance ein. Geben Sie für „Cluster_Name“ den Namen Ihres Clusters ein.
- Sie können einen Amazon-ECS-Service so konfigurieren, dass er in einem anderen Subnetz als dem Subnetz der Container-Instance ausgeführt wird. In diesem Fall zeigt die Ausgabe des Befehls ecs-cli-check-attributes für fehlende Attribute None an, obwohl die Aufgabe mit der Fehlermeldung „Fehlende Attribute“ scheitert. Vergewissern Sie sich, dass die Subnetze für Ihren Service und die Container-Instance übereinstimmen. Erstellen Sie dazu den Amazon-ECS-Service erneut in dem Subnetz, in dem die Container-Instance angesiedelt ist. Weitere Informationen finden Sie unter Parameter für die Aufgabendefinition und Konfiguration eines Amazon ECS Container Agents.
Führen Sie zum Beispiel den folgenden Test aus:
ecs-cli check-attributes --task-def task:1 --container-instances 650cf1df296749e1bce1b9e0cebb588a --cluster test-cluster
Die Ausgabe sieht etwa so aus:
Container Instance Missing Attributes tes-cluster None
Um weitere Informationen zu erhalten, führen Sie den folgenden Befehl aus:
ecs-cli --help
Relevante Informationen
Relevanter Inhalt
- AWS OFFICIALAktualisiert vor 3 Jahren
- AWS OFFICIALAktualisiert vor 3 Jahren
- AWS OFFICIALAktualisiert vor einem Jahr
- AWS OFFICIALAktualisiert vor 2 Jahren