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.
Amazon ECS Service Quotas und API-Drosselungslimits
Amazon ECS lässt sich in mehrere AWS-Services Systeme integrieren AWS Cloud Map, darunter ELB und Amazon EC2. Durch diese enge Integration umfasst Amazon ECS mehrere Features wie Service Load Balancing, Serviceerkennung, Aufgabennetzwerke und Cluster Auto Scaling. Amazon ECS und das andere AWS-Services , das es in alle integriert, verwalten Service-Kontingente und API-Ratenbegrenzungen, 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.
Wenn Sie sich mit Ihren Servicekontingenten und den AWS API-Ratenbegrenzungen vertraut machen, können Sie die Skalierung Ihrer Workloads planen, ohne sich Gedanken über unerwartete Leistungseinbußen machen zu müssen. Weitere Informationen finden Sie unter Amazon ECS Service Quotas und Drosselung für die Amazon-ECS-API anfordern.
Berücksichtigen Sie bei der Skalierung Ihrer Workloads in Amazon ECS das folgende Servicekontingent. Anweisungen, wie Sie eine Erhöhung der Servicekontingenten beantragen können, finden Sie unter Verwaltung Ihrer Amazon ECS- und AWS Fargate Servicekontingenten in der AWS-Managementkonsole.
-
AWS Fargate verfügt über Kontingente, die jeweils AWS-Region die Anzahl der gleichzeitig ausgeführten Aufgaben begrenzen. 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. Weitere Informationen zu den Fargate-Kontingenten finden Sie unter AWS Fargate Service Quotas im Benutzerhandbuch für Amazon Elastic Container Service für AWS Fargate.
-
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, die keine Erhöhung der Cluster-Kapazität benötigen, 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. Der folgende Abschnitt behandelt die wichtigsten Ratenlimits für jeden Service im Detail und enthält Empfehlungen zum Umgang mit potenziellen Drosselungsproblemen.
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 zur Auswahl eines Load Balancers finden Sie unter Verwenden von Load Balancing zur Verteilung des Amazon-ECS-Service-Datenverkehrs.
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 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.
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, kann es aufgrund der möglichen Drosselung speziell für die ,- und ELB-API-Operationen zu langsameren Servicebereitstellungen RegisterTarget kommenDeregisterTarget. 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, um Hilfe zu erhalten, wie Sie Ihre Support API-Drosselungsgrenzwerte erhöhen können. AWS Cloud Map Weitere Informationen zur Überwachung und Behebung solcher Drosselungsfehler finden Sie unter Umgang mit Drosselungsproblemen.
Elastic-Network-Schnittstelle
Wenn Ihre Aufgaben den awsvpc-Netzwerkmodus verwenden, stellt Amazon ECS für jede Aufgabe eine eigene 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.
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 Trunking mit Elastic-Network-Schnittstellen.
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 Anforderungsdrosselung für die EC2 Amazon-API.
-
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 automatischen Wiederholungsversuche können 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 verwendet AWS Cloud Map APIs , um Namespaces für Ihre Amazon ECS-Services zu verwalten. Wenn Ihre Services eine große Anzahl von Aufgaben haben, sollten Sie die folgenden Empfehlungen berücksichtigen. Weitere Informationen finden Sie unter Überlegungen zur Amazon-ECS-Serviceerkennung.
AWS Cloud Map Service-Kontingente
Wenn Amazon ECS-Services für die Verwendung von Service Discovery 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 reduziert das AWS Cloud Map Service-Kontingent die Anzahl der Aufgaben, die Sie ausführen können, auf maximal 1.000 Aufgaben 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 Umgang mit Drosselungsproblemen.