Unterbrechungsfreie Kapazitätsreservierungen mit EC2 Auto Scaling - Amazon EC2 Auto Scaling

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.

Unterbrechungsfreie Kapazitätsreservierungen mit EC2 Auto Scaling

Bei unterbrechbaren Kapazitätsreservierungen handelt es sich um Kapazitätsreserven, die Ihnen von Eigentümern für On-Demand-Kapazitätsreservierungen innerhalb Ihres Unternehmens zur Verfügung gestellt wurden. AWS Diese Reservierungen eignen sich für unterbrechbare Workloads, da der Kapazitätsinhaber die Kapazität jederzeit zurückfordern kann, indem er eine zweiminütige Unterbrechungsbenachrichtigung einreicht. Danach werden die Instances beendet. Einen Überblick über Reservierungen für unterbrechbare Kapazitäten und deren Funktionsweise finden Sie unter Reservierungen für unterbrechbare Kapazitäten im EC2 Amazon-Benutzerhandbuch.

Zunächst erstellen Sie eine unterbrechbare Reservierung, indem Sie ungenutzte Kapazität aus einer beliebigen On-Demand-Kapazitätsreservierung in Ihrem Konto zuweisen. Als Nächstes erstellen Sie Ihre Startvorlage, geben die Reservierungs-ID für unterbrechbare Kapazitäten und den entsprechenden Markttyp an. Erstellen Sie abschließend Ihre Auto Scaling Scaling-Gruppe, um die von Ihnen erstellte Startvorlage zu verwenden.

Anmerkung
  • Gruppen mit gemischten Instanzen werden bei unterbrechbaren Kapazitätsreservierungen nicht unterstützt.

  • Die Reservierungen für unterbrechbare Kapazitäten werden in Ihrem Konto mit einem neuen Attribut angezeigt, das auf interruptible gesetzt ist. true

Betriebliche Richtlinien

Im Folgenden finden Sie grundlegende betriebliche Richtlinien, die Sie beachten sollten, wenn Sie Unterbrechungskapazitätsreservierungen mit einer Auto Scaling Scaling-Gruppe verwenden.

  • Instances, die aufgrund von Reservierungen für unterbrechbare Kapazität gestartet wurden, können mit einer Frist von 2 Minuten gekündigt werden, wenn die Kapazität zurückgewonnen wird. Entwerfen Sie Ihre Anwendungen so, dass sie problemlos heruntergefahren werden können.

  • Amazon EC2 sendet EventBridge Benachrichtigungen 2 Minuten vor dem Beenden von Instances. Auto Scaling reagiert zwar nicht automatisch auf diese Ereignisse, Sie können jedoch eine benutzerdefinierte Automatisierung einrichten, um auf Unterbrechungsmeldungen zu reagieren.

  • Wenn Instances aufgrund einer Kapazitätsrückgewinnung beendet werden, erkennt der Health Checker von Auto Scaling die Kündigung und startet automatisch Ersatz-Instances entsprechend der Konfiguration Ihrer Gruppe.

  • Um die Konsistenz zu gewährleisten, verweisen Sie auf eine bestimmte Version der Startvorlage statt auf die $Latest Version $Default oder.

Anmerkung

Wenn eine Reservierungsinstanz für unterbrechbare Kapazität zurückerobert wird, wird in den Skalierungsaktivitäten für Ihre Auto Scaling Scaling-Gruppe Folgendes angegeben:. taken out of service in response to an Amazon EC2 health check that indicated it had been terminated or stopped Auto Scaling versucht, die Instance auf dieselbe Weise zu ersetzen, wie es bei jeder Instance der Fall ist, die eine Zustandsprüfung nicht besteht.

Geben Sie in Ihrer Startvorlage eine Reservierung für unterbrechbare Kapazität an

Verwenden Sie eine der folgenden Methoden, um eine Startvorlage zu erstellen, die auf eine bestimmte unterbrechbare Kapazitätsreservierung für Ihre Auto Scaling Scaling-Gruppe abzielt:

Console
Um eine Reservierung für unterbrechbare Kapazitäten in Ihrer Startvorlage (Konsole) anzugeben
  1. Öffnen Sie die EC2 Amazon-Konsole unter https://console.aws.amazon.com/ec2/.

  2. Wählen Sie in der oberen Navigationsleiste den Ort aus, AWS-Region an dem Sie Ihre unterbrechbare Kapazität reserviert haben.

  3. Wählen Sie im Navigationsbereich unter Instances die Option Launch Templates aus.

  4. Wählen Sie Startvorlage erstellen und erstellen Sie die Startvorlage. Geben Sie bei Bedarf die ID des AMI, den Instance-Typ und alle anderen Einstellungen für die Startvorlage an.

  5. Erweitern Sie den Abschnitt Erweiterte Details, um die erweiterten Einstellungen anzuzeigen.

  6. Wählen Sie als Kaufoption die Option Unterbrechungsfreie Kapazitätsreservierung aus.

  7. Wählen Sie für Kapazitätsreservierung die Option Ziel nach ID und dann für Kapazitätsreservierung — Ziel nach ID die Kapazitätsreservierungs-ID einer bestehenden Reservierung für unterbrechbare Kapazität aus.

  8. Klicken Sie danach auf Startvorlage erstellen.

Hilfe zum Erstellen einer Auto Scaling Scaling-Gruppe mit einer Startvorlage finden Sie unterErstellen einer Auto-Scaling-Gruppe mithilfe einer Startvorlage.

AWS CLI
So geben Sie in Ihrer Startvorlage eine Reservierung für unterbrechbare Kapazitäten an ()AWS CLI

Verwenden Sie den folgenden create-launch-templateBefehl, um eine Startvorlage zu erstellen, die eine bestehende Reservierungs-ID für unterbrechbare Kapazitäten angibt. Ersetzen Sie jedes Platzhalter für Benutzereingaben durch Ihre eigenen Informationen.

aws ec2 create-launch-template --launch-template-name my-template-for-interruptible-cr \ --version-description AutoScalingVersion1 --region us-east-2 \ --launch-template-data file://config.json
Tipp

Wenn dieser Befehl einen Fehler auslöst, stellen Sie sicher, dass Sie den Befehl AWS CLI lokal auf die neueste Version aktualisiert haben.

Inhalt von config.json:

{ "ImageId": "ami-04d5cc9b88example", "InstanceType": "t3.nano", "SecurityGroupIds": [ "sg-903004f88example" ], "KeyName": "MyKeyPair", "InstanceMarketOptions": { "MarketType": "interruptible-capacity-reservation" }, "CapacityReservationSpecification": { "CapacityReservationTarget": { "CapacityReservationId": "cr-02168da1478b509e0" } } }

Das Folgende ist eine Beispielausgabe:

{ "LaunchTemplate": { "LaunchTemplateId": "lt-068f72b724example", "LaunchTemplateName": "my-template-for-interruptible-cr", "CreateTime": "2023-10-27T15:12:44.000Z", "CreatedBy": "arn:aws:iam::123456789012:user/Bob", "DefaultVersionNumber": 1, "LatestVersionNumber": 1 } }

Sie können den folgenden describe-launch-template-versionsBefehl verwenden, um die Reservierungs-ID für unterbrechbare Kapazitäten zu überprüfen, die der Startvorlage zugeordnet ist:

aws ec2 describe-launch-template-versions --launch-template-names my-template-for-interruptible-cr \ --region us-east-2
Auto Scaling Scaling-Konfiguration auf Gruppenebene

Sie können optional Einstellungen für die Kapazitätsreservierung auf Auto Scaling Scaling-Gruppenebene angeben, um die Einstellungen der Startvorlage zu überschreiben:

  • Bevorzugte Kapazitätsreservierung: capacity-reservations-only Wird nur für unterbrechbare Kapazitätsreservierungen unterstützt. Die capacity-reservations-first Präferenz wird nicht unterstützt.

  • Zielspezifikation: Sie können auf Gruppenebene eine andere Reservierungs-ID für unterbrechbare Kapazitäten angeben, um die Einstellung für die Startvorlage zu überschreiben.

Einschränkungen

  • Richtlinien für gemischte Instanzen werden bei Reservierungen für unterbrechbare Kapazitäten nicht unterstützt.

  • Sie müssen in Ihrer Startvorlage den richtigen Markttyp (interruptible-capacity-reservation) zusammen mit der Kapazitätsreservierungs-ID angeben.