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.
Übersicht über die Einrichtung für die Erstellung einer gemischten Instance-Gruppe
Dieses Thema bietet einen Überblick und bewährte Methoden für die Erstellung einer gemischten Auto Scaling Scaling-Instanzgruppe.
Inhalt
Übersicht
Es gibt zwei Möglichkeiten zum Erstellen einer Instances-Gruppe mit gemischten Instances:
-
Attributbasierte Auswahl des Instance-Typs — Definieren Sie Ihre Rechenanforderungen, sodass Ihre Instance-Typen automatisch auf der Grundlage ihrer spezifischen Instance-Attribute ausgewählt werden.
-
Manuelle Auswahl des Instance-Typs — Wählen Sie manuell die Instance-Typen aus, die zu Ihrem Workload passen.
Flexibilität bezüglich der Instance-Größe
Um die Verfügbarkeit zu erhöhen, stellen Sie Ihre Anwendung für mehrere Instance-Typen bereit. Es hat sich bewährt, mehrere Instance-Typen zu verwenden, um die Kapazitätsanforderungen zu erfüllen. Auf diese Weise kann Amazon EC2 Auto Scaling einen anderen Instance-Typ starten, wenn die Instance-Kapazität in den von Ihnen ausgewählten Availability Zones nicht ausreicht.
Wenn die Instance-Kapazität mit Spot-Instances nicht ausreicht, versucht Amazon EC2 Auto Scaling weiterhin, von anderen Spot-Instance-Pools aus zu starten. (Die verwendeten Pools hängen von den von Ihnen ausgewählten Instance-Typen und der Zuweisungsstrategie ab.) Amazon EC2 Auto Scaling hilft Ihnen dabei, die Kosteneinsparungen von Spot-Instances zu nutzen, indem Sie sie anstelle von On-Demand-Instances starten.
Wir empfehlen, für jeden Workload über mindestens 10 Instance-Typen hinweg flexibel zu sein. Beschränken Sie sich bei der Auswahl Ihrer Instance-Typen nicht auf die beliebtesten neuen Instance-Typen. Die Wahl von Instance-Typen der früheren Generation führt in der Regel zu weniger Spot-Unterbrechungen, da sie von On-Demand-Kunden weniger nachgefragt werden.
Flexibilität bezüglich der Availability Zone
Wir empfehlen dringend, dass Sie Ihre Auto Scaling-Gruppe auf mehrere Availability Zones verteilen. Mit mehreren Availability Zones können Sie Anwendungen entwerfen, die automatisch zwischen den Zonen umschalten, um die Ausfallsicherheit zu erhöhen.
Ein zusätzlicher Vorteil ist, dass Sie im Vergleich zu Gruppen in einer einzelnen Availability Zone auf einen größeren EC2 Amazon-Kapazitätspool zugreifen können. Da die Kapazität für jeden Instance-Typ in jeder Availability Zone unabhängig schwankt, können Sie oft mehr Rechenkapazität mit Flexibilität sowohl für den Instance-Typ als auch für die Availability Zone erhalten.
Weitere Informationen zur Verwendung mehrerer Availability Zones finden Sie unter Beispiel: Aufteilen von Instances in mehrere Availability Zones.
Maximaler Spotpreis
Wenn Sie Ihre Auto Scaling Scaling-Gruppe mit dem AWS CLI oder einem SDK erstellen, können Sie den SpotMaxPrice
Parameter angeben. Der SpotMaxPrice
-Parameter bestimmt den Höchstpreis, den Sie für eine Spot-Instance-Stunde zu zahlen bereit sind.
Wenn Sie den WeightedCapacity
-Parameter in Ihren Overrides (oder "DesiredCapacityType": "vcpu"
oder "DesiredCapacityType":
"memory-mib"
auf Gruppenebene) angeben, stellt der Höchstpreis den maximalen Einzelpreis dar, nicht den Höchstpreis für eine ganze Instance.
Wir empfehlen ausdrücklich, keinen Höchstpreis anzugeben. Ihre Anwendung läuft möglicherweise nicht, wenn Sie keine Spot-Instances erhalten, z. B. wenn Ihr Höchstpreis zu niedrig ist. Wenn Sie keinen Höchstpreis angeben, entspricht der Standardhöchstpreis dem On-Demand-Preis. Sie zahlen nur den Spot-Preis für Spot-Instances, die Sie starten. Sie erhalten weiterhin die hohen Rabatte von Spot Instances. Diese Rabatte sind dank der stabilen Spot-Preise des Spot-Preismodells
Proaktiver Kapazitätsausgleich
Wenn Ihr Anwendungsfall dies zulässt, empfehlen wir Capacity Rebalancing (Kapazitätsausgleich). Der Kapazitätsausgleich hilft Ihnen, die Verfügbarkeit von Workloads aufrechtzuerhalten, indem Sie Ihre Flotte proaktiv um eine neue Spot-Instance erweitern, bevor eine laufende Spot-Instance eine zweiminütige Spot-Instance-Unterbrechungsbenachrichtigung erhält.
Wenn Capacity Rebalancing aktiviert ist, versucht Amazon EC2 Auto Scaling, Spot-Instances, die eine Empfehlung zur Neuverteilung erhalten haben, proaktiv zu ersetzen. Dies bietet Ihnen die Möglichkeit, Ihre Arbeitslast auf neue Spot-Instances zu verlagern, bei denen kein erhöhtes Risiko einer Unterbrechung besteht.
Weitere Informationen finden Sie unter Verwenden Sie Capacity Rebalancing, um Amazon EC2 Spot-Unterbrechungen zu bewältigen.
Skalierungsverhalten
Wenn Sie eine gemischte Instance-Gruppe erstellen, werden standardmäßig On-Demand-Instances verwendet. Um Spot-Instances verwenden zu können, müssen Sie den Prozentsatz der Gruppe ändern, die als On-Demand-Instances gestartet werden soll. Sie können eine beliebige Zahl zwischen 0 und 100 als On-Demand-Prozentsatz angeben.
Optional können Sie auch eine Basisanzahl von On-Demand-Instances festlegen, mit der begonnen werden soll. Wenn Sie dies tun, wartet Amazon EC2 Auto Scaling mit dem Start von Spot-Instances, bis die Basiskapazität von On-Demand-Instances aktiviert ist, wenn die Gruppe skaliert wird. Für alles außerhalb der Basiskapazität werden die On-Demand-Prozentsätze verwendet, um zu bestimmen, wie viele On-Demand-Instances und Spot-Instances gestartet werden sollen.
Amazon EC2 Auto Scaling rechnet den Prozentsatz in die entsprechende Anzahl von Instances um. Wenn das Ergebnis eine Bruchzahl ergibt, wird zugunsten der On-Demand-Instances auf die nächste Ganzzahl aufgerundet.
Die folgende Tabelle veranschaulicht das Verhalten der Auto-Scaling-Gruppe, wenn sie sich vergrößert oder verkleinert.
Kaufoptionen | Gruppengröße und Anzahl der laufenden Instances bei allen Kaufoptionen | |||
---|---|---|---|---|
10 | 20 | 30 | 40 | |
Beispiel 1: Basis von 10, 50/50% On-Demand/Spot |
||||
On-Demand-Instances (Grundmenge) | 10 | 10 | 10 | 10 |
On-Demand Instances | 0 | 5 | 10 | 15 |
Spot Instances | 0 | 5 | 10 | 15 |
Beispiel 2: Basis von 0, 0/100% On-Demand/Spot |
||||
On-Demand-Instances (Grundmenge) | 0 | 0 | 0 | 0 |
On-Demand Instances | 0 | 0 | 0 | 0 |
Spot Instances | 10 | 20 | 30 | 40 |
Beispiel 3: Basis von 0, 60/40% On-Demand/Spot |
||||
On-Demand-Instances (Grundmenge) | 0 | 0 | 0 | 0 |
On-Demand Instances | 6 | 12 | 18 | 24 |
Spot Instances | 4 | 8 | 12 | 16 |
Beispiel 4: Basis von 0, 100/0% On-Demand/Spot |
||||
On-Demand-Instances (Grundmenge) | 0 | 0 | 0 | 0 |
On-Demand Instances | 10 | 20 | 30 | 40 |
Spot Instances | 0 | 0 | 0 | 0 |
Beispiel 5: Basis von 12, 0/100% On-Demand/Spot |
||||
On-Demand-Instances (Grundmenge) | 10 | 12 | 12 | 12 |
On-Demand Instances | 0 | 0 | 0 | 0 |
Spot Instances | 0 | 8 | 18 | 28 |
Wenn die Gruppengröße zunimmt, versucht Amazon EC2 Auto Scaling, Ihre Kapazität gleichmäßig auf Ihre angegebenen Availability Zones zu verteilen. Anschließend startet es Instance-Typen entsprechend der angegebenen Zuweisungsstrategie.
Wenn die Gruppengröße abnimmt, identifiziert Amazon EC2 Auto Scaling zunächst, welcher der beiden Typen (Spot oder On-Demand) beendet werden sollte. Anschließend wird versucht, Instances auf ausgewogene Weise über Ihre angegebenen Availability Zones hinweg zu beenden. Außerdem wird die Beendigung von Instances auf eine Weise begünstigt, die Ihren Allokationsstrategien näher kommt. Weitere Informationen zu den Richtlinien zum Beenden finden Sie unter Kündigungsrichtlinien für Amazon EC2 Auto Scaling konfigurieren.
Regionale Verfügbarkeit von Instance-Typen
Die Verfügbarkeit von EC2 Instance-Typen hängt von Ihrem ab AWS-Region. So kann es beispielsweise sein, dass die neueste Generation von Instance-Typen in einer bestimmten Region noch nicht verfügbar ist. Aufgrund der regionalen Unterschiede bei der Instance-Verfügbarkeit können Probleme auftreten, sobald Sie programmatische Anfragen stellen, wenn mehrere Instance-Typen in Ihren Overrides in Ihrer Region nicht verfügbar sind. Die Verwendung mehrerer Instance-Typen, die in Ihrer Region nicht verfügbar sind, kann dazu führen, dass die Anfrage vollständig fehlschlägt. Um das Problem zu lösen, wiederholen Sie die Anfrage mit verschiedenen Instance-Typen und stellen Sie sicher, dass jeder Instance-Typ in der Region verfügbar ist. Verwenden Sie den describe-instance-type-offerings
Zugehörige Ressourcen
Weitere Best Practices für Spot-Instances finden Sie unter Bewährte Methoden für EC2 Spot im EC2 Amazon-Benutzerhandbuch.
Einschränkungen
Nachdem Sie einer Auto Scaling Scaling-Gruppe mithilfe einer Richtlinie für gemischte Instanzen Overrides hinzugefügt haben, können Sie die Overrides mit dem UpdateAutoScalingGroup
API-Aufruf aktualisieren, aber nicht löschen. Um die Überschreibungen vollständig zu entfernen, müssen Sie zunächst die Auto Scaling Scaling-Gruppe so ändern, dass sie eine Startvorlage oder eine Startkonfiguration anstelle einer Richtlinie für gemischte Instanzen verwendet. Anschließend können Sie erneut eine Richtlinie für gemischte Instanzen ohne Überschreibungen hinzufügen.