Kapazitätsausgleich - Amazon Elastic Compute Cloud

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.

Kapazitätsausgleich

Sie können die Spot-Flotte so konfigurieren, dass eine Ersatz-Spot-Instance gestartet wird, wenn Amazon EC2 eine Neuausgleichsempfehlung ausgibt, um Sie darüber zu informieren, dass für eine Spot-Instance ein erhöhtes Unterbrechungsrisiko besteht. Der Kapazitätsausgleich hilft Ihnen, die Verfügbarkeit von Workloads aufrechtzuerhalten, indem Sie Ihre Flotte proaktiv um eine neue Spot-Instance erweitern, bevor eine ausgeführte Instance durch Amazon EC2 unterbrochen wird. Weitere Informationen finden Sie unter Empfehlung zum Neuausgleich einer EC2-Instance.

Um die Spot-Flotte so zu konfigurieren, dass eine Ersatz-Spot-Instance gestartet wird, können Sie die Amazon EC2 Konsole oder die AWS CLI verwenden.

Einschränkungen

  • Die Kapazitätsanpassung ist nur für Flotten des Typs maintain verfügbar.

  • Wenn die Flotte läuft, können Sie die Kapazitätsausgleichs-Einstellung nicht ändern. Um die Einstellung Kapazitätsausgleich zu ändern, müssen Sie die Flotte löschen und eine neue Flotte erstellen.

Konfigurationsoptionen

ReplacementStrategy für die Spot-Flotte unterstützt die folgenden beiden Werte:

launch-before-terminate

Amazon EC2 kann die Spot Instances beenden, die eine Neuausgleichsbenachrichtigung erhalten, nachdem neue Ersatz-Spot-Instances gestartet wurden. Wenn Sie launch-before-terminate angeben, müssen Sie auch einen Wert für termination-delay angeben. Nachdem die neuen Ersatz-Instances gestartet wurden, wartet Amazon EC2 während der Dauer des termination-delay und beendet dann die alten Instances. Für termination-delay beträgt das Minimum 120 Sekunden (2 Minuten) und das Maximum 7 200 Sekunden (2 Stunden).

Wir empfehlen die Verwendung von launch-before-terminate nur, wenn Sie vorhersagen können, wie lange Ihre Verfahren zum Herunterfahren der Instances dauern werden. Dadurch wird sichergestellt, dass die alten Instances erst beendet werden, wenn die Verfahren zum Herunterfahren abgeschlossen sind. Beachten Sie, dass Amazon EC2 die alten Instances mit einer zweiminütigen Warnung vor der termination-delay unterbrechen kann.

launch

Amazon EC2 startet Ersatz-Spot-Instances, wenn eine Neuausgleichsbenachrichtigung für bestehende Spot-Instances ausgegeben wird. Amazon EC2 beendet nicht die Instances, die eine Neuausgleichsbenachrichtigung erhalten. Sie können die alten Instances beenden oder laufen lassen. Ihnen werden alle Instances in Rechnung gestellt, während sie ausgeführt werden.

Überlegungen

Beachten Sie Folgendes, wenn Sie eine Spot-Flotte für Kapazitätsneuausgleich konfigurieren:

Stellen Sie so viele Spot-Kapazitätspools wie möglich in der Anfrage bereit

Konfigurieren Sie Ihre Spot-Flotte für die Verwendung mehrerer Instance-Typen und Availability Zones. Dies bietet die Flexibilität, Spot-Instances in verschiedenen Spot-Kapazitätspools zu starten. Weitere Informationen finden Sie unter Flexibel sein bei Instance-Typen und Availability Zones.

Vermeiden Sie ein erhöhtes Risiko einer Unterbrechung von Ersatz-Spot-Instances

Um ein erhöhtes Risiko einer Unterbrechung zu vermeiden, empfehlen wir die capacityOptimizedPrioritized Zuweisungsstrategie capacityOptimized oder. Diese Strategien stellen sicher, dass Ersatz-Spot-Instances in den optimalen Spot-Kapazitätspools gestartet werden und ihre Unterbrechung in naher Zukunft daher weniger wahrscheinlich ist. Weitere Informationen finden Sie unter Nutzen der preis- und kapazitätsoptimierten Zuweisungsstrategie.

Amazon EC2 startet eine neue Instance nur dann, wenn die Verfügbarkeit gleich oder besser ist

Eines der Ziele des Kapazitätsausgleichs ist die Verbesserung der Verfügbarkeit einer Spot Instance. Wenn eine vorhandene Spot Instance eine Neuausgleichsempfehlung erhält, startet Amazon EC2 nur dann eine neue Instance, wenn die neue Instance dieselbe oder eine bessere Verfügbarkeit als die vorhandene Instance bietet. Wenn das Risiko einer Unterbrechung einer neuen Instance größer ist als das der vorhandenen Instance, startet Amazon EC2 keine neue Instance. Amazon EC2 wird die Spot-Kapazitätspools jedoch weiterhin bewerten und eine neue Instance starten, falls sich die Verfügbarkeit verbessert.

Es besteht die Möglichkeit, dass Ihre vorhandene Instance unterbrochen wird, ohne dass Amazon EC2 pro-aktiv eine neue Instance startet. In diesem Fall versucht Amazon EC2, eine neue Instance zu starten, sobald die Unterbrechungsmeldung für eine Spot Instance eingeht, unabhängig davon, ob bei der neuen Instance ein hohes Unterbrechungsrisiko besteht.

Capacity Rebalancing erhöht nicht die Unterbrechungsrate Ihrer Spot-Instance

Wenn Sie Capacity Rebalancing aktivieren, wird Ihre Spot-Instance-Unterbrechungsrate (die Anzahl der Spot-Instances, die zurückgefordert werden, wenn Amazon EC2 die Kapazität zurück benötigt) nicht erhöht. Wenn der Kapazitätsausgleich jedoch feststellt, dass bei einer Instance das Risiko einer Unterbrechung besteht, versucht Amazon EC2 sofort, eine neue Instance zu starten. Das Ergebnis ist, dass möglicherweise mehr Instances ersetzt werden, als wenn Sie darauf gewartet hätten, dass Amazon EC2 eine neue Instance startet, nachdem die gefährdete Instance unterbrochen wurde.

Sie können zwar mehr Instances mit aktiviertem Capacity Rebalancing ersetzen, jedoch Sie profitieren davon, dass Sie eher proaktiv als reaktiv sind, indem Sie mehr Zeit haben, Maßnahmen zu ergreifen, bevor Ihre Instances unterbrochen werden. Mit einer Spot-Instance-Unterbrechungsbenachrichtigung haben Sie normalerweise nur bis zu zwei Minuten Zeit, um Ihre Instance ordnungsgemäß herunterzufahren. Wenn Capacity Rebalancing eine neue Instance im Voraus startet, geben Sie bestehenden Prozessen eine bessere Chance, sie auf Ihrer gefährdeten Instance abzuschließen. Sie können mit dem Herunterfahren Ihrer Instance beginnen und verhindern, dass neue Arbeiten für Ihre gefährdete Instance geplant werden. Sie können auch damit beginnen, die neu gestartete Instance für die Übernahme der Anwendung vorzubereiten. Mit dem proaktiven Ersetzen durch Capacity Rebalancing profitieren Sie von einer reibungslosen Kontinuität.

Betrachten Sie als theoretisches Beispiel zur Demonstration der Risiken und Vorteile des Einsatzes von Capacity Rebalancing das folgende Szenario:

  • 14:00 Uhr – Für Instance-A wird eine Empfehlung zum erneuten Ausgleich empfangen und Amazon EC2 versucht sofort, eine Ersatz-Instance-B zu starten, sodass Sie Zeit haben, Ihre Shutdown-Verfahren zu starten.*

  • 14:30 Uhr — Für Instance-B wird eine Empfehlung zum erneuten Ausgleich empfangen, die durch Instance-C ersetzt wird, sodass Sie Zeit haben, Ihre Shutdown-Verfahren zu starten.*

  • 14:32 Uhr — Wenn Capacity Rebalancing nicht aktiviert wäre und um 14:32 Uhr eine Benachrichtigung über eine Unterbrechung der Spot-Instance für Instance-A eingegangen wäre, hätten Sie nur bis zu zwei Minuten Zeit gehabt, um Maßnahmen zu ergreifen, währenddessen Instance-A allerdings bis zu diesem Zeitpunkt hochgefahren wäre.

* Wenn launch-before-terminate angegeben ist, beendet Amazon EC2 die gefährdete Instance, nachdem die Ersatz-Instance online geschaltet wurde.

Amazon EC2 kann einen neuen Ersatz Spot-Instances starten, bis die erfüllte Kapazität die doppelte Zielkapazität hat

Wenn ein Spot-Flotte für Kapazitätsneuausgleich konfiguriert wird, versucht Amazon EC2, für jede Spot-Instance, die eine Neuausgleichsempfehlung erhält, eine neue Ersatz-Spot-Instance zu starten. Nachdem eine Spot-Instance eine Neuausgleichsempfehlung erhalten hat, wird sie nicht mehr als Teil der erfüllten Kapazität gezählt. Je nach Ersetzungsstrategie beendet Amazon EC2 die Instance entweder nach einer vorkonfigurierten Beendigungsverzögerung oder lässt sie laufen. Dies gibt Ihnen die Möglichkeit, Neuausgleichsaktionen für die Instance durchzuführen.

Wenn Ihre Flotte die doppelte Zielkapazität erreicht, wird sie keine neuen Ersatz-Instances mehr starten, selbst wenn die Ersatz-Instances selbst eine Empfehlung zum Neuausgleich erhalten.

Angenommen, Sie erstellen Sie eine Spot-Flotte mit einer Zielkapazität von 100 Spot-Instances. Alle Spot Instances erhalten eine Neuausgleichsempfehlung, die dazu führt, dass Amazon EC2 100 Ersatz-Spot-Instances startet. Dadurch wird die Anzahl der erfüllten Spot-Instances auf 200 erhöht, was der doppelten Zielkapazität entspricht. Einige der Ersatz-Instances erhalten eine Neuausgleichsempfehlung, es werden jedoch keine Ersatz-Instances mehr gestartet, da die Flotte die doppelte Zielkapazität nicht überschreiten kann.

Beachten Sie, dass Ihnen alle Instances in Rechnung gestellt werden, während sie ausgeführt werden.

Wir empfehlen Ihnen, die Spot-Flotte so zu konfigurieren, dass Spot-Instances beendet werden, die eine Neuausgleichsempfehlung erhalten.

Wenn Sie Ihre Spot-Flotte für den Kapazitätsausgleich konfigurieren, empfehlen wir Ihnen, launch-before-terminate mit einer angemessenen Beendigungsverzögerung nur dann auszuwählen, wenn Sie vorhersagen können, wie lange die Verfahren zum Herunterfahren der Instances dauern werden. Dadurch wird sichergestellt, dass die alten Instances erst beendet werden, wenn die Verfahren zum Herunterfahren abgeschlossen sind.

Wenn Sie die für die Neuausgleichsempfehlung empfohlenen Instances selbst beenden möchten, empfehlen wir Ihnen, das Signal für die Neuausgleichsempfehlung zu überwachen, das von den Spot-Instances in der Flotte empfangen wird. Durch die Überwachung des Signals können Sie schnell Neuausgleichsaktionen für die betroffenen Instances durchführen, bevor Amazon EC2 sie unterbricht, und dann können Sie sie manuell beenden. Wenn Sie die Instances nicht beenden, bezahlen Sie weiterhin für sie, während sie ausgeführt werden. Amazon EC2 beendet die Instances, die eine Neuausgleichsempfehlung erhalten, nicht automatisch.

Sie können Benachrichtigungen mithilfe von Amazon EventBridge - oder Instance-Metadaten einrichten. Weitere Informationen finden Sie unter Überwachen von Signalen für Neuausgleichsempfehlungen.

Die Spot-Flotte zählt bei der Berechnung der erfüllten Kapazität beim Auf- oder Abskalieren keine Instances, die eine Neuausgleichs-Empfehlung erhalten

Wenn Ihre Spot-Flotte für Kapazitätsneuausgleich konfiguriert ist und Sie die Zielkapazität auf Scale-in oder Scale-out ändern, zählt die Flotte die Instances, die für Neuausgleich markiert sind, nicht zur erfüllten Kapazität.

  • Abskalieren – Wenn Sie die gewünschte Zielkapazität verringern, beendet Amazon EC2 Instances, die nicht für eine Neuverteilung markiert sind, bis die gewünschte Kapazität erreicht ist. Die Instances, die für einen Neuausgleich markiert sind, werden nicht auf die erfüllte Kapazität angerechnet.

    Ein Beispiel: Angenommen, Sie erstellen eine Spot-Flotte mit einer Zielkapazität von 100 Spot Instances. 10 Instances erhalten eine Neuausgleichsempfehlung. Amazon EC2 startet also 10 neue Ersatz-Instances, was zu einer erfüllten Kapazität von 110 Instances führt. Sie reduzieren dann die Zielkapazität auf 50 (abskalieren), aber die erfüllte Kapazität beträgt tatsächlich 60 Instances, da die 10 Instances, die für einen Neuausgleich markiert sind, nicht von Amazon EC2 beendet werden. Sie müssen diese Instances manuell beenden oder Sie können sie laufen lassen.

  • Aufskalieren – Wenn Sie Ihre gewünschte Zielkapazität erhöhen, startet Amazon EC2 neue Instances, bis die gewünschte Kapazität erreicht ist. Die Instances, die für einen Neuausgleich markiert sind, werden nicht auf die erfüllte Kapazität angerechnet.

    Ein Beispiel: Angenommen, Sie erstellen eine Spot-Flotte mit einer Zielkapazität von 100 Spot Instances. 10 Instances erhalten eine Neuausgleichsempfehlung. Amazon EC2 startet also 10 neue Ersatz-Instances, was zu einer erfüllten Kapazität von 110 Instances führt. Sie erhöhen dann die Zielkapazität auf 200 (Erweiterung), aber die erfüllte Kapazität beträgt tatsächlich 210 Instances, da die 10 Instances, die für einen Neuausgleich markiert sind, nicht von der Flotte als Teil der Zielkapazität gezählt werden. Sie müssen diese Instances manuell beenden oder Sie können sie laufen lassen.