Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Impostazione della preparazione di default dell'istanza per un gruppo con scalabilità automatica
CloudWatch raccoglie e aggrega i dati di utilizzo, come l'I/O di rete, tra CPU le istanze di Auto Scaling. Questi parametri vengono utilizzati per creare policy di dimensionamento che regolano il numero di istanze nel gruppo con scalabilità automatica man mano che il valore del parametro selezionato aumenta e diminuisce.
Puoi specificare quanto tempo dopo che un'istanza raggiunge InService
lo stato in cui deve attendere prima di aggiungere i dati di utilizzo alle metriche aggregate. Questo periodo di tempo specificato viene chiamato riscaldamento predefinito dell'istanza. In questo modo si evita che la scalabilità dinamica venga influenzata dalle metriche relative a singole istanze che non gestiscono ancora il traffico delle applicazioni e che potrebbero registrare un utilizzo temporaneamente elevato delle risorse di elaborazione.
Per ottimizzare le prestazioni delle politiche di tracciamento degli obiettivi e di scalabilità dei passaggi, ti consigliamo vivamente di abilitare e configurare il riscaldamento predefinito delle istanze. Non è abilitato o configurato per impostazione predefinita.
Quando abiliti il riscaldamento predefinito dell'istanza, tieni presente che se il gruppo Auto Scaling è impostato per utilizzare una politica di manutenzione delle istanze o utilizzi un aggiornamento dell'istanza per sostituire le istanze, puoi impedire che le istanze vengano conteggiate nella percentuale minima di integrità prima del termine dell'inizializzazione.
Indice
- Considerazioni sulle prestazioni di dimensionamento
- Scegli l'orario di riscaldamento predefinito dell'istanza
- Abilitazione della preparazione di default dell'istanza per un gruppo
- Verifica l'orario di riscaldamento predefinito dell'istanza per un gruppo
- Trova le politiche di scalabilità con un tempo di riscaldamento dell'istanza impostato in precedenza
- Cancella la preparazione dell'istanza precedentemente impostata per una policy di dimensionamento
Considerazioni sulle prestazioni di dimensionamento
Per la maggior parte delle applicazioni è utile disporre di un tempo di riscaldamento dell'istanza predefinito che si applica a tutte le funzionalità, anziché tempi di riscaldamento diversi per funzionalità diverse. Ad esempio, se non si imposta un riscaldamento predefinito dell'istanza, la funzionalità di aggiornamento dell'istanza utilizza il periodo di tolleranza del controllo dello stato di salute come orario di riscaldamento predefinito. Se disponete di politiche di tracciamento degli obiettivi e di scalatura dei passaggi, queste utilizzano il valore impostato per il cooldown predefinito come tempo di riscaldamento predefinito. Se hai delle politiche di scalabilità predittiva, non hanno un tempo di riscaldamento predefinito.
Durante il riscaldamento delle istanze, le politiche di scalabilità dinamica vengono ridimensionate solo se il valore della metrica delle istanze che non si stanno riscaldando è superiore alla soglia massima di allarme della policy (o all'utilizzo previsto di una politica di scalabilità di tracciamento del target). Se la domanda diminuisce, la scalabilità dinamica diventa più conservativa per proteggere la disponibilità dell'applicazione. Ciò blocca la scalabilità delle attività per la scalabilità dinamica fino al termine del riscaldamento delle nuove istanze.
Durante la scalabilità orizzontale, Amazon EC2 Auto Scaling considera le istanze in fase di riscaldamento come parte della capacità del gruppo quando decide quante istanze aggiungere al gruppo. Pertanto, più violazioni degli allarmi che richiedono l'aggiunta di una quantità simile di capacità si traducono in un'unica attività di scalabilità. L'intenzione è quella di ampliare continuamente, senza farlo eccessivamente.
Se il riscaldamento predefinito dell'istanza non è abilitato, il tempo di attesa di un'istanza prima di inviare le metriche CloudWatch e contarle ai fini della capacità corrente varierà da istanza a istanza. Pertanto, esiste la possibilità che le politiche di scalabilità funzionino in modo imprevedibile rispetto al carico di lavoro effettivo che si sta verificando.
Ad esempio, si consideri un'applicazione con uno schema di carico di lavoro ricorrente. on-and-off Una policy di dimensionamento predittivo viene utilizzata per prendere decisioni ricorrenti sull'opportunità di aumentare il numero di istanze. Poiché non è previsto un tempo di riscaldamento predefinito per le politiche di scalabilità predittiva, le istanze iniziano a contribuire immediatamente alle metriche aggregate. Se queste istanze hanno un utilizzo maggiore delle risorse all'avvio, l'aggiunta di istanze potrebbe causare un aumento delle metriche aggregate. A seconda del tempo necessario alla stabilizzazione dell'utilizzo, ciò potrebbe influire sulle policy di dimensionamento dinamico che utilizzano queste metriche. Se viene superata la soglia massima di allarme di una policy di dimensionamento dinamico, le dimensioni del gruppo aumentano nuovamente. Mentre le nuove istanze si stanno riscaldando, la scalabilità delle attività verrà bloccata.
Scegli l'orario di riscaldamento predefinito dell'istanza
La chiave per impostare la preparazione predefinita delle istanze è determinare il tempo necessario per completare l'inizializzazione delle istanze e per stabilizzare il consumo di risorse una volta raggiunto lo stato InService
. Quando scegli il tempo di riscaldamento dell'istanza, cerca di mantenere un equilibrio ottimale tra la raccolta dei dati di utilizzo per il traffico legittimo e la riduzione al minimo della raccolta dei dati associata ai picchi di utilizzo temporanei all'avvio.
Supponiamo che tu abbia un gruppo con dimensionamento automatico collegato a un sistema di bilanciamento del carico Elastic Load Balancing. Una volta terminato l’avvio delle nuove istanze, esse vengono registrate nel sistema di bilanciamento del carico prima di entrare nello stato InService
. Dopo che le istanze passano allo stato InService
, il consumo di risorse può ancora subire picchi temporanei e richiedere tempo per stabilizzarsi. Ad esempio, il consumo di risorse per un server applicazioni che deve scaricare e memorizzare nella cache risorse di grandi dimensioni richiede più tempo per stabilizzarsi rispetto a un server Web leggero senza risorse di grandi dimensioni da scaricare. La preparazione dell'istanza fornisce il ritardo necessario per stabilizzare il consumo di risorse.
Importante
Se non sei sicuro del tempo necessario per il riscaldamento, puoi iniziare con 300 secondi. Quindi diminuiscilo o aumentalo gradualmente fino a ottenere le migliori prestazioni di scalabilità per la tua applicazione. Potrebbe essere necessario eseguire questa operazione alcune volte per eseguire correttamente l'operazione. In alternativa, se disponi di politiche di scalabilità che hanno il proprio tempo di riscaldamento (EstimatedInstanceWarmup
), puoi utilizzare questo valore per iniziare. Per ulteriori informazioni, consulta Trova le politiche di scalabilità con un tempo di riscaldamento dell'istanza impostato in precedenza.
Utilizza gli hook del ciclo di vita per i casi d'uso in cui sono presenti attività di configurazione o script da eseguire all'avvio. Gli hook del ciclo di vita possono ritardare la messa in servizio delle nuove istanze finché non hanno finito di inizializzarsi. Sono particolarmente utili se si dispone di script di bootstrap che richiedono tempo per essere completati. Se aggiungi un hook del ciclo di vita, puoi ridurre il valore della preparazione di default dell'istanza. Per ulteriori informazioni sull'utilizzo di Hook del ciclo di vita, consulta Hook del ciclo di vita di Amazon EC2 Auto Scaling.