Especificamente, as VMs spot são VMs que usam o modelo de provisionamento spot. O modelo de provisionamento de uma VM afeta os descontos e a disponibilidade dela. Com o modelo de provisionamento spot, é possível receber recursos a preços muito mais baixos em comparação com as VMs padrão. No entanto, o Compute Engine pode forçar a interrupção das VMs spot a qualquer momento para recuperar recursos. Use VMs do Spot para reduzir custos de cargas de trabalho tolerantes a falhas, como jobs de processamento em lote ou aplicativos sem estado.
O que são VMs do Spot?
As VMs spot estão disponíveis por preços muito mais baixos, com descontos de até 60% para todas as séries de máquinas (C3, M3 e A3), em comparação com o preço on demand das VMs padrão.No entanto, o Compute Engine pode forçar a interrupção das VMs spot a qualquer momento, por exemplo, quando os recursos são necessários para outras tarefas. Nesse momento incerto de preempção, o Compute Engine interrompe (padrão) ou exclui as VMs spot, dependendo da ação de encerramento especificada para cada VM spot.
As VMs spot são capacidade excedente do Compute Engine, então a disponibilidade delas varia de acordo com o uso do Compute Engine. É possível ajudar a reduzir problemas de disponibilidade para VMs do Spot seguindo as práticas recomendadas, como verificar a disponibilidade de VMs do Spot antes da criação, conforme explicado mais adiante neste documento. As VMs spot não têm um tempo de execução mínimo ou máximo, a menos que você limite o tempo de execução especificamente.
Se as cargas de trabalho forem tolerantes a falhas e resistentes a possíveis preempções da VM, as VMs do Spot poderão reduzir significativamente os custos do Compute Engine. Por exemplo, jobs de processamento em lote podem ser executados em VMs spot. Quando algumas dessas VMs são interrompidas durante o processamento, o job fica lento, mas não para por completo. As VMs do Spot concluem as tarefas de processamento em lote sem colocar carga extra nas VMs existentes e sem exigir que você pague o preço total de VMs padrão adicionais.
Limitações de VMs do Spot
As VMs do Spot funcionam como VMs padrão, mas têm as seguintes limitações:
O Compute Engine pode forçar a interrupção das VMs spot para recuperar os recursos a qualquer momento. O Compute Engine interrompe à força as VMs spot por vários motivos, por exemplo, eventos do sistema. A probabilidade de isso acontecer geralmente é baixa, mas pode variar de um dia para o outro e de uma zona para a outra, dependendo das condições atuais. Para mais informações, consulte Seleção de remoção neste documento.
As VMs spot são recursos finitos do Compute Engine. Por isso, pode ser que elas nem sempre estejam disponíveis.
As VMs do Spot não podem fazer a migração em tempo real para se tornarem VMs padrão enquanto estiverem em execução ou sendo configuradas para reiniciar automaticamente quando há um evento de manutenção.
Devido às limitações anteriores, as VMs do Spot não são cobertas por nenhum contrato de nível de serviço e são excluídas do SLA do Compute Engine.
Preempção de VMs do Spot
Nesta seção, descrevemos como o Compute Engine força a interrupção das VMs do Spot e quais VMs são selecionadas para preempção. Além disso, as instruções para detectar, processar e testar a preempção das VMs spot são explicadas mais adiante em Gerenciar a preempção das VMs spot.
Processo de preempção
O Compute Engine executa as seguintes etapas para forçar a interrupção das VMs do Spot:
O Compute Engine envia um aviso de preempção para a VM atualizando o valor
preemptednos metadados padrão da VM paraTRUE, que sua carga de trabalho pode monitorar para detectar a preempção.A duração do aviso de preempção é o período entre esse sinal de metadados e o momento em que o Compute Engine envia um sinal ACPI G2 Soft Off para iniciar o período de encerramento. A duração do aviso de preempção afeta como sua carga de trabalho pode lidar com a preempção e pode ser definida como um dos valores a seguir ao criar uma VM spot: 120 segundos: recomendamos definir a duração do aviso de remoção para 120 segundos em cargas de trabalho que precisam de uma duração dedicada ou mais de 30 segundos para lidar com a remoção. É possível processar a interrupção forçada na carga de trabalho aguardando a interrupção da VM. (Também é possível especificar um script de desligamento, que é executado durante o período de desligamento de melhor esforço a seguir.)
0 segundo (padrão): se a duração do aviso de preempção de uma VM spot não for especificada ou for definida como 0, não haverá um atraso dedicado entre a detecção da preempção nos metadados e o sinal ACPI G2 Soft Off. Sua carga de trabalho pode processar o aviso de preempção durante o período de desligamento a seguir usando um script de desligamento.
Quando o sinal ACPI G2 Soft Off é enviado, ele aciona qualquer script de encerramento que você tenha configurado para a VM spot e representa o início do período de encerramento. O período de encerramento das VMs spot é baseado no melhor esforço e pode ser de até 30 segundos, o que é menor do que o período de encerramento de outras instâncias.
Se a VM spot não for interrompida após o período de encerramento, o Compute Engine enviará um sinal ACPI G3 Mechanical Off para o sistema operacional.
O estado final das VMs do Spot varia de acordo com a ação de encerramento especificada para cada VM:
- Se a ação de encerramento for definida como
STOPou não especificada, o Compute Engine interromperá a VM, fazendo a transição para o estadoTERMINATED. - Se a ação de encerramento estiver definida como
DELETE, o Compute Engine excluirá a VM.
- Se a ação de encerramento for definida como
Você pode simular a preempção de uma VM interrompendo-a ou excluindo a VM conforme necessário.
Se a VM preemptiva for interrompida, ela ainda aparecerá no projeto, mas você não será
cobrado pelas horas da VM enquanto ela permanecer no estado TERMINATED. É possível
acessar e recuperar dados de todos os discos permanentes que estejam conectados à VM,
mas eles continuarão gerando custos de armazenamento até serem excluídos.
Como nas VMs padrão, os discos permanentes marcados para exclusão automática
são excluídos quando você exclui as VMs do Spot.
Se o Compute Engine interromper as VMs spot menos de um minuto após a criação delas, você não vai receber cobranças pelo uso dessas VMs. Isso garante que você não pague pelas VMs spot, a menos que elas tenham tido tempo para concluir uma quantidade significativa de trabalho. No entanto, as cobranças por sistemas operacionais premium ainda são calculadas normalmente.
Seleção de preempção
A preempção pode ocorrer quando as VMs spot estão no estado RUNNING. No estado TERMINATED, elas não são consideradas para preempção.
Como resultado, é possível redefinir o processo de preempção interrompendo e reiniciando as VMs spot, já que a interrupção as deixa em um estado TERMINATED.
É possível interromper e reiniciar VMs spot interrompidas quantas vezes quiser, desde que haja capacidade. Redefinir ou reiniciar VMs deixa as VMs no estado RUNNING e, portanto, não redefine o processo de preempção.
Não é possível saber por que um determinado evento de remoção ocorreu. Assim como os erros de disponibilidade de recursos, as taxas de remoção podem variar em diferentes zonas, horários ou recursos. Para sugestões específicas sobre como reduzir sua taxa de preempção, consulte as práticas recomendadas.
Preços
Os preços spot, que são os preços das VMs spot, oferecem descontos significativos para VMs. Os preços spot oferecem descontos de até 60% no preço on demand para as séries de máquinas C3, M3 e A3.Se uma VM preemptiva for interrompida, você não receberá cobranças pelas horas dela
enquanto ela permanecer no estado TERMINATED. É possível acessar e recuperar dados de
todos os discos permanentes conectados à VM, mas eles vão continuar gerando
custos de armazenamento até que sejam excluídos. Saiba mais sobre
tempo de atividade da instância
e preços de disco.
Para conferir os preços mais recentes de VMs spot, consulte a página de preços de VMs spot, use a API Cloud Billing Catalog ou inscreva-se para receber anúncios de preços de VMs spot.
Como usar VMs do Spot com o Compute Engine
Nesta seção, fornecemos informações importantes sobre como usar VMs do Spot com outras ofertas do Compute Engine. Saiba mais sobre o uso de VMs spot com grupos gerenciados de instâncias (MIGs), sistemas operacionais premium, SSDs locais e GPUs. Além disso, entenda como as VMs do Spot afetam suas cotas de recursos do Compute Engine.
VMs spot em um MIG
É possível criar VMs do Spot em um MIG especificando o modelo de provisionamento do Spot em um modelo de instância antes de criar ou atualizar o grupo.
Os MIGs só podem criar ou adicionar novas VMs do Spot quando há recursos extras do Compute Engine disponíveis. Se esses recursos forem limitados, os MIGs não poderão redimensionar ou escalonar automaticamente o número de VMs spot no grupo.
Ao usar a flexibilidade de instância, que permite vários tipos de máquina no MIG, ele seleciona automaticamente os tipos com as menores taxas de remoção por preempção observadas para minimizar a interrupção da carga de trabalho.
Os MIGs sempre tentam manter o tamanho pretendido ou o tamanho especificado pelo escalonador automático para eles. Se o Compute Engine interromper uma ou mais VMs spot em um MIG, o grupo tentará repetidamente recriar essas VMs usando o modelo de instância especificado. Se os recursos necessários ficarem disponíveis novamente, o grupo recriará as VMs e manterá o tamanho do grupo de destino.
Sistemas operacionais premium em VMs do Spot
As VMs do Spot não reduzem o custo de sistemas operacionais premium e não alteram a maneira como você é cobrado pelo uso desses sistemas operacionais. Se o Compute Engine interromper as VMs do Spot que executam um sistema operacional premium, você será cobrado por esse sistema operacional como se tivesse interrompido as VMs. As cobranças por uso mínimo vão continuar em vigor, e as faturas de sistemas operacionais premium vão continuar sendo calculadas com o arredondamento até o incremento de uso mais próximo.
Os tipos de máquina em VMs spot que executam sistemas operacionais premium são sempre cobrados por segundo e seguem os preços listados na página Preços dos tipos de máquina.
GPUs em VMs do Spot
É possível adicionar GPUs às VMs do Spot a um preço mais baixo para as GPUs. As GPUs anexadas às VMs do Spot funcionam como GPUs normais, mas persistem apenas durante a vida útil da VM. As VMs do Spot com GPUs seguem o mesmo processo de preempção de todas as VMs do Spot.
Durante eventos de manutenção, as VMs do Spot com GPUs são interrompidas por padrão e não podem ser reiniciadas automaticamente. Para recriar suas VMs após a interrupção forçada, use um grupo de instâncias gerenciadas. Os grupos gerenciados de instâncias recriarão as instâncias de VM se os recursos de vCPU, memória e GPU estiverem disponíveis.
Se você quiser um aviso antes que as VMs sejam interrompidas ou se quiser configurá-las para reiniciar automaticamente após um evento de manutenção, use VMs padrão com uma GPU. Para VMs padrão com GPUs, o Compute Engine fornece notificação com uma hora de antecedência da preempção.
O Compute Engine não cobrará pelas GPUs se as instâncias forem interrompidas no primeiro minuto de execução.
Para saber como criar VMs do Spot com GPUs anexadas, leia Criar uma VM com GPUs anexadas e Como criar VMs do Spot. Por exemplo, consulte Criar uma instância A3 Ultra ou A4 usando VMs spot.
A seguir
Faça um teste
Se você tiver começado a usar o Google Cloud agora, crie uma conta para avaliar o desempenho do Compute Engine em situações reais. Clientes novos também recebem US$ 300 em créditos para executar, testar e implantar cargas de trabalho.
Faça uma avaliação sem custos do Compute Engine