Tutorial: Konfigurieren Sie Ihre EC2-Flotte so, dass Instances in Interruptible Capacity Reservations gestartet werden - 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.

Tutorial: Konfigurieren Sie Ihre EC2-Flotte so, dass Instances in Interruptible Capacity Reservations gestartet werden

Dieses Tutorial führt Sie durch die Schritte, die Sie ausführen müssen, damit Ihre EC2-Flotte Instances für Reservierungen mit unterbrechbarer Kapazität startet.

Bei Reservierungen für unterbrechbare Kapazitäten handelt es sich um Kapazitätsreserven, die Ihnen von Inhabern von On-Demand-Kapazitätsreservierungen innerhalb Ihres Unternehmens zur Verfügung gestellt wurden. AWS Diese Reservierungen eignen sich für unterbrechbare Workloads, da der Kapazitätseigentümer die Kapazität jederzeit mit einer zweiminütigen Unterbrechungsbenachrichtigung zurückfordern kann. Danach beendet EC2 die Instances. Weitere Informationen zu Reservierungen für unterbrechbare Kapazitäten finden Sie unter. Reservierungen für unterbrechbare Kapazitäten

Die Zielkapazität der EC2-Flottenanfrage sollte kleiner oder gleich der verfügbaren Kapazität der von Ihnen angestrebten Reservierung für unterbrechbare Kapazitäten sein. Wenn die Zielkapazitätsanforderung die verfügbare Kapazität Ihrer Reservierung für unterbrechbare Kapazitäten überschreitet, startet EC2 Fleet so viele Instances wie möglich und meldet die gestarteten Instances in der API-Antwort.

Instances, die im Rahmen einer Reservierung für unterbrechbare Kapazität ausgeführt werden, laufen weiter, bis Sie sie manuell stoppen oder beenden oder bis der Kapazitätsbesitzer die Kapazität zurückfordert. Wenn der Kapazitätsinhaber die Kapazität zurückfordert, sendet Amazon EC2 2 Minuten vor dem Beenden der Instances eine EventBridge Amazon-Benachrichtigung.

Überlegungen

  • Für das Starten von Instances im Rahmen von Reservationen mit unterbrechbarer instant Kapazität werden nur Anfragen vom Typ EC2-Flotte unterstützt.

  • Die Verwendung von OnDemandTargetCapacity oder SpotTargetCapacity bei gleichzeitiger Einstellung reserved-capacity als DefaultTargetCapacityType wird nicht unterstützt.

  • Wenn Sie mehrere Startvorlagen angeben, die jeweils auf eine andere unterbrechbare Kapazitätsreservierung abzielen, stellt EC2 Fleet Instances für alle passenden Reservierungen bereit.

  • Bei Reservierungen für unterbrechbare Kapazitäten greift EC2 Fleet für den Rest der gewünschten Zielkapazität nicht auf den Start von On-Demand-Instances oder Spot-Instances zurück.

Überprüfen der Berechtigungen

Bevor Sie eine EC2-Flotte erstellen, stellen Sie sicher, dass Sie über eine IAM-Rolle mit den erforderlichen Berechtigungen verfügen. Weitere Informationen finden Sie unter EC2-Flotte-Voraussetzungen.

Um Instances mit einer unterbrechbaren Kapazitätsreservierung zu starten, müssen Sie die folgenden Schritte ausführen:

Schritt 1: Eine Startvorlage erstellen

Verwenden Sie den create-launch-templateBefehl, um eine Startvorlage zu erstellen, in der die Reservierung für unterbrechbare Kapazitäten als Ziel angegeben wird. Legen Sie in der Startvorlage den Wert Ihrer MarketType Reservierung für unterbrechbare Kapazität fest interruptible-capacity-reservation und geben Sie ihn an. CapacityReservationId

Beispiel für eine Konfiguration der Startvorlage:

{ "LaunchTemplateName": "interruptible-cr-launch-template", "LaunchTemplateData": { "InstanceType": "m5.large", "ImageId": "ami-0abcdef1234567890", "CapacityReservationSpecification": { "CapacityReservationTarget": { "CapacityReservationId": "cr-0123456789abcdef0" } }, "InstanceMarketOptions": { "MarketType": "interruptible-capacity-reservation" } } }

Beispielausgabe

{ "LaunchTemplate": { "LaunchTemplateId": "lt-0123456789example", "LaunchTemplateName": "interruptible-cr-launch-template", "CreateTime": "2026-03-12T10:00:00.000Z", "CreatedBy": "arn:aws:iam::123456789012:user/Admin", "DefaultVersionNumber": 1, "LatestVersionNumber": 1 } }

Weitere Informationen finden Sie unter Eine Amazon-EC2-Startvorlage erstellen.

Schritt 2: Konfiguration der EC2-Flotte

Erstellen Sie eine Konfigurationsdatei für die EC2-Flotte, in der die Startvorlage und die Zielkapazität angegeben sind. Die folgende Konfiguration verwendet die Startvorlageinterruptible-cr-launch-template, die Sie in Schritt 1 erstellt haben.

Sie müssen ReservedCapacityOptions with ReservationType set to angeben, interruptible-capacity-reservation wenn Sie reserved-capacity es als verwendenDefaultTargetCapacityType.

Erstellen Sie eine Datei mit dem Namen config.json und dem folgenden Inhalt:

{ "LaunchTemplateConfigs": [ { "LaunchTemplateSpecification": { "LaunchTemplateName": "interruptible-cr-launch-template", "Version": "1" }, "Overrides": [ { "InstanceType": "m5.large", "AvailabilityZone": "us-east-1a" } ] } ], "TargetCapacitySpecification": { "TotalTargetCapacity": 10, "DefaultTargetCapacityType": "reserved-capacity" }, "ReservedCapacityOptions": { "ReservationType": ["interruptible-capacity-reservation"] }, "Type": "instant" }

Die wichtigsten Konfigurationsparameter:

Parameter Description
DefaultTargetCapacityType Wird auf gesetztreserved-capacity, um anzugeben, dass Instances mit reservierter Kapazität gestartet werden sollen.
ReservedCapacityOptions Gibt den Typ der reservierten Kapazität an. Stellen Sie für Reservierungen unterbrechbarer Kapazitäten ReservationType auf ["interruptible-capacity-reservation"] ein.
Type Muss auf instant festgelegt sein. Für Reservierungen unterbrechbarer Kapazitäten werden nur Instant-Flotten unterstützt.

Schritt 3: Starten Sie die Flotte und sehen Sie sich die Ergebnisse an

Verwenden Sie den Befehl create-fleet, um die Flotte zu erstellen:

aws ec2 create-fleet \ --cli-input-json file://config.json

Nachdem Sie die instant Flotte mit der vorherigen Konfiguration erstellt haben, startet EC2 Fleet 10 Instances in der Reservierung für unterbrechbare Kapazitäten, um die Zielkapazität zu erreichen.

Anmerkung

Wenn die Flotte die volle Zielkapazität nicht erreichen kann, umfasst die Antwort die gestarteten Instances und alle Fehler im Zusammenhang mit ungenutzter Kapazität.

Beispielausgabe

{ "FleetId": "fleet-12345678-1234-1234-1234-123456789012", "Instances": [ { "LaunchTemplateAndOverrides": { "LaunchTemplateSpecification": { "LaunchTemplateId": "lt-0123456789example", "Version": "1" }, "Overrides": { "InstanceType": "m5.large", "AvailabilityZone": "us-east-1a" } }, "Lifecycle": "interruptible-capacity-reservation", "InstanceIds": [ "i-0123456789example1", "i-0123456789example2", "i-0123456789example3", "i-0123456789example4", "i-0123456789example5", "i-0123456789example6", "i-0123456789example7", "i-0123456789example8", "i-0123456789example9", "i-0123456789example0" ], "InstanceType": "m5.large", "Platform": "Linux/UNIX" } ], "Errors": [] }

Weitere Informationen finden Sie unter Erstellen einer EC2-Flotte.

Bereinigen

Um keine Gebühren mehr anfallen zu lassen, beenden Sie die Instances, wenn sie nicht mehr benötigt werden. Beachten Sie, dass EC2 auch Instances, die im Rahmen einer unterbrechbaren Kapazitätsreservierung gestartet wurden, automatisch beendet, wenn der Kapazitätsbesitzer die Kapazität zurückfordert.