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-Servicekontingente und API-Drosselungslimits
Amazon ECS lässt sich in mehrere AWS-Services Systeme integrieren, darunter Elastic Load Balancing und Amazon EC2. AWS Cloud Map Durch diese enge Integration umfasst Amazon ECS mehrere Funktionen wie Service Load Balancing, Service Discovery, Task Networking und auto Clusterskalierung. 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 Servicekontingente 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-Servicekontingente und Anforderungsdrosselung für die Amazon ECS-API.
Beachten Sie bei der Skalierung Ihrer Workloads auf Amazon ECS die folgende Servicequote. 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 Management Console.
-
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-Aufgaben als auch für Fargate Spot-Aufgaben auf Amazon ECS. Jedes Servicekontingent umfasst auch alle Amazon EKS-Pods, die Sie auf Fargate ausführen. Weitere Informationen zu den Fargate-Kontingenten finden Sie unter AWS Fargate Service-Kontingente im Amazon Elastic Container Service-Benutzerhandbuch 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 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 der Servicekontingenten beantragen.
-
Wenn Sie Amazon ECS-Cluster Auto Scaling mit einem Auto Scaling-Gruppenkapazitätsanbieter verwenden, berücksichtigen Sie bei der Skalierung Ihrer Services das
Tasks in the PROVISIONING state per cluster
Kontingent. Dieses Kontingent ist die maximale Anzahl von Aufgaben imPROVISIONING
Bundesstaat 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 Diensten 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 Clusterkapazität gedrosselt werden. Der Amazon ECS Service Scheduler implementiert eine Back-off- und exponentielle Drosselungsstrategie, mit der versucht wird, Aufgaben erneut zu platzieren, wenn neue Container-Instances gestartet werden. Infolgedessen kann es zu langsameren Bereitstellungs- oder Skalierungszeiten kommen. Um diese Situation zu vermeiden, können Sie Ihre Servicebereitstellungen auf eine der folgenden Arten planen. Stellen Sie entweder eine große Anzahl von Aufgaben bereit, für die keine Erhöhung der Clusterkapazität erforderlich ist, oder behalten Sie Clusterkapazität für den Start neuer Aufgaben frei.
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.
Elastic Load Balancing
Sie können Ihre Amazon ECS-Services so konfigurieren, dass Elastic Load Balancing verwendet wird, um den Traffic 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-Serviceverkehrs.
Elastic Load Balancing Balancing-Dienstkontingente
Wenn Sie Ihre Workloads skalieren, sollten Sie die folgenden Elastic Load Balancing Service-Kontingente berücksichtigen. Die meisten Elastic Load Balancing Balancing-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 eine Erhöhung des Kontingents beantragen für:
-
Das
Targets per Application Load Balancer
Kontingent, das die Anzahl der Ziele hinter Ihrem Application Load Balancer darstellt. -
Die
Targets per Target Group per Region
Quote, die der Anzahl der Ziele hinter Ihren Zielgruppen entspricht.
Weitere Informationen finden Sie unter Kontingente für Ihre 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, möchten Sie häufig die zonenübergreifende Unterstützung aktivieren, 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.
Drosselung der Elastic Load Balancing Balancing-API
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 Elastic Load Balancing API-Operationen auf. Wenn Sie in Ihrem Konto eine große Anzahl von Diensten mit Load Balancern konfiguriert haben, kann es zu langsameren Servicebereitstellungen kommen, da es speziell für die API-OperationenRegisterTarget
,DeregisterTarget
, und DescribeTargetHealth
Elastic Load Balancing zu einer möglichen Drosselung kommen kann. Wenn eine Drosselung auftritt, treten Drosselungsfehler in Ihren Amazon ECS-Serviceereignismeldungen auf.
Wenn Sie eine AWS Cloud Map API-Drosselung feststellen, 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 Umgang mit Drosselungsproblemen.
Elastic-Network-Schnittstelle
Wenn Ihre Aufgaben den awsvpc
Netzwerkmodus verwenden, stellt Amazon ECS für jede Aufgabe eine eigene elastic network interface (ENI) bereit. Wenn Ihre Amazon ECS-Services einen Elastic Load Balancing Load Balancer verwenden, werden diese Netzwerkschnittstellen auch als Ziele für die entsprechende, im Service definierte Zielgruppe registriert.
Service-Kontingente für elastische Netzwerkschnittstellen
Wenn Sie Aufgaben ausführen, die den awsvpc
Netzwerkmodus verwenden, wird jeder Aufgabe eine eindeutige elastic network interface zugewiesen. Wenn diese Aufgaben über das Internet erreicht werden müssen, weisen Sie der elastic network interface 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 Region
Kontingent, 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 einem darstellt AWS-Region.
Beide Service Quotas sind anpassbar, und Sie können für diese über Ihre Servicekontingenta-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 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. Beispielsweise kann eine c5.large
Instance standardmäßig bis zu drei Netzwerkschnittstellen haben. Die primäre Netzwerkschnittstelle für die Instance zählt dazu. Sie können also zwei weitere Netzwerkschnittstellen an die Instanz anhängen. Da für jede Aufgabe, die den awsvpc
Netzwerkmodus verwendet, eine Netzwerkschnittstelle erforderlich ist, können Sie für diesen Instance-Typ in der Regel nur zwei solcher Aufgaben ausführen. Dies kann zu einer Unterauslastung Ihrer Clusterkapazitä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 hat die primäre Netzwerkschnittstelle und Amazon ECS erstellt und fügt der Instance eine „Trunk“ -Netzwerkschnittstelle hinzu. 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 Elastic Network Interface Trunking.
Drosselung der API für elastische Netzwerkschnittstellen
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 Wiederholungen 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 Meldung in Ihren Service-Event-Meldungen Operations are being
throttled. Will try again later.
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 Service Discovery.
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 ListInstances
GetInstancesHealthStatus
,RegisterInstance
, und in Ihrem Namen DeregisterInstance
AWS Cloud Map APIs auf. Sie helfen bei der Serviceerkennung und führen Integritätsprüfungen durch, wenn Sie eine Aufgabe starten. Wenn mehrere Dienste, 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.