Quais são as suas opções de Instância Spot na AWS, Azure e Google?
O uso de instâncias Spot pode desempenhar um papel fundamental na redução dos custos da nuvem. AWS, Google e Azure oferecem a opção de usar instâncias Spot, por exemplo, as Instâncias Spot são muito úteis tanto no processamento Batch como em clusters de alto desempenho, bem como servidores web com carga de trabalho variável.
A maioria dos fornecedores de nuvem classifica seu modelo de preços em três categorias distintas:
On-Demand Instances: permite que você pague a capacidade computacional por hora sem compromissos de longo prazo ou pagamentos antecipados. Ele permite que você aumente ou diminua sua capacidade computacional dependendo das demandas da aplicação e pague apenas a taxa horária especificada para as Instâncias que você usa.
Reserved Instances: fornecem a capacidade de investir em um pagamento antecipado maior para receber um desconto maior. Os RI's podem minimizar riscos, administrar orçamentos de maneira previsível e cumprir políticas que exigem compromissos de longo prazo. Sua Instância Reservada estará sempre disponível para o sistema operacional e a Zona de Disponibilidade na qual você a contratou.
Spot Instances: Com instâncias Spot, você pode licitar por capacidade não utilizada em um data center de fornecedores de nuvem. Estima-se um economia de até 90% do custo quando comparado às instâncias "On-Demand". No entanto, se outras ofertas forem mais altas do que a sua, sua Instância será retirada do ar sem qualquer aviso prévio.
Spot Instances na AWS
A AWS teve opções de Instâncias Spot disponíveis por muitos anos.
- Com Spot Instances, você precisa especificar o preço que você está disposto a pagar por hora. Se o preço à vista for inferior ao seu preço de oferta, você pode usar essa Instância até que o preço à vista esteja acima do preço da oferta. - Quando você envia uma solicitação de "Spot Instance", é necessário especificar o tipo de Instância e a Zona de Disponibilidade. - No caso da AWS, você precisa se preparar para interrupções. Quando o preço da Instância Spot for acima do preço da oferta, sua Instância será retirada e encerrada. - A AWS anunciou recentemente que é possível parar Instâncias Spot. Até recentemente, você não conseguia parar uma Instância Spot na AWS, mesmo que fosse uma instância com suporte do EBS, sua única opção era reinicia-la. - As instâncias AWS Spot são integradas com Autoscaling. - É possível usar uma combinação de instâncias On-Demand e Spot. - As Instâncias Spot têm um recurso chamado EC2 Spot Fleet. Com Spot Fleet, você pode oferecer e lançar vários servidores EC2 com uma solicitação de API única. É necessário especificar um preço máximo, capacidade de destino, tipo de instância e zona de disponibilidade. Mesmo que os preços da Instância Spot mudem, o Spot Fleet tenta manter a capacidade da Instância desejada. - Você pode usar instâncias Spot com a instância dedicada ou multi-tenant. Instâncias dedicadas executam hardware dedicado e apenas para um único cliente.
Spot Instances no Azure
O Azure lançou recentemente o conceito de Spot Instance, ainda em visualização pública, chamado Low-Priority VM.
- A "Low-Priority VM" é alocada a partir do excesso de capacidade do pool de datacenter do Azure. - A "Low-Priority VM" só pode ser comprada através do Azure Batch Service. É um serviço onde você pode executar tarefas em "batch" na Azure. - A "Low-Priority VM" ajuda a reduzir o custo da execução dos trabalhos em "batch" Azure. - Você não pode usar "Low-Priority VM" com nenhum dos outros serviços Azure. - Um grupo de "batch" pode conter "Low-Priority VM" e instâncias "On-Demand / Dedicated". - É possível executar completamente tarefas em "batch" com "Low-Priority VM" e quando a capacidade cai abaixo do limiar mínimo, lançará instâncias "Dedicated". - Se os processos em "batch" estiverem interrompidos, o "batch" irá detectar e voltar a filtrar os processos. - Você pode usar "Low-Priority VM" para processamento de mídia, transcodificação e renderização.
Spot Instances no Google Cloud
A opção do Google Cloud para Spot Instances é semelhante à AWS - chamada "Preemptible VM Instances".
- As "Preemptible VM Instances" são 80% mais baratas do que uma VM regular. - Para "Preemptible VM Instances" não há pagamento variável. O preço é corrigido sem necessidade de lance.
- As "Preemptible VM Instances" são encerradas após 24 horas. - As "Preemptible VM Instances" ainda são exibidas no console do Google, mas elas serão exibidas como estado terminadas. Ainda é possível recuperar os dados do armazenamento em anexo, mas este ainda será cobrado. - Você tem um espaço de tempo de 30 segundos antes das "Preemptible VM Instances" encerrem. - Você pode usar um script de desligamento do Google para executar tarefas de limpeza, exportar logs e encerrar com calma um processo em execução. - Você pode usar "Preemptible VM Instances" com grupos de instâncias gerenciadas. Os grupos de instâncias gerenciadas são semelhantes à Autoscaling no AWS. - Se a "Preemptible VM Instance" for encerrada, o mecanismo de cálculo tenta iniciar uma Instância de substituição. Você pode iniciar "Preemptible VM Instances" de um único comando ou do console.