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.
Verwaltung der Amazon ECS Service Quotas und API-Drosselungslimits
Amazon ECS ist in mehrere Systeme integriert AWS-Services, darunter ELB AWS Cloud Map, und Amazon EC2. Durch diese enge Integration umfasst Amazon ECS mehrere Features wie Service Load Balancing, Service Connect, Task Networking und Cluster Auto Scaling. Amazon ECS und die anderen AWS-Services , mit denen es integriert ist, halten alle Service Quotas und API-Ratenlimits ein, um eine konsistente Leistung und Auslastung zu gewährleisten. Diese Service Quotas verhindern auch, dass versehentlich mehr Ressourcen als benötigt bereitgestellt werden, und schützen vor böswilligen Aktionen, die Ihre Rechnung erhöhen könnten.
Machen Sie sich mit Ihren Servicekontingenten und den AWS API-Ratenbegrenzungen vertraut, sodass Sie die Skalierung Ihrer Workloads planen können, ohne sich Gedanken über unerwartete Leistungseinbußen machen zu müssen. Weitere Informationen finden Sie unter Drosselung für die Amazon-ECS-API anfordern.
Bei der Skalierung Ihrer Workloads in Amazon ECS empfehlen wir, das folgende Servicekontingent zu berücksichtigen.
-
AWS Fargate verfügt über Kontingente, die jeweils die Anzahl der gleichzeitig ausgeführten Aufgaben begrenzen. AWS-Region Es gibt Kontingente sowohl für On-Demand- als auch Fargate-Spot-Aufgaben in Amazon ECS. Jedes Servicekontingent umfasst auch alle Amazon-EKS-Pods, die Sie in Fargate ausführen.
-
Für Aufgaben, die auf EC2 Amazon-Instances ausgeführt werden, beträgt die maximale Anzahl von EC2 Amazon-Instances, die Sie für jeden Cluster registrieren können, 5.000. Wenn Sie Amazon ECS Cluster Auto Scaling mit einem Amazon EC2 Auto Scaling-Gruppenkapazitätsanbieter verwenden oder EC2 Amazon-Instances für Ihren Cluster selbst verwalten, kann dieses Kontingent zu einem Engpass bei der Bereitstellung werden. Wenn Sie mehr Kapazität benötigen, können Sie mehr Cluster erstellen oder eine Erhöhung des Servicekontingents beantragen.
-
Wenn Sie Amazon ECS Cluster Auto Scaling mit einem Amazon EC2 Auto Scaling-Gruppenkapazitätsanbieter verwenden, berücksichtigen Sie bei der Skalierung Ihrer Services das
Tasks in the PROVISIONING state per clusterKontingent. Dieses Kontingent ist die maximale Anzahl von Aufgaben imPROVISIONING-Status für jeden Cluster, für die Kapazitätsanbieter die Kapazität erhöhen können. Wenn Sie eine große Anzahl von Aufgaben gleichzeitig starten, können Sie dieses Kontingent problemlos einhalten. Ein Beispiel ist die gleichzeitige Bereitstellung von Dutzenden von Services mit jeweils Hunderten von Aufgaben. In diesem Fall muss der Kapazitätsanbieter neue Container-Instances starten, um die Aufgaben zu platzieren, wenn der Cluster nicht genügend Kapazität hat. Während der Kapazitätsanbieter weitere EC2 Amazon-Instances startet, wird der Amazon ECS-Service Scheduler wahrscheinlich weiterhin Aufgaben parallel starten. Diese Aktivität kann jedoch aufgrund unzureichender Cluster-Kapazität gedrosselt werden. Amazon ECS Service Scheduler implementiert ein Back-off und eine exponentielle Drosselungsstrategie, mit der versucht wird, Aufgaben erneut zu platzieren, wenn neue Container-Instances gestartet werden. Infolgedessen kann es zu langsameren Bereitstellungs- oder Aufskalierungszeiten kommen. Um diese Situation zu vermeiden, können Sie Ihre Servicebereitstellungen in einer der folgenden Arten planen. Stellen Sie entweder eine große Anzahl von Aufgaben bereit, ohne dass die Cluster-Kapazität erhöht werden muss, oder Sie behalten freie Cluster-Kapazität für den Start neuer Aufgaben.
Berücksichtigen Sie bei der Skalierung Ihrer Workloads nicht nur das Amazon ECS-Servicekontingent, sondern auch das Servicekontingent für die anderen AWS-Services , die in Amazon ECS integriert sind.
ELB
Sie können Ihre Amazon ECS-Services so konfigurieren, dass ELB verwendet wird, um den Datenverkehr gleichmäßig auf die Aufgaben zu verteilen. Weitere Informationen und empfohlene bewährte Methoden für die Auswahl eines Load Balancer finden Sie unter Verwenden Sie Load Balancing, um den Amazon ECS-Serviceverkehr zu verteilen.
ELB-Servicekontingente
Wenn Sie Ihre Workloads skalieren, sollten Sie die folgenden ELB-Dienstkontingente berücksichtigen. Die meisten ELB-Dienstkontingente sind anpassbar, und Sie können eine Erhöhung in der Service Quotas-Konsole beantragen.
Application Load Balancer
Wenn Sie einen Application Load Balancer verwenden, müssen Sie je nach Anwendungsfall möglicherweise für die Folgenden Kontingente eine Erhöhung beantragen:
-
Das
Targets per Application Load Balancer-Kontingent, das die Anzahl der Ziele hinter Ihrem Application Load Balancer darstellt. -
Das
Targets per Target Group per Region-Kontingent, das die Anzahl der Ziele hinter Ihren Zielgruppen darstellt.
Weitere Informationen finden Sie unter Kontingente für Ihre Application Load Balancer im Benutzerhandbuch für Application Load Balancer..
Network Load Balancer
Die Anzahl der Ziele, die Sie bei einem Network Load Balancer registrieren können, ist strenger begrenzt. Wenn Sie einen Network Load Balancer verwenden, werden Sie häufig die zonenübergreifende Unterstützung aktivieren wollen, was zusätzliche Skalierungsbeschränkungen für Targets per Availability Zone Per
Network Load Balancer die maximale Anzahl von Zielen pro Availability Zone für jeden Network Load Balancer mit sich bringt. Weitere Informationen finden Sie unter Kontingente für Ihre Network Load Balancer im Benutzerhandbuch für Network Load Balancer.
ELB-API-Drosselung
Wenn Sie einen Amazon-ECS-Service für die Verwendung eines Load Balancers konfigurieren, müssen die Zustandsprüfungen der Zielgruppe bestanden werden, bevor der Service als fehlerfrei eingestuft wird. Für die Durchführung dieser Zustandsprüfungen ruft Amazon ECS in Ihrem Namen ELB-API-Operationen auf. Wenn Sie in Ihrem Konto eine große Anzahl von Diensten mit Load Balancern konfiguriert haben, können Sie die Servicebereitstellung aufgrund möglicher Drosselungen speziell für die RegisterTarget DeregisterTarget ,- und ELB-API-Operationen verlangsamen. DescribeTargetHealth Wenn eine Drosselung auftritt, treten Drosselungsfehler in Ihren Service-Ereignismeldungen für Amazon ECS auf.
Wenn bei Ihnen eine AWS Cloud Map API-Drosselung auftritt, können Sie sich an uns wenden Support , um Hilfe zu erhalten, wie Sie Ihre API-Drosselungsgrenzen erhöhen können. AWS Cloud Map Weitere Informationen zur Überwachung und Behebung solcher Drosselungsfehler finden Sie unter Probleme mit der Drosselung von Amazon ECS beheben.
Elastic-Network-Schnittstelle
Wenn Ihre Aufgaben den awsvpc-Netzwerkmodus verwenden, stellt Amazon ECS für jede Aufgabe eine eindeutige Elastic-Network-Schnittstelle (ENI) bereit. Wenn Ihre Amazon ECS-Services einen ELB-Load Balancer verwenden, werden diese Netzwerkschnittstellen auch als Ziele für die entsprechende, im Service definierte Zielgruppe registriert.
Service Quotas für Elastic-Network-Schnittstellen
Wenn Sie Aufgaben ausführen, die den awsvpc-Netzwerkmodus verwenden, wird jeder Aufgabe eine eindeutige Elastic-Network-Schnittstelle zugewiesen. Wenn diese Aufgaben über das Internet erreicht werden müssen, weisen Sie der Elastic-Network-Schnittstelle für diese Aufgaben eine öffentliche IP-Adresse zu. Wenn Sie Ihre Amazon-ECS-Workloads skalieren, sollten Sie diese beiden wichtigen Kontingente berücksichtigen:
-
Das
Network interfaces per RegionKontingent, das die maximale Anzahl von Netzwerkschnittstellen in einem AWS-Region für Ihr Konto ist. -
Das
Elastic IP addresses per Region-Kontingent, das die maximale Anzahl elastischer IP-Adressen in einer AWS-Region darstellt.
Beide Service Quotas sind anpassbar, und Sie können für diese über Ihre Service-Quotas-Konsole eine Erhöhung beantragen. Weitere Informationen finden Sie unter Amazon VPC Service Quotas im Benutzerhandbuch von Amazon Virtual Private Cloud.
Bei Amazon ECS-Workloads, die auf EC2 Amazon-Instances gehostet werden, sollten Sie bei der Ausführung von Aufgaben, die den awsvpc Netzwerkmodus verwenden, das Maximum network
interfaces Service-Kontingent, die maximale Anzahl von Netzwerk-Instances für jede EC2 Amazon-Instance, berücksichtigen. Dieses Kontingent begrenzt die Anzahl der Aufgaben, die Sie auf einer Instance platzieren können. Sie können das Kontingent nicht anpassen und es ist in der Service-Quotas-Konsole nicht verfügbar. Weitere Informationen finden Sie unter IP-Adressen pro Netzwerkschnittstelle pro Instance-Typ im EC2 Amazon-Benutzerhandbuch.
Sie können zwar nicht die Anzahl der Netzwerkschnittstellen ändern, die an eine EC2 Amazon-Instance angehängt werden können, aber Sie können die elastic network interface Trunking-Funktion verwenden, um die Anzahl der verfügbaren Netzwerkschnittstellen zu erhöhen. Zum Beispiel kann eine c5.large-Instance standardmäßig bis zu drei Netzwerkschnittstellen aufweisen. Die primäre Netzwerkschnittstelle für die Instance zählt dazu. Sie können also zwei zusätzliche Netzwerkschnittstellen an die Instance anhängen. Da jede Aufgabe, die den Netzwerkmodus awsvpc verwendet, eine Netzwerkschnittstelle benötigt, können Sie nur zwei solcher Aufgaben auf diesem Instance-Typ ausführen. Dies kann zu einer Unterauslastung Ihrer Cluster-Kapazität führen. Wenn Sie Elastic Network Interface Trunking aktivieren, können Sie die Netzwerkschnittstellendichte erhöhen, um eine größere Anzahl von Aufgaben auf jeder Instance zu platzieren. Wenn Trunking aktiviert ist, kann eine c5.large-Instance bis zu 12 Netzwerkschnittstellen haben. Die Instance verfügt über die primäre Netzwerkschnittstelle und Amazon ECS erstellt und hängt eine „Trunk“-Netzwerkschnittstelle an die Instance an. Daher können Sie mit dieser Konfiguration 10 Aufgaben auf der Instance ausführen, anstatt die standardmäßigen zwei Aufgaben. Weitere Informationen finden Sie unter Erhöhung der Netzwerkschnittstellen für Linux-Container-Instances von Amazon ECS.
API-Drosselung der Elastic-Network-Schnittstelle
Wenn Sie Aufgaben ausführen, die den awsvpc Netzwerkmodus verwenden, stützt sich Amazon ECS auf den folgenden Amazon EC2 APIs. Jeder von ihnen APIs hat unterschiedliche API-Drosselungen. Weitere Informationen finden Sie unter Request Throttling for the Amazon EC2 API in der Amazon EC2 API-Referenz.
-
CreateNetworkInterface
-
AttachNetworkInterface
-
DetachNetworkInterface
-
DeleteNetworkInterface
-
DescribeNetworkInterfaces
-
DescribeVpcs
-
DescribeSubnets
-
DescribeSecurityGroups
-
DescribeInstances
Wenn die EC2 Amazon-API-Aufrufe während der Bereitstellungsworkflows für elastic network interface Netzwerkschnittstellen gedrosselt werden, versucht der Amazon ECS-Service Scheduler es automatisch mit exponentiellen Back-offs erneut. Diese automatische Außerbetriebnahme kann manchmal zu Verzögerungen beim Starten von Aufgaben führen, was wiederum zu langsameren Bereitstellungsgeschwindigkeiten führt. Wenn es zu einer API-Drosselung kommt, wird die entsprechende Nachricht Operations are being
throttled. Will try again later. in Ihren Service-Ereignismeldungen angezeigt. Wenn Sie die EC2 Amazon-API-Drosselungen regelmäßig einhalten, können Sie sich an uns wenden Support , um Unterstützung zu erhalten, wie Sie Ihre API-Drosselungsgrenzen erhöhen können. Weitere Informationen zur Überwachung und Behebung von Drosselungsfehlern finden Sie unter Umgang mit Drosselungsproblemen.
AWS Cloud Map
Amazon ECS Service Discovery und Service Connect werden AWS Cloud Map APIs zur Verwaltung von Namespaces für Ihre Amazon ECS-Services verwendet. Wenn Ihre Services eine große Anzahl von Aufgaben haben, sollten Sie die folgenden Empfehlungen berücksichtigen.
AWS Cloud Map Service-Kontingente
Wenn Amazon ECS-Services für die Verwendung von Service Discovery oder Service Connect konfiguriert sind, wird das Tasks per service Kontingent, das die maximale Anzahl von Aufgaben für den Service darstellt, von dem AWS Cloud Map Instances per service Service-Kontingent beeinflusst, das die maximale Anzahl von Instances für diesen Service darstellt. Insbesondere verringert das AWS Cloud Map -Servicekontingent die Anzahl der Instances, die Sie ausführen können, auf maximal 1 000 Instances pro Service. Sie können das AWS Cloud Map Kontingent nicht ändern. Weitere Informationen finden Sie unter AWS Cloud Map
-Servicekontingente.
AWS Cloud Map API-Drosselung
Amazon ECS ruft das ListInstancesGetInstancesHealthStatus,RegisterInstance, und in Ihrem Namen DeregisterInstance AWS Cloud Map APIs auf. Diese APIs helfen bei der Serviceerkennung und führen Zustandsprüfungen durch, wenn Sie eine Aufgabe starten. Wenn mehrere Services, die Service Discovery mit einer großen Anzahl von Aufgaben verwenden, gleichzeitig bereitgestellt werden, kann dies zu einer Überschreitung der AWS Cloud Map API-Drosselungsgrenzen führen. In diesem Fall werden Sie wahrscheinlich die folgende Meldung sehen: Operations are being throttled. Will try again later in Ihren Amazon ECS-Serviceereignismeldungen und langsamere Bereitstellungs- und Taskstartgeschwindigkeit. AWS Cloud Map dokumentiert keine Drosselungsgrenzen für diese. APIs Wenn Sie aufgrund dieser Einschränkungen eine Drosselung feststellen, können Sie sich an uns wenden, um Hilfe Support zur Erhöhung Ihrer API-Drosselungsgrenzen zu erhalten. Weitere Empfehlungen zur Überwachung und Behebung solcher Drosselungsfehler finden Sie unter Probleme mit der Drosselung von Amazon ECS beheben.