Solicitações de instância Spot
Para usar instâncias spot, você cria uma solicitação de instância spot que inclua o número de instâncias desejado, o tipo de instância, a zona de disponibilidade e o preço máximo que você está disposto a pagar por hora de instância. Se seu preço máximo exceder o preço spot atual, o Amazon EC2 atenderá à sua solicitação imediatamente mediante a disponibilidade de capacidade. Caso contrário, o Amazon EC2 esperará até a sua solicitação puder ser atendida ou até você cancelar a solicitação.
A ilustração a seguir mostra como as solicitações de instância spot funcionam. Observe que o tipo de solicitação (única ou persistente) determina se a solicitação será exibida novamente quando o Amazon EC2 ou você interromper uma instância spot. Se a requisição for persistente, ela será aberta novamente depois que a instância spot for interrompida. Se a solicitação for persistente e você interromper a instância spot, a solicitação será exibida somente depois que você iniciar a instância spot.

Tópicos
- Estados da solicitação de instância spot
- Definir uma duração para suas Instâncias spot
- Especificar uma locação para suas Instâncias spot
- Função vinculada ao serviço para solicitações de instâncias spot
- Criar uma solicitação de instância spot
- Encontrar Instâncias spot em execução
- Marcar solicitações de instância spot
- Cancelar uma solicitação de instância spot
- Interromper uma instância spot
- Iniciar uma instância spot
- Encerrar uma instância spot
- Exemplo de especificações de execução de solicitações de instância spot
Estados da solicitação de instância spot
Uma solicitação de instância spot pode estar em um dos seguintes estados:
-
open
– A solicitação está esperando para ser atendida. -
active
– A solicitação foi atendida e tem uma instância spot associada. -
failed
– A solicitação tem um ou mais parâmetros inválidos. -
closed
– A instância spot foi interrompida ou encerrada. -
disabled
– Você interrompeu a instância spot. -
cancelled
– Você cancelou a solicitação ou ela expirou.
A ilustração a seguir representa as transições entre os estados da solicitação. Observe que as transições dependem do tipo de solicitação (única ou persistente).

Uma solicitação de instância spot única permanece ativa até o Amazon EC2 executar a instância spot, a solicitação expirar ou você cancelar a solicitação. Se o preço spot exceder seu preço máximo ou a capacidade não estiver disponível, sua instância spot será encerrada e a solicitação de instância spot será fechada.
Uma solicitação de instância spot persistente permanecerá ativa até expirar ou até que você a cancele, mesmo se a solicitação tiver sido atendida. Se o preço spot exceder seu preço máximo ou a capacidade não estiver disponível, sua instância spot será interrompida. Depois que sua instância é interrompida, quando o preço máximo excede o preço spot ou a capacidade se torna disponível novamente, a instância spot será iniciada, se estiver parada, ou retomada, se estiver em hibernação. Você pode interromper uma instância spot e iniciá-la novamente mediante a disponibilidade de capacidade e se o preço máximo exceder o preço spot. Se a instância spot for encerrada (independentemente da instância spot estar interrompida ou estar em execução), a solicitação de instância spot será aberta novamente e o Amazon EC2 executará uma nova instância spot. Para obter mais informações, consulte Interromper uma instância spot, Iniciar uma instância spot e Encerrar uma instância spot.
Você pode acompanhar o status das solicitações de instância spot, bem como o status das instâncias spot executadas, pelo status. Para mais informações, consulte Status da solicitação spot.
Definir uma duração para suas Instâncias spot
As instâncias spot com duração definida (também conhecidas como blocos spot) não estarão mais disponíveis para novos clientes a partir de 1.º de julho de 2021. Aos clientes que utilizaram o recurso anteriormente, continuaremos a oferecer suporte a instâncias spot com duração definida até 31 de dezembro de 2022.
Especificar uma locação para suas Instâncias spot
Você pode executar uma instância spot no hardware de ocupante único. As instâncias spot dedicadas são fisicamente isoladas de instâncias que pertencem a outras contas da AWS. Para obter mais informações, consulte Dedicated Instances e a página do produto Instâncias dedicadas do Amazon EC2
Para executar uma instância spot dedicada, execute um dos seguintes procedimentos:
-
Especifique um locação
dedicated
ao criar a solicitação de instância spot. Para mais informações, consulte Criar uma solicitação de instância spot. -
Solicite uma solicitação spot em uma VPC com uma locação de instância
dedicated
. Para mais informações, consulte Criação de uma VPC com uma locação de instância dedicada. Não é possível solicitar uma instância spot com um locaçãodefault
se você solicitá-la em uma VPC com uma locação de instânciadedicated
.
Todas as famílias de instâncias são compatíveis com Instâncias spot dedicadas, exceto instâncias T. Para cada família de instâncias compatíveis, apenas o maior tamanho de instância ou tamanho de metal é compatível com Instâncias spot dedicadas.
Função vinculada ao serviço para solicitações de instâncias spot
O Amazon EC2 usa funções vinculadas ao serviço para as permissões necessárias para chamar outros produtos da AWS em seu nome. Uma função vinculada ao serviço é um tipo exclusivo de função do IAM vinculado diretamente a um serviço da AWS. As funções vinculadas a serviços oferecem uma maneira segura de delegar permissões a serviços da AWS, pois somente o serviço vinculado pode assumir uma função vinculada ao serviço. Para obter mais informações, consulteUso de funções vinculadas ao serviço no Guia do usuário do IAM.
O Amazon EC2 usa a função vinculada ao serviço denominada AWSServiceRoleForEC2Spot para executar e gerenciar Instâncias spot em seu nome.
Permissões concedidas pelo AWSServiceRoleForEC2Spot
O Amazon EC2 usa AWSServiceRoleForEC2Spot para concluir as ações a seguir:
-
ec2:DescribeInstances
– Descrever instâncias spot -
ec2:StopInstances
– Interromper instâncias spot -
ec2:StartInstances
– Iniciar instâncias spot
Criar a função vinculada ao serviço
Na maioria das circunstâncias, você não precisa criar manualmente uma função vinculada ao serviço. O Amazon EC2 cria a função AWSServiceRoleForEC2Spot vinculada ao serviço na primeira vez que você solicita uma instância spot usando o console.
Se você tinha uma solicitação de instância spot ativa antes de outubro de 2017, quando o Amazon EC2 começou a oferecer suporte a essa função vinculada ao serviço, o Amazon EC2 criou a função AWSServiceRoleForEC2Spot em sua conta da AWS. Para obter mais informações, consulte Uma nova função apareceu na minha conta no Guia do usuário do IAM.
Se você usar a AWS CLI ou uma API para solicitar uma instância spot, deverá assegurar que essa função existe.
Para criar AWSServiceRoleForEC2Spot usando o console
Abra o console do IAM em https://console.aws.amazon.com/iam/
. -
No painel de navegação, selecione Roles.
-
Selecione Create role.
-
Na página Select type of trusted entity (Selecionar tipo de entidade confiável), escolha EC2, EC2 - Spot Instances (EC2 - instâncias spot), Next: Permissions (Próximo: permissões).
-
Na próxima página, escolha Next:Review (Próximo: revisar).
-
Na página Review (Revisar), selecione Create role (Criar função).
Para criar AWSServiceRoleForEC2Spot usando a AWS CLI
Use o comando create-service-linked-role da seguinte forma.
aws iam create-service-linked-role --aws-service-name spot.amazonaws.com
Se você não precisar mais usar Instâncias spot, é recomendável excluir a função AWSServiceRoleForEC2Spot. Depois que essa função for excluída da sua conta, o Amazon EC2 criará a função novamente se você solicitar Instâncias spot.
Conceder acesso às chaves gerenciadas pelo cliente para uso com AMIs criptografadas e snapshots do EBS
Se você especificar uma AMI criptografada ou um snapshot do Amazon EBS criptografado para suas instâncias spot e usar uma chave gerenciada pelo cliente gerenciada pelo cliente para criptografia, deverá conceder à função AWSServiceRoleForEC2Spot permissão para usar a chave gerenciada pelo cliente de forma que o Amazon EC2 consiga executar instâncias spot em seu nome. Para isso, adicione uma concessão à chave gerenciada pelo cliente, conforme exibido no procedimento a seguir.
Durante a definição de permissões, as concessões são uma alternativa às políticas de chave. Para obter mais informações, consulte Uso de concessões e Uso de políticas de chave no AWS KMS, no Guia do desenvolvedor do AWS Key Management Service.
Para conceder as permissões para a função AWSServiceRoleForEC2Spot para usar a chave gerenciada pelo cliente
-
Use o comando create-grant para adicionar uma concessão à chave gerenciada pelo cliente e especificar a entidade principal (a função vinculada ao serviço AWSServiceRoleForEC2) que recebe permissão para executar as operações permitidas pela concessão. A chave gerenciada pelo cliente é especificada pelo parâmetro
key-id
e o ARN da chave gerenciada pelo cliente. A entidade principal é especificada pelo parâmetrograntee-principal
e pelo ARN da função vinculada ao serviço AWSServiceRoleForEC2Spot.aws kms create-grant \ --region
us-east-1
\ --key-id arn:aws:kms:us-east-1
:444455556666
:key/1234abcd-12ab-34cd-56ef-1234567890ab
\ --grantee-principal arn:aws:iam::111122223333
:role/AWSServiceRoleForEC2Spot \ --operations "Decrypt" "Encrypt" "GenerateDataKey" "GenerateDataKeyWithoutPlaintext" "CreateGrant" "DescribeKey" "ReEncryptFrom" "ReEncryptTo"
Criar uma solicitação de instância spot
O procedimento para solicitação de instância spot é semelhante ao procedimento de execução de uma instância sob demanda. Você pode solicitar uma instância spot das seguintes maneiras:
-
Para solicitar uma instância spot usando o console, use o assistente de execução de instâncias. Para obter mais informações, consulte Para criar uma solicitação de instância spot (console).
-
Para solicitar uma instância spot usando a CLI, use o comando request-spot-instances ou o comando run-instances. Para obter mais informações, consulte To create a Spot Instance request using request-spot-instances (CLI) e To create a Spot Instance request using run-instances (CLI).
Depois de enviar sua solicitação de instância spot, não é possível alterar os parâmetros da solicitação. Isso significa que você não poderá fazer alterações no preço máximo que está disposto a pagar.
Se você solicitar várias instâncias spot ao mesmo tempo, o Amazon EC2 criará solicitações de instância spot separadas para que você possa acompanhar o status de cada uma separadamente. Para obter mais informações sobre como monitorar solicitações de instâncias spot, consulte Status da solicitação spot.
Para executar uma frota que inclui Instâncias spot e Instâncias on-demand, consulte Criar uma solicitação de frota spot.
Não é possível executar uma instância spot e uma instância sob demanda na mesma chamada usando o assistente de execução de instância ou o comando run-instances.
Pré-requisitos
Antes de iniciar, decida seu preço máximo, quantas Instâncias spot deseja e qual tipo de instância usar. Para analisar as tendências de preços spot, consulte Histórico de definição de preço da instância spot.
Para criar uma solicitação de instância spot (console)
Abra o console do Amazon EC2 em https://console.aws.amazon.com/ec2/
. -
Na barra de navegação na parte superior da tela, selecione uma região.
-
No painel do console do Amazon EC2, selecione Launch Instance (Executar instância).
-
Na página Escolher imagem de máquina da Amazon (AMI), escolha uma AMI. Para mais informações, consulte Etapa 1: Escolher uma imagem de máquina da Amazon (AMI).
-
Na página Escolher um tipo de instância, selecione a configuração de hardware e o tamanho da instância a ser executada e Próximo: configurar detalhes da instância. Para mais informações, consulte Etapa 2: escolher um tipo de instância.
-
Na página Configure Instance Details (Configurar os detalhes da instância) configure a solicitação de instância spot da seguinte maneira:
-
Number of instances (Número de instâncias): Digite o número de instâncias para executar.
nota O Amazon EC2 cria uma solicitação distinta para cada instância spot.
-
(Opcional) Para ajudar a assegurar que você mantenha o número de instâncias para lidar com a demanda da aplicação, escolha Launch into Auto Scaling Group (Executar no grupo de Auto Scaling) para criar uma configuração de execução e um grupo de Auto Scaling. O Auto Scaling escala o número de instâncias no grupo de acordo com suas especificações. Para mais informações, consulte o Guia do usuário do Amazon EC2 Auto Scaling.
-
Purchasing option (Opção de compra): escolha Request Spot instances (Solicitar instâncias spot) para executar uma instância Spot. Ao escolher essa opção, os campos a seguir são exibidos.
-
Preço atual: o preço spot atual em cada zona de disponibilidade é exibido para o tipo de instância selecionada.
-
(Opcional) Preço máximo: você pode deixar o campo vazio ou especificar o valor máximo que está disposto a pagar.
-
Se você deixar o campo vazio, o preço máximo assumirá como padrão o preço sob demanda atual. A instância spot será executada no preço spot atual, não excedendo o preço sob demanda.
-
Se você especificar um preço máximo superior ao preço spot atual, a instância spot será executada e cobrada de acordo com o preço spot atual.
-
Se você especificar um preço máximo inferior ao preço spot, a instância spot não será executada.
-
-
Persistent request (Solicitação persistente): escolha Solicitação persistente para reenviar a solicitação de instância spot se a instância spot for interrompida.
-
Interruption behavior (Comportamento de interrupção): por padrão, o serviço spot encerra uma instância spot quando ela é interrompida. Se escolher Solicitação persistente, você poderá especificar que o serviço spot interrompa ou hiberne a instância spot quando ela for interrompida. Para mais informações, consulte Comportamento de interrupção.
-
(Opcional) Request valid to (Solicitação válida até): escolha Edit (Editar) para especificar a expiração da solicitação de instância spot.
Para obter mais informações sobre como configurar sua instância spot, consulte Etapa 3: configurar detalhes da instância.
-
-
A AMI que você selecionou inclui um ou mais volumes de armazenamento, incluindo o volume de dispositivo raiz. Na página Add Storage (Adicionar armazenamento), especifique os volumes adicionais para anexar à instância escolhendo Add New Volume (Adicionar novo volume). Para obter mais informações, consulte Etapa 4: adicionar armazenamento.
-
Na página Add Tags (Adicionar tags), especifique as tags fornecendo combinações de chave e valor. Para obter mais informações, consulte Etapa 5: Adicionar tags.
-
Na página Configurar grupo de segurança, use um grupo de segurança para definir regras do firewall para sua instância. Essas regras especificam qual tráfego de rede de entrada será fornecido para sua instância. Todo o tráfego é ignorado. (Para mais informações sobre grupos de segurança, consulte Grupos de segurança do Amazon EC2 para instâncias do Linux.) Selecione ou crie um grupo de segurança e escolha Revisar e executar. Para mais informações, consulte Etapa 6: configurar o grupo de segurança.
-
Na página Review Instance Launch (Revisar execução da instância), verifique os detalhes da sua instância e faça qualquer alteração necessária selecionando o link Edit (Editar) apropriado. Quando estiver pronto, escolha Launch (Executar). Para mais informações, consulte Etapa 7: Revisar a execução da instância e selecionar o par de chaves.
-
Na caixa de diálogo Select an existing key pair or create a new key pair (Selecionar um par de chaves existente ou criar um novo par de chaves), você poderá escolher um par de chaves existente ou poderá criar um novo. Por exemplo, Escolha um par de chaves existente e selecione o par de chaves que você criou para a configuração. Para mais informações, consulte Pares de chaves do Amazon EC2 e instâncias do Linux.
Importante Se você escolher a opção Proceed without key pair (Continuar sem par de chaves), não conseguirá se conectar à instância a menos que escolha uma AMI configurada para permitir aos usuários uma maneira efetuar login.
-
Para executar uma instância, selecione a caixa de confirmação e escolha Launch Instances (Executar instâncias).
Se a instância não executar ou o estado passar imediatamente para
terminated
, em vez derunning
, consulte Solucionar problemas de execução de instâncias.
Para criar uma solicitação de instância spot usando request-spot-instances(AWS CLI)
Use o comando request-spot-instances para criar uma solicitação única:
aws ec2 request-spot-instances \ --instance-count
5
\ --type "one-time" \ --launch-specification file://specification.json
Use o comando request-spot-instances para criar uma requisição persistente:
aws ec2 request-spot-instances \ --instance-count
5
\ --type "persistent" \ --launch-specification file://specification.json
Para que os arquivos de especificação de execução de exemplo sejam usados com esses comandos, consulte Exemplo de especificações de execução de solicitações de instância spot. Se você fizer download de um arquivo de especificação de execução no console, use o comando request-spot-fleet (o console especifica uma solicitação de instância spot usando uma frota spot).
Para criar uma solicitação de instância spot usando request-spot-instances(AWS CLI)
Use o comando run-instances e especifique as opções da instância spot no parâmetro --instance-market-options
.
aws ec2 run-instances \ --image-id
ami-0abcdef1234567890
\ --instance-typet2.micro
\ --count5
\ --subnet-idsubnet-08fc749671b2d077c
\ --key-nameMyKeyPair
\ --security-group-idssg-0b0384b66d7d692f9
\ --instance-market-optionsfile://
spot-options.json
Veja a seguir a estrutura de dados a ser especificada no arquivo JSON --instance-market-options
. Também é possível especificar ValidUntil
e InstanceInterruptionBehavior
. Se você não especificar um campo na estrutura de dados, será usado o valor padrão. Esse exemplo cria uma solicitação one-time
e especifica 0.02
como preço máximo que você está disposto a pagar pela instância spot.
{ "MarketType": "spot", "SpotOptions": { "MaxPrice": "
0.02
", "SpotInstanceType": "one-time
" } }
Encontrar Instâncias spot em execução
O Amazon EC2 executará uma instância spot quando o preço máximo exceder o preço spot e a capacidade estiver disponível. A instância spot será executada até ser interrompida ou até você a encerrar. Se seu preço máximo for exatamente igual ao preço spot, haverá uma possibilidade de a instância spot permanecer em execução, dependendo da demanda.
Para localizar Instâncias spot em execução (console)
-
Abra o console do Amazon EC2 em https://console.aws.amazon.com/ec2/
. -
No painel de navegação, selecione Solicitações spot. Você pode ver solicitações de instância Spot e solicitações de frota spot. Se uma solicitação de instância spot tiver sido atendida, a Capacity (Capacidade) será o ID da instância spot. Em uma frota spot, a Capacity (Capacidade) indica quanto da capacidade solicitada foi atendida. Para visualizar os IDs das instâncias em uma frota spot, escolha a seta de expansão ou selecione a frota e escolha Instances (Instâncias).
nota Para solicitações de instância spot criadas por uma frota spot, as solicitações não são marcadas instantaneamente com a tag do sistema que indica a frota spot a qual pertencem, e por um período podem parecer estarem separadas da solicitação de frota spot.
Como alternativa, no painel de navegação, escolha Instâncias. No canto superior direito, escolha o ícone (
) e em Attribute columns (Colunas de atributo), selecione Instance lifecycle (Ciclo de vida da instância). Para cada instância, o Instance lifecycle (Ciclo de vida da instância) é
normal
,spot
ouscheduled
.
Para encontrar instâncias spot em execução (AWS CLI)
Para enumerar as Instâncias spot, use o comando describe-spot-instance-requests com a opção --query
.
aws ec2 describe-spot-instance-requests \ --query "SpotInstanceRequests[*].{ID:InstanceId}"
A seguir está um exemplo de saída:
[
{
"ID": "i-1234567890abcdef0"
},
{
"ID": "i-0598c7d356eba48d7"
}
]
Como alternativa, você pode enumerar as Instâncias spot usando o comando describe-instances com a opção --filters
.
aws ec2 describe-instances \ --filters "Name=instance-lifecycle,Values=spot"
Para descrever uma instância spot única, use o comando describe-spot-instance-requests com a opção --spot-instance-request-ids
.
aws ec2 describe-spot-instance-requests \ --spot-instance-request-ids
sir-08b93456
Marcar solicitações de instância spot
Para categorizar e gerenciar as solicitações de instância spot, você pode marcá-las com metadados personalizados. Você pode atribuir uma tag a uma solicitação de instância spot ao criá-la ou posteriormente. Você pode atribuir tags usando o console do Amazon EC2 ou uma ferramenta da linha de comando.
Quando você marca uma solicitação de instância spot, as instâncias e os volumes executados pela solicitação de instância spot não são marcados automaticamente. É necessário marcar explicitamente as instâncias e os volumes executados pela solicitação de instância spot. É possível atribuir volumes e uma tag a uma instância spot durante a execução ou posteriormente.
Para obter mais informações sobre como as tags funcionam, consulte Marcar com tag os recursos do Amazon EC2.
Índice
Pré-requisitos
Conceda ao usuário do IAM permissão para marcar recursos. Para obter mais informações sobre políticas do IAM e políticas de exemplo, consulte Exemplo: marcar recursos.
A política do IAM criada é determinada pelo método usado para criação de uma solicitação de instância spot.
-
Se você usar o assistente de execução de instâncias ou
run-instances
para solicitar uma Instâncias spot, consulte To grant an IAM user the permission to tag resources when using the launch instance wizard or run-instances. -
Se você utiliza o comando
request-spot-instances
para solicitar instâncias spot, consulte To grant an IAM user the permission to tag resources when using request-spot-instances.
Para conceder a um usuário do IAM permissão para marcar recursos ao usar o assistente de execução ou run-instances
Crie uma política do IAM que inclua o seguinte:
-
A ação
ec2:RunInstances
. Concede ao usuário do IAM permissão para executar uma instância. -
Para
Resource
, especifiquespot-instances-request
. Isso permite que os usuários criem solicitações de instância spot, que solicitam instâncias spot. -
A ação
ec2:CreateTags
. Concede ao usuário do IAM permissão para criar tags. -
Para
Resource
, especifique*
. Isso permite que os usuários marquem todos os recursos criados durante a execução da instância.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowLaunchInstances", "Effect": "Allow", "Action": [ "ec2:RunInstances" ], "Resource": [ "arn:aws:ec2:us-east-1::image/*", "arn:aws:ec2:us-east-1:*:subnet/*", "arn:aws:ec2:us-east-1:*:network-interface/*", "arn:aws:ec2:us-east-1:*:security-group/*", "arn:aws:ec2:us-east-1:*:key-pair/*", "arn:aws:ec2:us-east-1:*:volume/*", "arn:aws:ec2:us-east-1:*:instance/*", "arn:aws:ec2:us-east-1:*:spot-instances-request/*" ] }, { "Sid": "TagSpotInstanceRequests", "Effect": "Allow", "Action": "ec2:CreateTags", "Resource": "*" } ] }
Ao usar a ação RunInstances para criar solicitações de instância spot e marcar as solicitações de instância spot na criação, você precisa estar ciente de como o Amazon EC2 avalia o recurso spot-instances-request
na instrução RunInstances.
O recurso spot-instances-request
é avaliado na política do IAM da seguinte forma:
-
Se você não marcar uma solicitação de instância spot na criação, o Amazon EC2 não avaliará o recurso
spot-instances-request
na instrução RunInstances. -
Se você marcar uma solicitação de instância spot na criação, o Amazon EC2 avaliará o recurso
spot-instances-request
na instrução RunInstances.
Portanto, para o recurso spot-instances-request
, as seguintes regras se aplicam à diretiva do IAM:
-
Caso você use RunInstances para criar uma solicitação de instância spot e não pretenda marcar a solicitação de instância spot na criação, não será necessário permitir explicitamente o recurso
spot-instances-request
. A chamada terá êxito. -
Caso use RunInstances para criar uma solicitação de instância spot e pretenda marcar a solicitação de instância spot na criação, você deverá incluir o recurso
spot-instances-request
na instrução de permissão RunInstances, caso contrário, a chamada falhará. -
Caso você use RunInstances para criar uma solicitação de instância spot e pretenda marcar a solicitação de instância spot na criação, especifique o recurso
spot-instances-request
ou inclua um curinga*
na instrução de permissão CreateTags, caso contrário, a chamada falhará.
Por exemplo, políticas do IAM, incluindo políticas que não são compatíveis com solicitações de instância spot, consulte Trabalhar com Instâncias spot.
Para conceder a um usuário do IAM permissão para marcar recursos ao usar request-spot-instances
Crie uma política do IAM que inclua o seguinte:
-
A ação
ec2:RequestSpotInstances
. Concede ao usuário do IAM permissão para criar uma solicitação de instância spot. -
A ação
ec2:CreateTags
. Concede ao usuário do IAM permissão para criar tags. -
Para
Resource
, especifiquespot-instances-request
. Isso permite que os usuários marquem somente a solicitação de instância spot.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "TagSpotInstanceRequest", "Effect": "Allow", "Action": [ "ec2:RequestSpotInstances", "ec2:CreateTags" ], "Resource": "arn:aws:ec2:
us-east-1
:111122223333
:spot-instances-request/*" }
Marcar uma nova solicitação de instância spot
Para marcar uma nova solicitação de instância spot usando o console
-
Siga o procedimento do Criar uma solicitação de instância spot.
-
Para adicionar uma tag, na página Adicionar tags, escolha Adicionar tag e insira a chave e o valor da tag. Escolha Adicionar outra tag para cada tag adicional.
Para cada tag, você pode marcar a solicitação de instância spot, as instâncias spot e os volumes com a mesma tag. Para marcar os três, verifique se as opções Instances (Instâncias), Volumes e Spot Instance Requests (Solicitações de instâncias spot) estão selecionadas. Para marcar apenas um ou dois, verifique se os recursos que deseja marcar estão selecionados e os outros recursos estão limpos.
-
Preencha os campos obrigatórios para criar uma solicitação de instância spot e escolha Launch (Executar). Para mais informações, consulte Criar uma solicitação de instância spot.
Para marcar uma nova solicitação de instância spot usando a AWS CLI
Para marcar uma solicitação de instância spot ao criá-la, defina-a da seguinte maneira:
-
Especifique as tags para a solicitação de instância spot usando o parâmetro
--tag-specification
. -
Para
ResourceType
, especifiquespot-instances-request
. Se você especificar outro valor, ocorrerá falha na solicitação de instância spot. -
Em
Tags
, especifique o par de chave/valor. Você pode especificar mais de um par de chave/valor.
No exemplo a seguir, a solicitação de instância spot é marcada com duas tags: Key=Environment e Value=Production, e Key=Cost-Center e Value=123.
aws ec2 request-spot-instances \ --instance-count
5
\ --type "one-time" \ --launch-specification file://specification.json
\ --tag-specification 'ResourceType=spot-instances-request,Tags=[{Key=Environment
,Value=Production
},{Key=Cost-Center
,Value=123
}]'
Marcar uma solicitação de instância spot existente
Para marcar uma solicitação de instância spot existente usando o console
Depois de criar uma solicitação de instância spot, você pode adicionar tags à solicitação de instância spot usando o console.
-
Abra o console Spot em https://console.aws.amazon.com/ec2spot
. -
Selecione sua solicitação de instância spot.
-
Escolha a guia Tags e Create Tag (Criar tag).
Para marcar uma solicitação de instância spot existente usando o console
Depois que sua solicitação de instância spot tiver executado a instância spot, você poderá adicionar tags à instância usando o console. Para mais informações, consulte Adicionar e excluir tags em um recurso individual.
Para marcar uma solicitação de instância spot existente ou instância spot usando a AWS CLI
Use o comando create-tags para marcar os recursos existentes. No exemplo a seguir, a solicitação de instância spot e a instância spot existentes são marcadas com Key=purpose e Value=test.
aws ec2 create-tags \ --resources
sir-08b93456
i-1234567890abcdef0
\ --tags Key=purpose
,Value=test
Exibir tags de solicitação de instância spot
Para visualizar tags de solicitação de instância spot usando o console
-
Abra o console Spot em https://console.aws.amazon.com/ec2spot
. -
Selecione sua solicitação de instância spot e escolha a guia Tags.
Para descrever as tags de solicitação de instância spot
Use o comando describe-tags para visualizar as tags para o recurso especificado. No exemplo a seguir, você descreve as tags da solicitação especificada.
aws ec2 describe-tags \ --filters "Name=resource-id,Values=
sir-11112222-3333-4444-5555-66666EXAMPLE
"
{
"Tags": [
{
"Key": "Environment",
"ResourceId": "sir-11112222-3333-4444-5555-66666EXAMPLE",
"ResourceType": "spot-instances-request",
"Value": "Production"
},
{
"Key": "Another key",
"ResourceId": "sir-11112222-3333-4444-5555-66666EXAMPLE",
"ResourceType": "spot-instances-request",
"Value": "Another value"
}
]
}
Você também pode visualizar as tags de uma solicitação de instância spot descrevendo a solicitação de instância spot.
Use o comando describe-spot-instance-requests para visualizar a configuração da solicitação de instância spot especificada, que inclui todas as tags especificadas para a solicitação.
aws ec2 describe-spot-instance-requests \ --spot-instance-request-ids
sir-11112222-3333-4444-5555-66666EXAMPLE
{
"SpotInstanceRequests": [
{
"CreateTime": "2020-06-24T14:22:11+00:00",
"InstanceId": "i-1234567890EXAMPLE",
"LaunchSpecification": {
"SecurityGroups": [
{
"GroupName": "launch-wizard-6",
"GroupId": "sg-1234567890EXAMPLE"
}
],
"BlockDeviceMappings": [
{
"DeviceName": "/dev/xvda",
"Ebs": {
"DeleteOnTermination": true,
"VolumeSize": 8,
"VolumeType": "gp2"
}
}
],
"ImageId": "ami-1234567890EXAMPLE",
"InstanceType": "t2.micro",
"KeyName": "my-key-pair",
"NetworkInterfaces": [
{
"DeleteOnTermination": true,
"DeviceIndex": 0,
"SubnetId": "subnet-11122233"
}
],
"Placement": {
"AvailabilityZone": "eu-west-1c",
"Tenancy": "default"
},
"Monitoring": {
"Enabled": false
}
},
"LaunchedAvailabilityZone": "eu-west-1c",
"ProductDescription": "Linux/UNIX",
"SpotInstanceRequestId": "sir-1234567890EXAMPLE",
"SpotPrice": "0.012600",
"State": "active",
"Status": {
"Code": "fulfilled",
"Message": "Your spot request is fulfilled.",
"UpdateTime": "2020-06-25T18:30:21+00:00"
},
"Tags": [
{
"Key": "Environment",
"Value": "Production"
},
{
"Key": "Another key",
"Value": "Another value"
}
],
"Type": "one-time",
"InstanceInterruptionBehavior": "terminate"
}
]
}
Cancelar uma solicitação de instância spot
Se você não quiser mais sua solicitação de instância spot, poderá cancelá-la. Você só pode cancelar solicitações de instância spot que estão open
, active
ou disabled
.
-
A solicitação de instância spot é
open
quando sua requisição não ainda não foi atendida e nenhuma instância foi iniciada. -
A solicitação de instância spot é
active
quando ela foi atendida e as instâncias spot foram inicializadas como resultado. -
Sua solicitação de instância spot é
disabled
quando você interrompe a instância spot.
Se a solicitação de instância spot estiver active
e tiver uma instância spot associada em execução, o cancelamento da solicitação não encerrará a instância. Para obter mais informações sobre como encerrar uma instância spot, consulte Encerrar uma instância spot.
Para cancelar uma solicitação de instância spot (console)
-
Abra o console do Amazon EC2 em https://console.aws.amazon.com/ec2/
. -
No painel de navegação, escolha Spot Requests (Solicitações spot) e selecione a solicitação da instância spot.
-
Escolha Ações, Cancelar solicitação.
-
(Opcional) Ao terminar de trabalhar com as Instâncias spot associadas, você poderá encerrá-las. Na caixa de diálogo Cancelar solicitação spot, selecione Encerrar instâncias e escolha Confirmar.
Para cancelar uma solicitação de instância spot (AWS CLI)
-
Use o comando cancel-spot-instance-requests para cancelar a solicitação de instância spot especificada.
aws ec2 cancel-spot-instance-requests --spot-instance-request-ids
sir-08b93456
Interromper uma instância spot
Caso você não precise da Instâncias spot agora, mas quiser reiniciá-las posteriormente sem perder os dados persistentes no volume do Amazon EBS, você pode interrompê-los. As etapas para interromper uma instância spot são semelhantes às etapas para interromper uma instância sob demanda.
Quando uma instância spot for interrompida, você poderá modificar alguns atributos da instância, mas não o tipo dela.
Não cobramos pelo uso de uma instância spot interrompida nem por taxas de transferência de dados, mas cobramos pelo armazenamento dos volumes do Amazon EBS.
Limitações
-
Você poderá interromper uma instância spot somente se ela tiver sido executada por meio de uma solicitação de instância spot
persistent
. -
Não será possível interromper uma instância spot se a solicitação da instância spot associada for cancelada. Quando a solicitação da instância spot for cancelada, você só poderá terminar a instância spot.
-
Não é possível interromper uma instância spot se ela for parte de uma frota ou de um grupo de inicialização ou grupo de zona de disponibilidade.
Iniciar uma instância spot
É possível iniciar uma instância spot que você encerrou anteriormente. As etapas para iniciar uma instância spot são semelhantes às etapas para iniciar uma instância sob demanda.
Pré-requisitos
Você pode iniciar uma instância spot somente se:
-
Você interrompeu manualmente a instância spot.
-
A instância spot é uma instância com EBS.
-
A capacidade da instância spot está disponível.
-
O preço spot é inferior ao preço máximo.
Limitações
-
Não é possível iniciar uma instância spot se ela fizer parte da frota ou do grupo de inicialização ou grupo de zona de disponibilidade.
Encerrar uma instância spot
Se você terminar uma instância spot em execução ou interrompida que foi executada por uma solicitação de instância spot persistente, a solicitação de instância spot fará a transição para o estado open
para que a nova instância spot seja iniciada. Para garantir que nenhuma instância spot nova seja iniciada, primeiro você deve cancelar a solicitação de instância spot.
Se você cancelar uma solicitação de instância spot active
com uma instância spot em execução, a instância spot em execução não será automaticamente terminada, e você deverá terminá-la manualmente.
Se você cancelar uma solicitação de instância spot disabled
com uma instância spot interrompida, a instância spot interrompida será automaticamente terminada pelo serviço spot do Amazon EC2. Pode haver um pequeno atraso entre o momento em que você cancelar a solicitação de instância spot e o momento em que o serviço spot terminar a instância spot.
Para obter informações sobre como cancelar uma solicitação de instância spot, consulte Cancelar uma solicitação de instância spot.