D'autres AWS SDK exemples sont disponibles dans le GitHub dépôt AWS Doc SDK Examples
Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
À utiliser RequestSpotInstances
avec un CLI
Les exemples de code suivants montrent comment utiliserRequestSpotInstances
.
- CLI
-
- AWS CLI
-
Pour demander des instances Spot
Cet exemple de commande crée une demande d'instance ponctuelle unique pour cinq instances dans la zone de disponibilité spécifiée. Si votre compte prend en charge l'option EC2 - VPC uniquement, Amazon EC2 lance les instances dans le sous-réseau par défaut de la zone de disponibilité spécifiée. Si votre compte prend en charge EC2 -Classic, Amazon EC2 lance les instances dans EC2 -Classic dans la zone de disponibilité spécifiée.
Commande :
aws ec2 request-spot-instances --spot-price
"0.03"
--instance-count5
--type"one-time"
--launch-specificationfile://specification.json
Spécification.json :
{ "ImageId": "ami-1a2b3c4d", "KeyName": "my-key-pair", "SecurityGroupIds": [ "sg-1a2b3c4d" ], "InstanceType": "m3.medium", "Placement": { "AvailabilityZone": "us-west-2a" }, "IamInstanceProfile": { "Arn": "arn:aws:iam::123456789012:instance-profile/my-iam-role" } }
Sortie :
{ "SpotInstanceRequests": [ { "Status": { "UpdateTime": "2014-03-25T20:54:21.000Z", "Code": "pending-evaluation", "Message": "Your Spot request has been submitted for review, and is pending evaluation." }, "ProductDescription": "Linux/UNIX", "SpotInstanceRequestId": "sir-df6f405d", "State": "open", "LaunchSpecification": { "Placement": { "AvailabilityZone": "us-west-2a" }, "ImageId": "ami-1a2b3c4d", "KeyName": "my-key-pair", "SecurityGroups": [ { "GroupName": "my-security-group", "GroupId": "sg-1a2b3c4d" } ], "Monitoring": { "Enabled": false }, "IamInstanceProfile": { "Arn": "arn:aws:iam::123456789012:instance-profile/my-iam-role" }, "InstanceType": "m3.medium" }, "Type": "one-time", "CreateTime": "2014-03-25T20:54:20.000Z", "SpotPrice": "0.050000" }, ... ] }
Cet exemple de commande crée une demande d'instance Spot unique pour cinq instances dans le sous-réseau spécifié. Amazon EC2 lance les instances dans le sous-réseau spécifié. S'il ne s'VPCagit pas d'une adresse IP par défautVPC, les instances ne reçoivent pas d'adresse IP publique par défaut.
Commande :
aws ec2 request-spot-instances --spot-price
"0.050"
--instance-count5
--type"one-time"
--launch-specificationfile://specification.json
Spécification.json :
{ "ImageId": "ami-1a2b3c4d", "SecurityGroupIds": [ "sg-1a2b3c4d" ], "InstanceType": "m3.medium", "SubnetId": "subnet-1a2b3c4d", "IamInstanceProfile": { "Arn": "arn:aws:iam::123456789012:instance-profile/my-iam-role" } }
Sortie :
{ "SpotInstanceRequests": [ { "Status": { "UpdateTime": "2014-03-25T22:21:58.000Z", "Code": "pending-evaluation", "Message": "Your Spot request has been submitted for review, and is pending evaluation." }, "ProductDescription": "Linux/UNIX", "SpotInstanceRequestId": "sir-df6f405d", "State": "open", "LaunchSpecification": { "Placement": { "AvailabilityZone": "us-west-2a" } "ImageId": "ami-1a2b3c4d" "SecurityGroups": [ { "GroupName": "my-security-group", "GroupID": "sg-1a2b3c4d" } ] "SubnetId": "subnet-1a2b3c4d", "Monitoring": { "Enabled": false }, "IamInstanceProfile": { "Arn": "arn:aws:iam::123456789012:instance-profile/my-iam-role" }, "InstanceType": "m3.medium", }, "Type": "one-time", "CreateTime": "2014-03-25T22:21:58.000Z", "SpotPrice": "0.050000" }, ... ] }
Cet exemple attribue une adresse IP publique aux instances Spot que vous lancez dans une adresse autre que celle par défaut. VPC Notez que lorsque vous spécifiez une interface réseau, vous devez inclure l'ID du sous-réseau et l'ID du groupe de sécurité à l'aide de l'interface réseau.
Commande :
aws ec2 request-spot-instances --spot-price
"0.050"
--instance-count1
--type"one-time"
--launch-specificationfile://specification.json
Spécification.json :
{ "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::123456789012:instance-profile/my-iam-role" } }
-
Pour API plus de détails, voir RequestSpotInstances
la section Référence des AWS CLI commandes.
-
- PowerShell
-
- Outils pour PowerShell
-
Exemple 1 : Cet exemple demande une instance Spot unique dans le sous-réseau spécifié. Notez que le groupe de sécurité doit être créé pour le sous-réseau VPC qui contient le sous-réseau spécifié, et qu'il doit être spécifié par ID à l'aide de l'interface réseau. Lorsque vous spécifiez une interface réseau, vous devez inclure l'ID de sous-réseau à l'aide de l'interface réseau.
$n = New-Object Amazon.EC2.Model.InstanceNetworkInterfaceSpecification $n.DeviceIndex = 0 $n.SubnetId = "subnet-12345678" $n.Groups.Add("sg-12345678") Request-EC2SpotInstance -InstanceCount 1 -SpotPrice 0.050 -Type one-time ` -IamInstanceProfile_Arn arn:aws:iam::123456789012:instance-profile/my-iam-role ` -LaunchSpecification_ImageId ami-12345678 ` -LaunchSpecification_InstanceType m3.medium ` -LaunchSpecification_NetworkInterface $n
Sortie :
ActualBlockHourlyPrice : AvailabilityZoneGroup : BlockDurationMinutes : 0 CreateTime : 12/26/2015 7:44:10 AM Fault : InstanceId : LaunchedAvailabilityZone : LaunchGroup : LaunchSpecification : Amazon.EC2.Model.LaunchSpecification ProductDescription : Linux/UNIX SpotInstanceRequestId : sir-12345678 SpotPrice : 0.050000 State : open Status : Amazon.EC2.Model.SpotInstanceStatus Tags : {} Type : one-time
-
Pour API plus de détails, consultez la section RequestSpotInstancesRéférence des AWS Tools for PowerShell applets de commande.
-