Ridimensionamento manuale per Amazon EC2 Auto Scaling - 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à.

Ridimensionamento manuale per Amazon EC2 Auto Scaling

È possibile regolare manualmente il numero di EC2 istanze nel gruppo Auto Scaling in qualsiasi momento. Questo processo di modifica manuale del conteggio delle istanze viene definito ridimensionamento manuale. Il ridimensionamento manuale è un'alternativa al ridimensionamento automatico, soprattutto se si desidera apportare modifiche alla capacità una tantum.

Dopo aver ridimensionato manualmente il gruppo, Amazon EC2 Auto Scaling riprende le normali attività di auto scaling in base alle politiche di scalabilità e alle azioni pianificate che hai definito. Per i gruppi con il riscaldamento predefinito delle istanze abilitato, tutte le nuove istanze passano attraverso un periodo di riscaldamento prima di iniziare a contribuire alle metriche utilizzate per la scalabilità automatica. Questo periodo di riscaldamento aiuta a stabilizzare il gruppo alla nuova capacità. Per ulteriori informazioni, consulta Impostazione della preparazione di default dell'istanza per un gruppo con scalabilità automatica.

A volte, potresti voler disabilitare temporaneamente le politiche di ridimensionamento e le azioni pianificate prima di ridimensionare manualmente un gruppo. In questo modo si evitano conflitti tra le azioni di ridimensionamento manuali e le attività di ridimensionamento automatizzate. Per ulteriori informazioni, consulta Disattiva le attività di scalabilità.

Modifica della capacità desiderata di un gruppo con dimensionamento automatico esistente

Quando modifichi la capacità desiderata del tuo gruppo Auto Scaling, Amazon Auto EC2 Scaling gestisce il processo di avvio e chiusura delle istanze per raggiungere la nuova dimensione desiderata.

Console
Come modificare le dimensioni del gruppo con scalabilità automatica
  1. Apri la EC2 console Amazon all'indirizzo https://console.aws.amazon.com/ec2/e scegli Auto Scaling Groups dal pannello di navigazione.

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

    Nella parte inferiore della pagina viene visualizzato un riquadro diviso.

  3. Nella scheda Details (Dettagli) scegliere Group details (Dettagli gruppo), Edit (Modifica).

  4. Per Capacità desiderata, aumentare o diminuire la capacità desiderata. Ad esempio, per aumentare di uno la dimensione del gruppo, se il valore corrente è1, immettete2.

    Se il nuovo valore della capacità desiderata è maggiore della capacità minima desiderata e della capacità massima desiderata, la capacità massima desiderata viene automaticamente aumentata fino al nuovo valore di capacità desiderato.

  5. Al termine, scegli Update (Aggiorna).

Verificate che la dimensione del gruppo specificata abbia comportato l'avvio della stessa quantità di istanze. Ad esempio, se hai aumentato la dimensione del gruppo di uno, verifica che il gruppo Auto Scaling abbia lanciato un'istanza aggiuntiva.

Come verificare che le dimensioni del gruppo con scalabilità automatica siano cambiate
  1. Nella scheda Attività, nella Cronologia delle attività, è possibile visualizzare lo stato di avanzamento delle attività associate al gruppo Auto Scaling. La colonna Status (Stato) mostra lo stato corrente della tua istanza. Durante l'avvio dell'istanza, la colonna di stato mostra Not yet in service. Una volta avviata l'istanza, lo stato diventa Successful. Puoi anche utilizzare l'icona di aggiornamento per visualizzare lo stato corrente dell'istanza. Per ulteriori informazioni, consulta Verificare un'attività di dimensionamento per un gruppo con scalabilità automatica.

  2. Nella scheda Gestione dell'istanza, in Istanze, puoi visualizzare lo stato dell'istanza. L'avvio di un'istanza richiede pochi minuti.

    • La colonna Lifecycle (Ciclo di vita) mostra lo stato dell'istanza. Inizialmente, l'istanza è in stato Pending. Lo stato di un'istanza pronta a ricevere traffico è InService.

    • La colonna Health status mostra il risultato dei controlli di integrità di Amazon EC2 Auto Scaling sulla tua istanza.

AWS CLI

L'esempio seguente presuppone la creazione di un gruppo con scalabilità automatica con una dimensione minima di 1 e massima di 5. Pertanto, attualmente il gruppo ha un'istanza in esecuzione.

Come modificare le dimensioni del gruppo con scalabilità automatica

Utilizzate il set-desired-capacitycomando per modificare le dimensioni del gruppo Auto Scaling, come mostrato nell'esempio seguente.

aws autoscaling set-desired-capacity --auto-scaling-group-name my-asg \ --desired-capacity 2

Se scegli di rispettare il tempo di raffreddamento di default per il gruppo con scalabilità automatica, dovrai specificare l'opzione –-honor-cooldown come mostrato nel seguente esempio. Per ulteriori informazioni, consulta Tempi di recupero di scalabilità per Amazon Auto Scaling EC2.

aws autoscaling set-desired-capacity --auto-scaling-group-name my-asg \ --desired-capacity 2 --honor-cooldown
Come verificare le dimensioni del gruppo con scalabilità automatica

Utilizzate il describe-auto-scaling-groupscomando per confermare che la dimensione del gruppo Auto Scaling è cambiata, come nell'esempio seguente.

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

Di seguito è riportato un esempio di output, che fornisce dettagli sul gruppo e sulle istanze avviate.

{ "AutoScalingGroups": [ { "AutoScalingGroupName": "my-asg", "AutoScalingGroupARN": "arn", "LaunchTemplate": { "LaunchTemplateName": "my-launch-template", "Version": "1", "LaunchTemplateId": "lt-050555ad16a3f9c7f" }, "MinSize": 1, "MaxSize": 5, "DesiredCapacity": 2, "DefaultCooldown": 300, "AvailabilityZones": [ "us-west-2a" ], "LoadBalancerNames": [], "TargetGroupARNs": [], "HealthCheckType": "EC2", "HealthCheckGracePeriod": 300, "Instances": [ { "ProtectedFromScaleIn": false, "AvailabilityZone": "us-west-2a", "LaunchTemplate": { "LaunchTemplateName": "my-launch-template", "Version": "1", "LaunchTemplateId": "lt-050555ad16a3f9c7f" }, "InstanceId": "i-05b4f7d5be44822a6", "InstanceType": "t3.micro", "HealthStatus": "Healthy", "LifecycleState": "Pending" }, { "ProtectedFromScaleIn": false, "AvailabilityZone": "us-west-2a", "LaunchTemplate": { "LaunchTemplateName": "my-launch-template", "Version": "1", "LaunchTemplateId": "lt-050555ad16a3f9c7f" }, "InstanceId": "i-0c20ac468fa3049e8", "InstanceType": "t3.micro", "HealthStatus": "Healthy", "LifecycleState": "InService" } ], "CreatedTime": "2019-03-18T23:30:42.611Z", "SuspendedProcesses": [], "VPCZoneIdentifier": "subnet-c87f2be0", "EnabledMetrics": [], "Tags": [], "TerminationPolicies": [ "Default" ], "NewInstancesProtectedFromScaleIn": false, "ServiceLinkedRoleARN": "arn", "TrafficSources": [] } ] }

Nota che DesiredCapacity mostra il nuovo valore. Il gruppo con scalabilità automatica ha avviato un'altra istanza.

Terminare un'istanza nel gruppo con dimensionamento automatico (AWS CLI)

A volte potresti voler dimensionare manualmente nel tuo gruppo con dimensionamento automatico ma desideri terminare un'istanza specifica. È possibile ridimensionare manualmente il gruppo Auto Scaling utilizzando il comando terminate-instance-in-auto-scaling-group e specificando l'ID dell'istanza che si desidera terminare e l'--should-decrement-desired-capacityopzione, come mostrato nell'esempio seguente.

aws autoscaling terminate-instance-in-auto-scaling-group \ --instance-id i-026e4c9f62c3e448c --should-decrement-desired-capacity

Di seguito è riportato un esempio di output, che fornisce dettagli sull'attività di scaling.

{ "Activities": [ { "ActivityId": "b8d62b03-10d8-9df4-7377-e464ab6bd0cb", "AutoScalingGroupName": "my-asg", "Description": "Terminating EC2 instance: i-026e4c9f62c3e448c", "Cause": "At 2023-09-23T06:39:59Z instance i-026e4c9f62c3e448c was taken out of service in response to a user request, shrinking the capacity from 1 to 0.", "StartTime": "2023-09-23T06:39:59.015000+00:00", "StatusCode": "InProgress", "Progress": 0, "Details": "{\"Subnet ID\":\"subnet-6194ea3b\",\"Availability Zone\":\"us-west-2c\"}" } ] }

Questa opzione non è disponibile dalla console. Tuttavia, puoi utilizzare la pagina Istanze della EC2 console Amazon per terminare un'istanza nel tuo gruppo Auto Scaling. Quando lo fai, Amazon EC2 Auto Scaling rileva che l'istanza non è più in esecuzione e la sostituisce automaticamente come parte del processo di controllo dello stato. Dopo la chiusura dell'istanza sono necessari uno o due minuti prima che venga avviata una nuova istanza. Per informazioni su come terminare un'istanza, consulta Terminare un'istanza nella Amazon EC2 User Guide.

Se interrompi le istanze nel tuo gruppo e ciò causa una distribuzione non uniforme tra le zone di disponibilità, Amazon EC2 Auto Scaling ribilancia il gruppo per ristabilire una distribuzione uniforme a meno che tu non sospenda il processo. AZRebalance Per ulteriori informazioni, consulta Sospendi e riprendi i processi di Amazon Auto EC2 Scaling.