Arbeiten mit Kapazitätsreservierungsflotten - 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.

Arbeiten mit Kapazitätsreservierungsflotten

Bevor Sie beginnen

Bevor Sie eine Kapazitätsreservierungsflotte erstellen:

  1. Bestimmen Sie die Höhe der Rechenkapazität, die Ihre Workload erfordert.

  2. Legen Sie die zu verwendenden Instance-Typen und Availability Zones fest.

  3. Weisen Sie jedem Instance-Typ eine Priorität zu, die auf Ihren Anforderungen und Einstellungen basiert. Weitere Informationen finden Sie unter Instance-Typ-Priorität.

  4. Erstellen Sie ein für Ihre Workload sinnvolles Kapazitätsgewichtungssystem. Weisen Sie jedem Instance-Typ eine Gewichtung zu und bestimmen Sie die Gesamtzielkapazität. Weitere Informationen finden Sie unter Instance-Typ-Gewichtung und Gesamtzielkapazität.

  5. Bestimmen Sie, ob Sie die Kapazitätsreservierung auf unbestimmte Zeit oder nur für einen bestimmten Zeitraum benötigen.

Zustände von Kapazitätsreservierungsflotten

Eine Kapazitätsreservierungsflotte kann sich in einem der folgenden Zustände befinden:

  • submitted – die Anforderung für die Kapazitätsreservierungsflotte wurde übermittelt und Amazon EC2 bereitet sich auf die Erstellung der Kapazitätsreservierungen vor.

  • modifying – die Kapazitätsreservierungsflotte wird gerade geändert. Die Flotte bleibt in diesem Zustand, bis die Änderung abgeschlossen ist.

  • active – die Kapazitätsreservierungsflotte hat ihre Gesamtzielkapazität erreicht und versucht, diese Kapazität beizubehalten. Die Flotte bleibt so lange in diesem Zustand, bis sie geändert oder gelöscht wird.

  • partially_fulfilled – die Kapazitätsreservierungsflotte hat ihre Gesamtzielkapazität teilweise erfüllt. Es ist nicht genügend Amazon-EC2-Kapazität vorhanden, um die Gesamtzielkapazität zu erfüllen. Die Flotte versucht, ihre Gesamtzielkapazität asynchron zu erfüllen.

  • expiring – die Kapazitätsreservierungsflotte hat ihr Enddatum erreicht und läuft gerade ab. Eine oder mehrere ihrer Kapazitätsreservierungen sind möglicherweise noch aktiv.

  • expired – die Kapazitätsreservierungsflotte hat ihr Enddatum erreicht. Die Flotte und ihre Kapazitätsreservierungen sind abgelaufen. Die Flotte kann keine neuen Kapazitätsreservierungen erstellen.

  • cancelling – die Kapazitätsreservierungsflotte wird gerade storniert. Eine oder mehrere ihrer Kapazitätsreservierungen sind möglicherweise noch aktiv.

  • cancelled – die Kapazitätsreservierungsflotte wurde manuell storniert. Die Flotte und ihre Kapazitätsreservierungen wurden storniert und die Flotte kann keine neuen Kapazitätsreservierungen erstellen.

  • failed – die Kapazitätsreservierungsflotte konnte die Kapazität für die angegebenen Instance-Typen nicht reservieren.

Erstellen einer Kapazitätsreservierungsflotte

Wenn Sie eine Kapazitätsreservierungsflotte erstellen, werden für die in der Flottenanforderung angegebenen Instance-Typen automatisch Kapazitätsreservierungen bis zur angegebenen Gesamtzielkapazität erstellt. Die Anzahl der Instances, für die die Kapazitätsreservierungsflotte Kapazität reserviert, hängt von der Gesamtzielkapazität und den Instance-Typ-Gewichtungen ab, die Sie in der Anforderung angeben. Weitere Informationen finden Sie unter Instance-Typ-Gewichtung und Gesamtzielkapazität.

Wenn Sie die Flotte erstellen, müssen Sie die zu verwendenden Instance-Typen und eine Priorität für jeden dieser Instance-Typen angeben. Weitere Informationen finden Sie unter Zuweisungsstrategie und Instance-Typ-Priorität.

Anmerkung

Die mit dem AWSServiceRoleForEC2CapacityReservationFleetService verknüpfte Rolle wird automatisch in Ihrem Konto erstellt, wenn Sie zum ersten Mal eine Flotte für Kapazitätsreservierungen erstellen. Weitere Informationen finden Sie unter Verwenden von serviceverknüpften Rollen für Kapazitätsreservierungsflotten.

Derzeit unterstützen Kapazitätsreservierungsflotten nur die Übereinstimmungskriterien für open-Instances.

Sie können Kapazitätsreservierungsflotten nur über die Befehlszeile erstellen.

Kapazitätsreservierungsflotte erstellen

Verwenden Sie den create-capacity-reservation-fleet AWS CLI Befehl.

aws ec2 create-capacity-reservation-fleet \ --total-target-capacity capacity_units \ --allocation-strategy prioritized \ --instance-match-criteria open \ --tenancy dedicated|default \ --end-date yyyy-mm-ddThh:mm:ss.000Z \ --instance-type-specifications file://instanceTypeSpecification.json

Im Folgenden sehen Sie den Inhalt von instanceTypeSpecification.json.

[ { "InstanceType": "instance_type", "InstancePlatform":"platform", "Weight": instance_type_weight, "AvailabilityZone":"availability_zone", "AvailabilityZoneId" : "az_id", "EbsOptimized": true|false, "Priority" : instance_type_priority } ]

Erwartete Ausgabe.

{ "Status": "status", "TotalFulfilledCapacity": fulfilled_capacity, "CapacityReservationFleetId": "cr_fleet_id", "TotalTargetCapacity": capacity_units }

Beispiel

aws ec2 create-capacity-reservation-fleet \ --total-target-capacity 24 \ --allocation-strategy prioritized \ --instance-match-criteria open \ --tenancy default \ --end-date 2021-12-31T23:59:59.000Z \ --instance-type-specifications file://instanceTypeSpecification.json

instanceTypeSpecification.json

[ { "InstanceType": "m5.xlarge", "InstancePlatform": "Linux/UNIX", "Weight": 3.0, "AvailabilityZone":"us-east-1a", "EbsOptimized": true, "Priority" : 1 } ]

Beispielausgabe.

{ "Status": "submitted", "TotalFulfilledCapacity": 0.0, "CapacityReservationFleetId": "crf-abcdef01234567890", "TotalTargetCapacity": 24 }

Anzeigen einer Kapazitätsreservierungsflotte

Sie können jederzeit Konfigurations- und Kapazitätsinformationen für eine Kapazitätsreservierungsflotte anzeigen. Beim Aufrufen einer Flotte werden auch Details zu den einzelnen Kapazitätsreservierungen angezeigt, die sich innerhalb der Flotte befinden.

Sie können Kapazitätsreservierungsflotten nur über die Befehlszeile anzeigen.

Kapazitätsreservierungsflotte anzeigen

Verwenden Sie den describe-capacity-reservation-fleets AWS CLI Befehl.

aws ec2 describe-capacity-reservation-fleets \ --capacity-reservation-fleet-ids cr_fleet_ids

Erwartete Ausgabe

{ "CapacityReservationFleets": [ { "Status": "status", "EndDate": "yyyy-mm-ddThh:mm:ss.000Z", "InstanceMatchCriteria": "open", "Tags": [], "CapacityReservationFleetId": "cr_fleet_id", "Tenancy": "dedicated|default", "InstanceTypeSpecifications": [ { "CapacityReservationId": "cr1_id", "AvailabilityZone": "cr1_availability_zone", "FulfilledCapacity": cr1_used_capacity, "Weight": cr1_instance_type_weight, "CreateDate": "yyyy-mm-ddThh:mm:ss.000Z", "InstancePlatform": "cr1_platform", "TotalInstanceCount": cr1_number of instances, "Priority": cr1_instance_type_priority, "EbsOptimized": true|false, "InstanceType": "cr1_instance_type" }, { "CapacityReservationId": "cr2_id", "AvailabilityZone": "cr2_availability_zone", "FulfilledCapacity": cr2_used_capacity, "Weight": cr2_instance_type_weight, "CreateDate": "yyyy-mm-ddThh:mm:ss.000Z", "InstancePlatform": "cr2_platform", "TotalInstanceCount": cr2_number of instances, "Priority": cr2_instance_type_priority, "EbsOptimized": true|false, "InstanceType": "cr2_instance_type" }, ], "TotalTargetCapacity": total_target_capacity, "TotalFulfilledCapacity": total_target_capacity, "CreateTime": "yyyy-mm-ddThh:mm:ss.000Z", "AllocationStrategy": "prioritized" } ] }

Beispiel

aws ec2 describe-capacity-reservation-fleets \ --capacity-reservation-fleet-ids crf-abcdef01234567890

Beispielausgabe

{ "CapacityReservationFleets": [ { "Status": "active", "EndDate": "2021-12-31T23:59:59.000Z", "InstanceMatchCriteria": "open", "Tags": [], "CapacityReservationFleetId": "crf-abcdef01234567890", "Tenancy": "default", "InstanceTypeSpecifications": [ { "CapacityReservationId": "cr-1234567890abcdef0", "AvailabilityZone": "us-east-1a", "FulfilledCapacity": 5.0, "Weight": 1.0, "CreateDate": "2021-07-02T08:34:33.398Z", "InstancePlatform": "Linux/UNIX", "TotalInstanceCount": 5, "Priority": 1, "EbsOptimized": true, "InstanceType": "m5.xlarge" } ], "TotalTargetCapacity": 5, "TotalFulfilledCapacity": 5.0, "CreateTime": "2021-07-02T08:34:33.397Z", "AllocationStrategy": "prioritized" } ] }

Ändern einer Kapazitätsreservierungsflotte

Sie können die Gesamtzielkapazität und das Datum einer Kapazitätsreservierungsflotte jederzeit ändern. Wenn Sie die Gesamtzielkapazität einer Kapazitätsreservierungsflotte ändern, erstellt die Flotte automatisch neue Kapazitätsreservierungen oder ändert bzw. storniert bestehende Kapazitätsreservierungen in der Flotte, um die neue Gesamtzielkapazität zu erreichen. Wenn Sie das Enddatum für die Flotte ändern, werden die Enddaten für alle einzelnen Kapazitätsreservierungen entsprechend angepasst.

Nachdem Sie eine Flotte geändert haben, wechselt ihr Zustand zu modifying. Sie können keine zusätzlichen Änderungen an einer Flotte vornehmen, wenn sie sich im Zustand modifying befindet.

Sie können keine Änderungen bezüglich Tenancy, Availability Zone, Instance-Typen, Instance-Plattformen, Prioritäten oder Gewichtungen vornehmen, die von einer Kapazitätsreservierungsflotte verwendet werden. Wenn Sie einen dieser Parameter ändern möchten, müssen Sie die vorhandene Flotte stornieren und eine neue Flotte mit den erforderlichen Parametern erstellen.

Sie können Kapazitätsreservierungsflotten nur über die Befehlszeile ändern.

Kapazitätsreservierungsflotte ändern

Verwenden Sie den modify-capacity-reservation-fleet AWS CLI Befehl.

Anmerkung

Sie können --end-date und --remove-end-date nicht im selben Befehl angeben.

aws ec2 modify-capacity-reservation-fleet \ --capacity-reservation-fleet-id cr_fleet_ids \ --total-target-capacity capacity_units \ --end-date yyyy-mm-ddThh:mm:ss.000Z \ --remove-end-date

Erwartete Ausgabe

{ "Return": true }

Beispiel: Gesamtzielkapazität ändern

aws ec2 modify-capacity-reservation-fleet \ --capacity-reservation-fleet-id crf-01234567890abcedf \ --total-target-capacity 160

Beispiel: Enddatum ändern

aws ec2 modify-capacity-reservation-fleet \ --capacity-reservation-fleet-id crf-01234567890abcedf \ --end-date 2021-07-04T23:59:59.000Z

Beispiel: Enddatum entfernen

aws ec2 modify-capacity-reservation-fleet \ --capacity-reservation-fleet-id crf-01234567890abcedf \ --remove-end-date

Beispielausgabe

{ "Return": true }

Stornieren einer Kapazitätsreservierungsflotte

Wenn Sie eine Kapazitätsreservierungsflotte und die reservierte Kapazität nicht mehr benötigen, können Sie die Flotte stornieren. Wenn Sie eine Flotte stornieren, ändert sich ihr Zustand in cancelled und sie kann keine neuen Kapazitätsreservierungen mehr erstellen. Außerdem werden alle individuellen Kapazitätsreservierungen in der Flotte storniert und die Instances, die zuvor in der reservierten Kapazität ausgeführt wurden, werden mit gemeinsam genutzter Kapazität weiter ausgeführt.

Sie können Kapazitätsreservierungsflotten nur über die Befehlszeile stornieren.

Kapazitätsreservierungsflotte stornieren

Verwenden Sie den cancel-capacity-reservation-fleet AWS CLI Befehl.

aws ec2 cancel-capacity-reservation-fleets \ --capacity-reservation-fleet-ids cr_fleet_ids

Erwartete Ausgabe

{ "SuccessfulFleetCancellations": [ { "CurrentFleetState": "state", "PreviousFleetState": "state", "CapacityReservationFleetId": "cr_fleet_id_1" }, { "CurrentFleetState": "state", "PreviousFleetState": "state", "CapacityReservationFleetId": "cr_fleet_id_2" } ], "FailedFleetCancellations": [ { "CapacityReservationFleetId": "cr_fleet_id_3", "CancelCapacityReservationFleetError": [ { "Code": "code", "Message": "message" } ] } ] }

Beispiel: Erfolgreiche Stornierung

aws ec2 cancel-capacity-reservation-fleets \ --capacity-reservation-fleet-ids crf-abcdef01234567890

Beispielausgabe

{ "SuccessfulFleetCancellations": [ { "CurrentFleetState": "cancelling", "PreviousFleetState": "active", "CapacityReservationFleetId": "crf-abcdef01234567890" } ], "FailedFleetCancellations": [] }