As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Usar RequestSpotFleet com uma CLI
Os exemplos de código a seguir mostram como usar o RequestSpotFleet.
- CLI
-
- AWS CLI
-
Solicitar uma frota Spot na sub-rede com o menor preço
Esse exemplo de comando cria uma solicitação de frota Spot com duas especificações de lançamento que diferem somente por sub-rede. A frota Spot lança as instâncias na sub-rede especificada de menor preço. Se as instâncias forem executadas em uma VPC padrão, elas receberão um endereço IP público por padrão. Se as instâncias forem executadas em uma VPC não padrão, elas não receberão um endereço IP público por padrão.
Observe que você não pode especificar sub-redes diferentes da mesma zona de disponibilidade em uma solicitação de frota spot.
Comando:
aws ec2 request-spot-fleet --spot-fleet-request-configfile://config.jsonConfig.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" } } ] }Saída:
{ "SpotFleetRequestId": "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE" }Solicitar uma frota Spot na zona de disponibilidade com o menor preço
Esse exemplo de comando cria uma solicitação de frota Spot com duas especificações de lançamento que diferem somente por Zona de Disponibilidade. A frota Spot lança as instâncias na Zona de Disponibilidade especificada de menor preço. Se sua conta oferece suporte somente ao EC2-VPC, o Amazon EC2 executará as instâncias Spot na sub-rede padrão da Zona de Disponibilidade. Se sua conta oferece suporte ao EC2-Classic, o Amazon EC2 executará as instâncias no EC2-Classic na Zona de Disponibilidade.
Comando:
aws ec2 request-spot-fleet --spot-fleet-request-configfile://config.jsonConfig.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" } } ] }Lançar instâncias spot em uma sub-rede e atribuir a elas endereços IP públicos
Este comando de exemplo atribui endereços IP públicos a instâncias lançadas em uma VPC não padrão. Observe que, ao especificar uma interface de rede, você deve incluir o ID da sub-rede e o ID do grupo de segurança usando a interface de rede.
Comando:
aws ec2 request-spot-fleet --spot-fleet-request-configfile://config.jsonConfig.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" } } ] }Solicitar uma frota Spot usando a estratégia de alocação diversificada
Esse exemplo de comando cria uma solicitação de frota Spot que executa 30 instâncias usando a estratégia de alocação diversificada. As especificações de lançamento variam de acordo com o tipo de instância. A frota spot distribui as instâncias pelas especificações de execução, de modo que haja 10 instâncias de cada tipo.
Comando:
aws ec2 request-spot-fleet --spot-fleet-request-configfile://config.jsonConfig.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" } ] }Para obter mais informações, consulte Solicitações de frota Spot no Guia do usuário do Amazon Elastic Compute Cloud.
-
Para obter detalhes da API, consulte RequestSpotFleet
na Referência de AWS CLI Comandos.
-
- PowerShell
-
- Ferramentas para PowerShell V4
-
Exemplo 1: esse exemplo cria uma solicitação de frota spot na zona de disponibilidade com o menor preço para o tipo de instância especificado. Se a sua conta é compatível somente com o EC2-VPC, a frota spot inicia as instâncias na Zona de Disponibilidade com menor preço que tem a sub-rede padrão. Se a sua conta é compatível com o EC2-Classic, a frota spot inicia as instâncias no EC2-Classic na Zona de Disponibilidade com menor preço. Observe que o preço pago não excederá o preço spot especificado para a solicitação.
$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-
Para obter detalhes da API, consulte RequestSpotFleetem Referência de Ferramentas da AWS para PowerShell cmdlet (V4).
-
- Ferramentas para PowerShell V5
-
Exemplo 1: esse exemplo cria uma solicitação de frota spot na zona de disponibilidade com o menor preço para o tipo de instância especificado. Se a sua conta é compatível somente com o EC2-VPC, a frota spot inicia as instâncias na Zona de Disponibilidade com menor preço que tem a sub-rede padrão. Se a sua conta é compatível com o EC2-Classic, a frota spot inicia as instâncias no EC2-Classic na Zona de Disponibilidade com menor preço. Observe que o preço pago não excederá o preço spot especificado para a solicitação.
$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-
Para obter detalhes da API, consulte RequestSpotFleetem Referência de Ferramentas da AWS para PowerShell cmdlet (V5).
-
Para obter uma lista completa dos guias do desenvolvedor do AWS SDK e exemplos de código, consulteCrie recursos do Amazon EC2 usando um AWS SDK. Este tópico também inclui informações sobre como começar e detalhes sobre versões anteriores do SDK.