Dimensionnement manuel pour Amazon EC2 Auto Scaling - Amazon EC2 Auto Scaling

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Dimensionnement manuel pour Amazon EC2 Auto Scaling

Vous pouvez ajuster manuellement le nombre d'EC2instances de votre groupe Auto Scaling à tout moment. Ce processus de modification manuelle du nombre d'instances est appelé dimensionnement manuel. La mise à l'échelle manuelle est une alternative à la mise à l'échelle automatique, en particulier si vous souhaitez apporter des modifications de capacité ponctuelles.

Après avoir redimensionné manuellement votre groupe, Amazon EC2 Auto Scaling reprend les activités normales de dimensionnement automatique en fonction des politiques de dimensionnement et des actions planifiées que vous avez définies. Pour les groupes pour lesquels le préchauffage d'instance par défaut est activé, toute nouvelle instance passe par une période de préchauffage avant de commencer à contribuer aux mesures utilisées pour le dimensionnement automatique. Cette période d'échauffement aide à stabiliser le groupe à sa nouvelle capacité. Pour de plus amples informations, veuillez consulter Définir la préparation par défaut d'instance d'un groupe Auto Scaling.

Parfois, vous souhaiterez peut-être désactiver temporairement les politiques de dimensionnement et les actions planifiées avant de redimensionner manuellement un groupe. Cela permet d'éviter les conflits entre les actions de dimensionnement manuelles et les activités de dimensionnement automatisées. Pour de plus amples informations, veuillez consulter Désactiver les activités de dimensionnement.

Changer la capacité souhaitée d’un groupe Auto Scaling existant

Lorsque vous modifiez la capacité souhaitée de votre groupe Auto Scaling, Amazon EC2 Auto Scaling gère le processus de lancement et de résiliation des instances pour atteindre la nouvelle taille souhaitée.

Console
Pour modifier la taille de votre groupe Auto Scaling
  1. Ouvrez la EC2 console Amazon à l'adresse https://console.aws.amazon.com/ec2/et choisissez Auto Scaling Groups dans le volet de navigation.

  2. Cochez la case située en regard de votre groupe Auto Scaling.

    Un volet divisé s'affiche au bas de la page.

  3. Sous l'onglet Details (Détails) choisissez Group details (Détails du groupe), Edit (Modifier).

  4. Pour Capacité souhaitée, augmentez ou diminuez la capacité souhaitée. Par exemple, pour augmenter la taille du groupe d'une unité, si la valeur actuelle est1, entrez2.

    Si votre nouvelle valeur pour la capacité souhaitée est supérieure à la capacité minimale souhaitée et à la capacité maximale souhaitée, la capacité maximale souhaitée est automatiquement augmentée à la nouvelle valeur de capacité souhaitée.

  5. Une fois que vous avez terminé, choisissez Update (Mettre à jour).

Vérifiez que la taille de groupe que vous avez spécifiée a entraîné le lancement du même nombre d'instances. Par exemple, si vous avez augmenté la taille du groupe d'une unité, vérifiez que votre groupe Auto Scaling a lancé une instance supplémentaire.

Pour vérifier que la taille du groupe Auto Scaling a changé
  1. Dans l'onglet Activity, dans l'historique des activités, vous pouvez voir la progression des activités associées au groupe Auto Scaling. La colonne Status (État) affiche l'état actuel de votre instance. Lorsqu'une instance est en cours de lancement, son statut est Not yet in service. Le statut passe à Successful, après le lancement de l'instance. Vous pouvez également utiliser l'icône d'actualisation pour voir l'état actuel de votre instance. Pour de plus amples informations, veuillez consulter Vérifier une activité de mise à l'échelle pour un groupe Auto Scaling.

  2. Dans l'onglet Gestion des instances, dans Instances, vous pouvez consulter le statut de l'instance. Il suffit de peu de temps pour lancer une instance.

    • La colonne Lifecycle (Cycle de vie) affiche l'état de votre instance. Initialement, votre instance est à l'état Pending. Lorsqu'une instance est prête à recevoir du trafic, son statut passe à InService.

    • La colonne État de santé affiche le résultat des tests de santé effectués par Amazon EC2 Auto Scaling sur votre instance.

AWS CLI

L'exemple suivant suppose que vous avez créé un groupe Auto Scaling avec une taille minimum de 1 et maximum de 5. Par conséquent, le groupe dispose actuellement d'une seule instance en cours d'exécution.

Pour modifier la taille de votre groupe Auto Scaling

Utilisez la set-desired-capacitycommande pour modifier la taille de votre groupe Auto Scaling, comme illustré dans l'exemple suivant.

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

Si vous choisissez de respecter le temps de stabilisation par défaut pour votre groupe Auto Scaling, vous devez spécifier l'option –-honor-cooldown, comme illustré dans l'exemple suivant. Pour de plus amples informations, veuillez consulter Diminution des temps de recharge pour Amazon EC2 Auto Scaling.

aws autoscaling set-desired-capacity --auto-scaling-group-name my-asg \ --desired-capacity 2 --honor-cooldown
Pour vérifier la taille de votre groupe Auto Scaling

Utilisez la describe-auto-scaling-groupscommande pour confirmer que la taille de votre groupe Auto Scaling a changé, comme dans l'exemple suivant.

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

Voici un exemple de sortie qui fournit des détails sur le groupe et les instances lancés.

{ "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": [] } ] }

Notez que DesiredCapacity affiche la nouvelle valeur. Le groupe Auto Scaling a lancé une instance supplémentaire.

Résilier une instance de votre groupe Auto Scaling (AWS CLI)

Il peut arriver que vous souhaitiez effectuer une mise à l’échelle horizontale manuelle dans votre groupe Auto Scaling tout en mettant fin à une instance spécifique. Vous pouvez redimensionner manuellement votre groupe Auto Scaling en utilisant la commande terminate-instance-in-auto-scaling-group et en spécifiant l'ID de l'instance que vous souhaitez résilier et l'--should-decrement-desired-capacityoption, comme indiqué dans l'exemple suivant.

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

Voici un exemple de sortie qui fournit des détails sur l'activité de dimensionnement.

{ "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\"}" } ] }

Cette option n’est pas disponible dans la console. Cependant, vous pouvez utiliser la page Instances de la EC2 console Amazon pour mettre fin à une instance de votre groupe Auto Scaling. Lorsque vous le faites, Amazon EC2 Auto Scaling détecte que l'instance n'est plus en cours d'exécution et la remplace automatiquement dans le cadre du processus de contrôle de santé. Une minute ou deux s'écoulent entre la fin de l'instance et le lancement d'une nouvelle instance. Pour plus d'informations sur la manière de mettre fin à une instance, consultez Résiliation d'une instance dans le guide de EC2 l'utilisateur Amazon.

Si vous mettez fin à des instances de votre groupe et que cela entraîne une répartition inégale entre les zones de disponibilité, Amazon EC2 Auto Scaling rééquilibre le groupe afin de rétablir une distribution uniforme, sauf si vous suspendez le AZRebalance processus. Pour de plus amples informations, veuillez consulter Suspendre et reprendre les processus Amazon EC2 Auto Scaling.