Sfortunatamente, questo approccio ibrido di ridimensionamento automatico non sembra essere pronto all'uso.
Tuttavia, potresti essere in grado di aggirare questa limitazione come segue (non testato, solo un progetto di sistema che mi destreggiavo da un po '):
Potenziale soluzione
Come indicato in Uso del ridimensionamento automatico per avviare istanze Spot , l'offerta per prezzo spot è un parametro della Configurazione di avvio in uso. Come hai sottolineato, non è disponibile una configurazione di avvio ibrida , ma deve essere su richiesta o spot, il che significa che il caso d'uso richiede due diverse configurazioni di avvio.
Questo non sembra aiutare subito, perché puoi collegare solo una configurazione di avvio a un gruppo di ridimensionamento automatico alla volta , con i seguenti vincoli (parzialmente obsoleti) (vedi Configurazione di avvio ):
Quando si collega una configurazione di avvio nuova o aggiornata al gruppo di ridimensionamento automatico, eventuali nuove istanze verranno avviate utilizzando i nuovi parametri di configurazione. Le istanze esistenti non sono interessate . Quando il ridimensionamento automatico deve essere ridotto, per prima cosa termina le istanze con una configurazione di avvio precedente . [enfasi mia]
Le parti enfatizzate sono tuttavia fondamentali, con le prime che coprono il requisito di mantenere in esecuzione le istanze su richiesta dopo il passaggio dalla rispettiva configurazione iniziale di avvio su richiesta alla configurazione aggiuntiva di lancio spot, e quest'ultima non è più necessariamente il caso a causa di le Politiche di terminazione del ridimensionamento automatico introdotte di recente (per cambiare non c'è stata la solita fanfara tramite un post sul blog AWS di accompagnamento), documentato nelle Politiche di terminazione delle istanze per il tuo gruppo di ridimensionamento automatico :
Prima che il ridimensionamento automatico selezioni un'istanza da terminare, identifica innanzitutto la zona di disponibilità con più istanze rispetto alle altre zone di disponibilità utilizzate dal gruppo. Se tutte le zone di disponibilità hanno lo stesso numero di istanze, identifica una zona di disponibilità casuale. All'interno della zona di disponibilità identificata, il ridimensionamento automatico utilizza la politica di terminazione per selezionare l'istanza per la terminazione . [enfasi mia]
Come indicato in Come funzionano i criteri di terminazione , ora è possibile specificare NewestInstance , se si desidera terminare l'ultima istanza avviata , che sarebbe una delle istanze spot avviate più di recente:
Il ridimensionamento automatico utilizza l'ora di avvio dell'istanza per identificare l'istanza avviata per ultima.
Ovviamente potrebbe esserci un po 'di più in questo, ad esempio è possibile specificare una qualsiasi delle politiche come politica autonoma, oppure è possibile elencare più politiche in un elenco ordinato , ma questo approccio dovrebbe garantire il carico di tutte le istanze da considerare nel misurazioni e trigger di ridimensionamento automatico ; rimane comunque un avvertimento:
Avvertimento
Se il bilanciamento del carico termina una delle istanze su richiesta per qualsiasi altro motivo (ad es. Perché è diventato di per sé insalubre), non verrà sostituito automaticamente da un'istanza su richiesta. Quindi dovrai monitorare e tenere conto di questo evento separatamente, ad esempio attivando nuovamente temporaneamente la configurazione di avvio su richiesta.
In bocca al lupo!