Ten hybrydowy Auto Scaling podejście wydaje się nie być dostępne po wyjęciu z pudełka Rzeczywiście, niestety.
Jednak możesz być w stanie obejść to ograniczenie w następujący sposób (niesprawdzony, tylko projekt systemu, nad którym żonglowałem od dłuższego czasu):
Potencjalne obejście
Jak opisano w sekcji Używanie automatycznego skalowania do uruchamiania instancji spotów, cena ofertowa spot jest parametrem używanej konfiguracji uruchamiania . Jak już wskazałeś, hybrydowa konfiguracja uruchamiania nie jest dostępna, raczej musi być na żądanie lub na miejscu, co oznacza, że przypadek użycia wymaga dwóch różnych konfiguracji uruchamiania.
Nie wydaje się to od razu pomocne, ponieważ można dołączyć tylko jedną konfigurację uruchamiania do grupy automatycznego skalowania naraz , z następującymi (częściowo nieaktualnymi) ograniczeniami (patrz Konfiguracja uruchamiania ):
Po dołączeniu nowej lub zaktualizowanej konfiguracji uruchamiania do grupy automatycznego skalowania wszelkie nowe instancje zostaną uruchomione przy użyciu nowych parametrów konfiguracji. Nie ma to wpływu na istniejące wystąpienia . Kiedy funkcja automatycznego skalowania musi zostać zmniejszona, najpierw kończy wystąpienia, które mają starszą konfigurację uruchamiania . [moje podkreślenie]
Podkreślone części są jednak kluczowe, przy czym te pierwsze obejmują wymóg utrzymania instancji działających na żądanie po zmianie z odpowiedniej początkowej konfiguracji uruchamiania na dodatkową konfigurację uruchamiania dodatkowego na żądanie, a ta druga niekoniecznie już tak jest z powodu niedawno wprowadzone zasady zakończenia automatycznego skalowania (dla odmiany zwykle nie było fanfarów za pośrednictwem dołączonego posta na blogu AWS), udokumentowane w zasadach zakończenia wystąpienia dla Twojej grupy automatycznego skalowania :
Zanim automatyczne skalowanie wybierze instancję do zakończenia, najpierw identyfikuje strefę dostępności, która ma więcej instancji niż inne strefy dostępności używane przez grupę. Jeśli wszystkie strefy dostępności mają tę samą liczbę wystąpień, identyfikuje losową strefę dostępności. W obrębie zidentyfikowanej strefy dostępności funkcja automatycznego skalowania używa zasady zakończenia do wybrania instancji do zakończenia . [moje podkreślenie]
Jak opisano w zasadach działania zasad zakończenia , możesz teraz określić opcję NewestInstance , jeśli chcesz, aby ostatnia uruchomiona instancja została zakończona , co byłoby jedną z ostatnio uruchomionych instancji dodatkowych:
Automatyczne skalowanie wykorzystuje czas uruchomienia instancji do zidentyfikowania instancji, która została uruchomiona jako ostatnia.
Oczywiście może być w tym nieco więcej, np. Możesz określić dowolną z zasad jako autonomiczną zasadę lub możesz wyświetlić wiele polityk na liście uporządkowanej , ale takie podejście powinno zapewnić obciążenie wszystkich instancji uwzględnianych w automatyczne skalowanie pomiarów i wyzwalaczy ; pozostaje jednak jedno zastrzeżenie:
Zastrzeżenie
Jeśli moduł równoważenia obciążenia zakończy jedną z instancji na żądanie z jakiegokolwiek innego powodu (np. Ponieważ sam stał się niezdrowy), nie zostanie automatycznie zastąpiony przez instancję na żądanie. Musisz więc monitorować to zdarzenie i rozliczać je osobno, np. Poprzez tymczasową aktywację konfiguracji uruchamiania na żądanie.
Powodzenia!