Weitere AWS SDK Beispiele sind im Repo AWS Doc SDK Examples
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.
Verwenden Sie mit RequestSpotFleet
einem CLI
Die folgenden Codebeispiele zeigen die VerwendungRequestSpotFleet
.
- CLI
-
- AWS CLI
-
Um eine Spot-Flotte im Subnetz mit dem niedrigsten Preis anzufordern
Dieser Beispielbefehl erstellt eine Spot-Flottenanforderung mit zwei Startspezifikationen, die sich nur je nach Subnetz unterscheiden. Die Spot-Flotte startet die Instances im angegebenen Subnetz mit dem niedrigsten Preis. Wenn die Instances standardmäßig gestartet werdenVPC, erhalten sie standardmäßig eine öffentliche IP-Adresse. Wenn die Instances nicht standardmäßig gestartet werdenVPC, erhalten sie standardmäßig keine öffentliche IP-Adresse.
Beachten Sie, dass Sie in einer Spot-Flottenanfrage nicht verschiedene Subnetze aus derselben Availability Zone angeben können.
Befehl:
aws ec2 request-spot-fleet --spot-fleet-request-config
file://config.json
config.json:
{ "SpotPrice": "0.04", "TargetCapacity": 2, "IamFleetRole": "arn:aws:iam::123456789012:role/my-spot-fleet-role", "LaunchSpecifications": [ { "ImageId": "ami-1a2b3c4d", "KeyName": "my-key-pair", "SecurityGroups": [ { "GroupId": "sg-1a2b3c4d" } ], "InstanceType": "m3.medium", "SubnetId": "subnet-1a2b3c4d, subnet-3c4d5e6f", "IamInstanceProfile": { "Arn": "arn:aws:iam::123456789012:instance-profile/my-iam-role" } } ] }
Ausgabe:
{ "SpotFleetRequestId": "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE" }
Um eine Spot-Flotte in der Availability Zone mit dem niedrigsten Preis anzufordern
Dieser Beispielbefehl erstellt eine Spot-Flottenanfrage mit zwei Startspezifikationen, die sich nur je nach Availability Zone unterscheiden. Die Spot-Flotte startet die Instances in der angegebenen Availability Zone mit dem niedrigsten Preis. Wenn Ihr Konto VPC nur EC2 — unterstützt, EC2 startet Amazon die Spot-Instances im Standardsubnetz der Availability Zone. Wenn Ihr Konto EC2 -Classic unterstützt, EC2 startet Amazon die Instances in EC2 -Classic in der Availability Zone.
Befehl:
aws ec2 request-spot-fleet --spot-fleet-request-config
file://config.json
config.json:
{ "SpotPrice": "0.04", "TargetCapacity": 2, "IamFleetRole": "arn:aws:iam::123456789012:role/my-spot-fleet-role", "LaunchSpecifications": [ { "ImageId": "ami-1a2b3c4d", "KeyName": "my-key-pair", "SecurityGroups": [ { "GroupId": "sg-1a2b3c4d" } ], "InstanceType": "m3.medium", "Placement": { "AvailabilityZone": "us-west-2a, us-west-2b" }, "IamInstanceProfile": { "Arn": "arn:aws:iam::123456789012:instance-profile/my-iam-role" } } ] }
Um Spot-Instances in einem Subnetz zu starten und ihnen öffentliche IP-Adressen zuzuweisen
Dieser Beispielbefehl weist Instances, die nicht standardmäßig gestartet wurden, öffentliche Adressen zu. VPC Beachten Sie, dass Sie bei der Angabe einer Netzwerkschnittstelle die Subnetz-ID und die Sicherheitsgruppen-ID über die Netzwerkschnittstelle angeben müssen.
Befehl:
aws ec2 request-spot-fleet --spot-fleet-request-config
file://config.json
config.json:
{ "SpotPrice": "0.04", "TargetCapacity": 2, "IamFleetRole": "arn:aws:iam::123456789012:role/my-spot-fleet-role", "LaunchSpecifications": [ { "ImageId": "ami-1a2b3c4d", "KeyName": "my-key-pair", "InstanceType": "m3.medium", "NetworkInterfaces": [ { "DeviceIndex": 0, "SubnetId": "subnet-1a2b3c4d", "Groups": [ "sg-1a2b3c4d" ], "AssociatePublicIpAddress": true } ], "IamInstanceProfile": { "Arn": "arn:aws:iam::880185128111:instance-profile/my-iam-role" } } ] }
Um eine Spot-Flotte unter Verwendung der diversifizierten Zuweisungsstrategie anzufordern
Dieser Beispielbefehl erstellt eine Spot-Flottenanforderung, die 30 Instances unter Verwendung der diversifizierten Zuweisungsstrategie startet. Die Startspezifikationen unterscheiden sich je nach Instance-Typ. Die Spot-Flotte verteilt die Instances auf die Startspezifikationen, sodass es von jedem Typ 10 Instances gibt.
Befehl:
aws ec2 request-spot-fleet --spot-fleet-request-config
file://config.json
config.json:
{ "SpotPrice": "0.70", "TargetCapacity": 30, "AllocationStrategy": "diversified", "IamFleetRole": "arn:aws:iam::123456789012:role/my-spot-fleet-role", "LaunchSpecifications": [ { "ImageId": "ami-1a2b3c4d", "InstanceType": "c4.2xlarge", "SubnetId": "subnet-1a2b3c4d" }, { "ImageId": "ami-1a2b3c4d", "InstanceType": "m3.2xlarge", "SubnetId": "subnet-1a2b3c4d" }, { "ImageId": "ami-1a2b3c4d", "InstanceType": "r3.2xlarge", "SubnetId": "subnet-1a2b3c4d" } ] }
Weitere Informationen finden Sie unter Spot Fleet Requests im Amazon Elastic Compute Cloud-Benutzerhandbuch.
-
APIEinzelheiten finden Sie RequestSpotFleet
in der AWS CLI Befehlsreferenz.
-
- PowerShell
-
- Tools für PowerShell
-
Beispiel 1: In diesem Beispiel wird eine Spot-Flottenanfrage in der Availability Zone mit dem niedrigsten Preis für den angegebenen Instance-Typ erstellt. Wenn Ihr Konto VPC nur EC2 — unterstützt, startet die Spot-Flotte die Instances in der Availability Zone mit dem niedrigsten Preis, die über ein Standard-Subnetz verfügt. Wenn Ihr Konto EC2 -Classic unterstützt, startet die Spot-Flotte die Instances in EC2 -Classic in der Availability Zone mit dem niedrigsten Preis. Beachten Sie, dass der Preis, den Sie zahlen, den angegebenen Spot-Preis für die Anfrage nicht überschreiten wird.
$sg = New-Object Amazon.EC2.Model.GroupIdentifier $sg.GroupId = "sg-12345678" $lc = New-Object Amazon.EC2.Model.SpotFleetLaunchSpecification $lc.ImageId = "ami-12345678" $lc.InstanceType = "m3.medium" $lc.SecurityGroups.Add($sg) Request-EC2SpotFleet -SpotFleetRequestConfig_SpotPrice 0.04 ` -SpotFleetRequestConfig_TargetCapacity 2 ` -SpotFleetRequestConfig_IamFleetRole arn:aws:iam::123456789012:role/my-spot-fleet-role ` -SpotFleetRequestConfig_LaunchSpecification $lc
-
APIEinzelheiten finden Sie unter RequestSpotFleet AWS Tools for PowerShellCmdlet-Referenz.
-