Instancje spot Amazon EC2 - czy jest jakiś haczyk?

14

Musiałem dzisiaj założyć nową instancję EC2 i postanowiłem wypróbować nowe instancje spot , w których można obniżyć koszty instancji, licytując maksymalną cenę za godzinę, którą jesteś gotów zapłacić. Ponieważ dzisiejsza cena spot wynosiła zaledwie 3,5 centa za godzinę, w porównaniu z 8,5 cala za godzinę w przypadku wystąpienia na żądanie, zastanawiałem się: jeśli po prostu zaoferuję naprawdę wysoką cenę, powiedzmy 10 c / godzinę, czy mogę skutecznie być pewien dużo tańsza, długotrwała instancja niż instancja na żądanie (ponieważ instancje spot są obciążane tylko bieżącą ceną spot)?

Przypuszczam, że teoretycznie możliwe jest, że cena spot przekracza cenę na żądanie, ale o ile wiem z danych na stronie AWS, cena spot zawsze była znacznie niższa.

AKTUALIZACJA: Od kilku tygodni monitoruję cenę spotu w małej instancji i jest ona bardzo spójna, waha się tylko między 2,9c a 3,1c. Napisałem bardziej szczegółowy post na blogu na temat instancji, w tym link do wtyczki Nagios, którą zbudowałem w celu monitorowania ceny spot.

gareth_bowles
źródło

Odpowiedzi:

10

Teoretycznie taki jest pomysł, ale nie hostuj serwera ani niczego, co nie może umrzeć. Jest to tradycyjnie wykorzystywane do zadań rozproszonych, takich jak przenoszenie danych, a nie do usług, ponieważ jeśli cena spot przekroczy maksymalną stawkę, serwer zostanie wyłączony.

Ponadto, tylko upewniając się, że masz prawidłowe liczby, to 0,085 USD za godzinę na żądanie, a nie 0,85 USD. Może mieć wpływ na twoje prognozy :)

UltimateBrent
źródło
Dzięki za komentarze - zredagowałem pytanie, ponieważ wszystko było za duże dziesięciokrotnie!
gareth_bowles
4

Cóż, licytacja 10x aktualna cena pomoże. Jednak w przeszłości zdarzały się incydenty, które kończyły wszystkie instancje działające w danej strefie (skok cen).

Jednym z ważnych środków ochronnych jest ustawienie stałych woluminów tak, aby przetrwały wszelkie niechciane zakończenie (w końcu dotyczy to każdego przypadku). Innym jest, aby mieć jasny, opisaną kopii zapasowych i odzyskiwania plans-- Co będzie pan robić, gdy kończy przykład, jeśli stracisz swoje dane w jednej strefie (co wydarzyło się w zaniku tej wiosny), jeśli przegra instancje / dane w różnych strefach?

Ile wysiłku włożono w ten drugi scenariusz (najgorszy przypadek), to oczywiście kwestia kosztów / korzyści, ale ogólnie rzecz biorąc, będziesz chciał mieć taki sam plan odzyskiwania zarówno dla instancji natychmiastowych, jak i trwałych.

Wreszcie instancje dodatkowe nie mogą „zatrzymać” (zostać wstrzymane lub „wyłączone”) i zrestartowane. Jest to godne uwagi podczas diagnozowania problemów - nie będziesz w stanie zatrzymać zawieszonego wystąpienia, na przykład dołączyć woluminów do innego wystąpienia, wprowadzić zmian i podjąć próbę ponownego uruchomienia. (Oczywiście możesz być w stanie utworzyć AMI i uruchomić nową instancję).

1kenthomas
źródło
Licytacja w stosunku do sprzedaży detalicznej może spowodować, że zapłacisz ponad sprzedaż detaliczną .... gdy cena wzrośnie.
Paul
2

Problem polega na tym, że jeśli AWS intensywnie wykorzystuje swoje zasoby, spowoduje to wyłączenie Twojej instancji spot - instancje spot to tylko sposób na zarobienie przez AWS przynajmniej trochę pieniędzy na serwerach, które po prostu pozostają bezczynne, gdy popyt jest ogólnie niski.

Zasadniczo nie jest to tylko czynnik kwoty licytowanej w stosunku do cen spotowych, ale także zależy od ogólnego wykorzystania regionu AWS.

bhavinb
źródło
0

Pomyślałem o tym samym. Moje instancje spot zostały zakończone, nawet gdy moja maksymalna cena oferty była po prostu taka sama jak instancja na żądanie. Nie ma gwarancji, że Twoja instancja pozostanie aktywna niezależnie od bieżącej ceny oferty.

skrewler
źródło