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.
Bestimmung der Aufgabengröße für Amazon ECS
Eine der wichtigsten Optionen bei der Bereitstellung von Containern in Amazon ECS sind Ihre Container- und Aufgabengrößen. Sowohl Ihre Container- als auch Ihre Aufgabengröße sind für die Skalierung und Kapazitätsplanung von entscheidender Bedeutung.
Amazon ECS verwendet zwei Ressourcenmetriken für Kapazität: CPU und Arbeitsspeicher. Amazon ECS misst CPU in Einheiten von 1/1 024 einer vollen vCPU (wobei 1 024 Einheiten einer ganzen vCPU entsprechen). Amazon ECS misst Arbeitsspeicher in Megabyte.
In Ihrer Aufgabendefinition können Sie Ressourcenreservierungen und -limits angeben.
Wenn Sie eine Reservierung angeben, geben Sie die Mindestmenge an Ressourcen an, die eine Aufgabe benötigt. Ihre Aufgabe erhält mindestens die Menge an Ressourcen, die Sie anfordern. Ihre Anwendung kann möglicherweise mehr CPU oder Arbeitsspeicher beanspruchen als die von Ihnen angegebene Reservierung. Dies unterliegt jedoch allen Limits, die Sie ebenfalls angegeben haben.
Wenn Sie mehr als den Reservierungsbetrag verwenden, wird dies als Bursting bezeichnet. Bursting bedeutet, dass Ihre Anwendung mehr Ressourcen verbraucht, als Sie reserviert haben, aber innerhalb der angegebenen Limits bleibt. Amazon ECS garantiert Reservierungen. Wenn Sie beispielsweise EC2 Amazon-Instances verwenden, um Kapazität bereitzustellen, platziert Amazon ECS keine Aufgabe auf einer Instance, bei der die Reservierung nicht ausgeführt werden kann.
Ein Limit ist die maximale Menge an CPU-Einheiten oder Arbeitsspeicher, die Ihr Container oder Ihre Aufgabe verwenden kann. Wenn Ihr Container versucht, mehr CPU als diesen Grenzwert zu verwenden, drosselt Amazon ECS ihn. Wenn Ihr Container versucht, mehr Arbeitsspeicher als diesen Grenzwert zu verwenden, stoppt Amazon ECS Ihren Container.
Die Auswahl dieser Werte kann eine Herausforderung darstellen. Welche Werte für Ihre Anwendung am besten geeignet sind, hängen stark von den Ressourcenanforderungen Ihrer Anwendung ab.
Auslastungstests Ihrer Anwendung sind der Schlüssel zu einer erfolgreichen Planung des Ressourcenbedarfs. Auslastungstests helfen Ihnen dabei, die Anforderungen Ihrer Anwendung besser zu verstehen.
Statusslose Anwendungen
Für zustandslose Anwendungen, die horizontal skaliert werden, wie z. B. eine Anwendung hinter einem Load Balancer, empfehlen wir, dass Sie zunächst ermitteln, wie viel Arbeitsspeicher Ihre Anwendung bei der Bearbeitung von Anfragen verbraucht.
Zu diesem Zweck können Sie herkömmliche Tools wie ps oder top verwenden. Sie können auch Überwachungslösungen wie CloudWatch Container Insights verwenden.
Wenn Sie eine CPU-Reservierung festlegen, sollten Sie überlegen, wie Sie Ihre Anwendung skalieren möchten, um Ihre Geschäftsanforderungen zu erfüllen.
Sie können kleinere CPU-Reservierungen, wie z. B. 256 CPU-Einheiten (oder 1/4 vCPU), verwenden, um feinkörnig aufzuskalieren und so die Kosten zu minimieren. Ihre Anwendung kann jedoch möglicherweise nicht schnell genug skaliert werden, um erhebliche Nachfragespitzen zu bewältigen.
Sie können größere CPU-Reservierungen verwenden, um schneller auf- und abzuskalieren. Auf diese Weise können Sie Nachfragespitzen schneller ausgleichen. Größere CPU-Reservierungen kosten jedoch mehr.
Andere Anwendungen
Bei Anwendungen, die nicht horizontal skaliert werden können, wie z. B. Singleton Worker oder Datenbankserver, sind die verfügbaren Kapazitäten und Kosten Ihre wichtigsten Überlegungen.
Wählen Sie die Größe des Arbeitsspeichers und der CPU auf der Grundlage der Belastungstests aus, die Sie benötigen, um den Datenverkehr zu bedienen und Ihr Service Level Objectives zu erreichen. Amazon ECS stellt sicher, dass Ihre Anwendung auf einem Host mit ausreichender Kapazität platziert wird.