Instâncias spot do Amazon EC2 - há algum problema?


14

Eu precisava iniciar uma nova instância do EC2 hoje e decidi experimentar as novas instâncias spot , nas quais você pode reduzir o custo da instância oferecendo lances no preço máximo por hora que está preparado para pagar. Como o preço spot de hoje era de apenas 3,5 c / hora, comparado a 8,5 c / hora para uma instância sob demanda, fiquei pensando: se eu apenas oferecer um preço realmente alto, digamos 10 c / hora, posso ter certeza de obter um instância de execução longa muito mais barata que uma instância sob demanda (uma vez que as instâncias spot são cobradas apenas pelo preço spot atual)?

Suponho que seja teoricamente possível que o preço à vista ultrapasse o preço sob demanda, mas, tanto quanto posso constatar pelos dados no site da AWS, o preço à vista sempre esteve bem abaixo disso.

ATUALIZAÇÃO: Monitoro o preço spot da pequena instância há algumas semanas e tem sido muito consistente, variando apenas entre 2,9c e 3,1c. Eu escrevi uma postagem de blog mais detalhada sobre instâncias spot, incluindo um link para um plugin do Nagios que construí para monitorar o preço spot.

Respostas:


10

Em teoria, essa é a ideia, mas não hospede um servidor da Web ou qualquer coisa que não possa morrer. É tradicionalmente usado para tarefas distribuídas, como agitação de dados, e não para serviços, pois se o preço à vista ultrapassar seu lance máximo, o servidor será desligado.

Além disso, apenas para garantir que você tenha seus números corretos, é de US $ 0,085 por hora para demanda, e não de US $ 0,85. Pode fazer a diferença nas suas projeções :)


Obrigado pelos comentários - editei a pergunta, pois obtive tudo muito grande por um fator de 10!
gareth_bowles

4

Bem, licitar 10 vezes o preço atual ajudará. No entanto, no passado, houve incidentes que encerraram todas as instâncias de spot em execução em uma determinada zona (aumento de preço).

Uma medida importante de proteção é definir seus volumes persistentes para que eles sobrevivam a qualquer término indesejável (afinal, isso é verdade em qualquer instância). Outra é ter planos de backup e recuperação claros e delineados - o que você fará se a instância for encerrada, se você perder seus dados em uma zona (o que aconteceu na interrupção desta primavera), se você perder instâncias / dados entre zonas?

Quanto esforço você coloca no último cenário (na pior das hipóteses) é, obviamente, uma questão de custo / benefício, mas, em geral, você deseja ter o mesmo plano de recuperação para instâncias spot e persistentes.

Finalmente, as instâncias spot não podem "parar" (ser pausadas ou 'desativadas') e reiniciadas. Essa é uma consideração notável ao diagnosticar problemas - você não poderá parar uma instância interrompida, por exemplo, anexar os volumes a outra instância, fazer alterações e tentar reiniciar. (Você pode criar uma AMI e inicializar uma nova instância, é claro).


Lances no varejo podem fazer com que você pague no varejo ... quando o preço disparar.
Paulo

2

O problema é que, se a AWS experimentar uma utilização pesada de seus recursos, ela desativará sua instância local - as instâncias spot são apenas uma maneira de a AWS ganhar pelo menos algum dinheiro em servidores que estão ociosos quando a demanda é baixa em geral.

Basicamente, não é apenas um fator do valor que você oferece em relação aos preços spot, mas também depende da utilização geral da região da AWS.


0

Eu pensei a mesma coisa. Tive minhas instâncias spot encerradas mesmo quando meu preço máximo de lance foi simplesmente definido como o mesmo que uma instância sob demanda. Não há garantia de que sua instância permanecerá ativa, independentemente do preço do lance atual.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.