Sostituire le istanze Auto Scaling basate sulla durata massima dell'istanza - Amazon EC2 Auto Scaling

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à.

Sostituire le istanze Auto Scaling basate sulla durata massima dell'istanza

La durata massima delle istanze specifica la quantità massima di tempo (in secondi) durante la quale un'istanza può restare in servizio prima che venga terminata e sostituita. Un caso d'uso comune può essere un requisito per sostituire le istanze in base a una pianificazione a causa di policy di sicurezza interne o controlli di conformità esterni.

È necessario specificare un valore di almeno 86.400 secondi (un giorno). Per cancellare un valore impostato in precedenza, specifica un nuovo valore pari a 0. Questa impostazione si applica a tutte le istanze attuali e future del gruppo con scalabilità automatica.

Considerazioni

Di seguito sono riportate le considerazioni relative all'utilizzo di questa funzionalità:

  • Ogni volta che viene sostituita un'istanza precedente e viene avviata una nuova, quest'ultima utilizza il modello di avvio o la configurazione di avvio attualmente associata al gruppo con scalabilità automatica. Se il modello di avvio o la configurazione di avvio specifica l'ID Amazon Machine Image (AMI) di una versione diversa dell'applicazione, questa versione dell'applicazione verrà distribuita automaticamente.

  • Se si imposta una durata massima dell'istanza su un valore troppo basso, è possibile che le istanze vengano sostituite più rapidamente del previsto. Amazon EC2 Auto Scaling di solito sostituisce le istanze una alla volta, con una pausa tra le sostituzioni. Tuttavia, se la durata massima specificata dell'istanza non fornisce il tempo sufficiente per sostituire ogni istanza singolarmente, Amazon EC2 Auto Scaling deve sostituire più di un'istanza alla volta. È possibile sostituire più istanze contemporaneamente, fino al 10% della capacità corrente del gruppo con scalabilità automatica. Per evitare di sostituire troppe istanze contemporaneamente, imposta una durata massima dell'istanza più lunga o utilizza la protezione scalabile dell'istanza per impedire temporaneamente la chiusura di singole istanze. Per ulteriori informazioni, consulta Usa la protezione scalabile in base alle istanze per controllare la terminazione dell'istanza.

  • Per impostazione predefinita, Dimensionamento automatico Amazon EC2 crea una nuova attività di dimensionamento per terminare l'istanza, quindi la termina. Mentre l'istanza viene terminata, un'altra attività di dimensionamento avvia una nuova istanza. Puoi modificare questo comportamento in modo che venga avviato prima di terminare utilizzando una policy di manutenzione dell'istanza. Per ulteriori informazioni, consulta Policy di manutenzione delle istanze.

Impostazione della durata massima dell'istanza

Quando si crea un gruppo con scalabilità automatica nella console, non è possibile impostare la durata massima dell'istanza. Tuttavia, dopo aver creato il gruppo, è possibile modificarlo per impostare la durata massima dell'istanza.

Impostazione della durata massima dell'istanza per un gruppo (console)
  1. Apri la console Amazon EC2 all'indirizzo https://console.aws.amazon.com/ec2/ e scegli Gruppi con dimensionamento automatico dal pannello di navigazione.

  2. Seleziona la casella di controllo accanto al gruppo con dimensionamento automatico.

    Visualizzerai un riquadro diviso nella parte inferiore della pagina Auto Scaling groups (Gruppi Auto Scaling) in cui vengono mostrate le informazioni sul gruppo selezionato.

  3. Nella scheda Details (Dettagli) scegliere Advanced configurations (Configurazioni avanzate), Edit (Modifica).

  4. Per Maximum instance lifetime (Durata massima dell'istanza), inserisci il numero massimo di secondi in cui un'istanza può essere in servizio.

  5. Scegli Aggiorna.

Nella scheda Activity (Attività) in Activity history (Cronologia attività), è possibile visualizzare tutta la cronologia della sostituzione delle istanze per il gruppo.

Impostazione della durata massima dell'istanza per un gruppo (AWS CLI)

È inoltre possibile utilizzare AWS CLI per impostare la durata massima dell'istanza per i gruppi di Auto Scaling nuovi o esistenti.

Per i nuovi gruppi Auto Scaling, utilizzare il create-auto-scaling-groupcomando.

aws autoscaling create-auto-scaling-group --cli-input-json file://~/config.json

Di seguito è riportato un file config.json di esempio che mostra una durata massima dell'istanza di 2592000 secondi (30 giorni).

{ "AutoScalingGroupName": "my-asg", "LaunchTemplate": { "LaunchTemplateName": "my-launch-template", "Version": "$Default" }, "MinSize": 1, "MaxSize": 5, "MaxInstanceLifetime": 2592000, "VPCZoneIdentifier": "subnet-5ea0c127,subnet-6194ea3b,subnet-c934b782", "Tags": [] }

Per i gruppi Auto Scaling esistenti, utilizzare il update-auto-scaling-groupcomando.

aws autoscaling update-auto-scaling-group --auto-scaling-group-name my-existing-asg --max-instance-lifetime 2592000
Come verificare la durata massima dell'istanza per un gruppo con scalabilità automatica

Utilizza il comando describe-auto-scaling-groups.

aws autoscaling describe-auto-scaling-groups --auto-scaling-group-name my-asg

Limitazioni

  • Esattezza della durata massima non garantita per ogni istanza: non è garantita la sostituzione delle istanze alla fine della loro durata massima. In alcune situazioni, Amazon EC2 Auto Scaling potrebbe richiedere la sostituzione delle istanze dopo l'aggiornamento del parametro di durata massima dell'istanza. La ragione di questo comportamento è quella di evitare di sostituire tutte le istanze allo stesso tempo.

  • Protezione scalabile in base alle istanze rispettata: Amazon EC2 Auto Scaling offre una protezione scalabile in base alle istanze per aiutarti a controllare quali istanze possono essere chiuse. Quando questa protezione è abilitata su un'istanza, Amazon EC2 Auto Scaling non interromperà l'istanza anche se ha raggiunto la durata massima dell'istanza.

  • Istanze terminate prima dell'avvio: quando nel gruppo con dimensionamento automatico è presente una sola istanza, la caratteristica di durata massima dell'istanza può causare un'interruzione poiché Dimensionamento automatico Amazon EC2 termina un'istanza e quindi ne avvia una nuova come impostazione predefinita. Per modificare questo comportamento in modo che venga avviato prima della terminazione, consulta Policy di manutenzione delle istanze.