

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.

# Activez le rééquilibrage des capacités pour remplacer de manière proactive les instances ponctuelles à risque
<a name="enable-capacity-rebalancing-console-cli"></a>

Vous pouvez utiliser le AWS Management Console ou AWS CLI pour activer le rééquilibrage de capacité pour votre groupe Auto Scaling. Lorsque le rééquilibrage des capacités est activé, Amazon EC2 Auto Scaling tente de remplacer de manière proactive les instances ponctuelles de votre groupe qui ont reçu une recommandation de rééquilibrage des instances EC2.

## Activer le rééquilibrage de la capacité (console)
<a name="enable-capacity-rebalancing-console"></a>

Vous pouvez activer ou désactiver le Rééquilibrage de la capacité au moment de la création ou de la mise à jour d'un groupe Auto Scaling.

**Pour activer le Rééquilibrage de la capacité pour un nouveau groupe Auto Scaling**

1. Ouvrez la console Amazon EC2 à l'adresse [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/), puis sélectionnez **Auto Scaling Groups** dans le volet de navigation.

1. Choisissez **Créer un groupe Auto Scaling**.

1. Pour **l’étape 1 : Choisir un modèle de lancement ou une configuration**, saisissez un nom pour le groupe Auto Scaling, choisissez un modèle de lancement, puis choisissez **Suivant** pour passer à l’étape suivante.

1. Pour **l’étape 2 : choisissez les options de lancement de l’instance**, pour les **exigences relatives au type d’instance**, choisissez les paramètres pour créer un groupe d’instances mixtes. Cela inclut les types d’instances qu’il peut lancer, les options d’achat d’instances et les stratégies d’allocation pour les instances Spot et à la demande. Par défaut, ces paramètres ne sont pas configurés. Pour les configurer, vous devez sélectionner **Override launch template** (Remplacer le modèle de lancement). Pour plus d'informations sur la création de groupes d'instances mixtes, consultez [Groupes Auto Scaling combinant plusieurs types d'instances et options d'achat](ec2-auto-scaling-mixed-instances-groups.md).

1. Sous **Réseau**, choisissez les options souhaitées. Vérifiez que les sous-réseaux que vous souhaitez utiliser sont dans des zones de disponibilité différentes.

1. Sous la section **Stratégies d’allocation**, choisissez une stratégie d’allocation des instances Spot. Activer ou désactiver le rééquilibrage de la capacité en cochant ou décochant la case **Rééquilibrage de la capacité**. Cette option ne s’affiche que si vous demandez à ce qu’un pourcentage du groupe Auto Scaling soit lancé en tant qu’instances Spot dans la section **Options d’achat d’Instance**.

1. Créez le groupe Auto Scaling.

1. (Facultatif) Ajoutez des hooks de cycle de vie si nécessaire. Pour de plus amples informations, veuillez consulter [Ajoutez des hooks de cycle de vie à votre groupe Auto Scaling](adding-lifecycle-hooks.md).

**Pour activer ou désactiver le Rééquilibrage de la capacité pour un groupe Auto Scaling existant**

1. Ouvrez la console Amazon EC2 à l'adresse [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/), puis sélectionnez **Auto Scaling Groups** dans le volet de navigation.

1. Cochez la case située en regard de votre groupe Auto Scaling. Un volet fractionné s’ouvre en bas de la page. 

1. Dans la page **Details** (Détails), choisissez **Allocation strategies** (Stratégies d'allocation), **Edit** (Modifier).

1. Dans la section **Stratégies d’allocation**, activez ou désactivez le rééquilibrage de la capacité en cochant ou en décochant la case sous **Rééquilibrage de la capacité**. 

1. Choisissez **Mettre à jour**.

## Activez le rééquilibrage de la capacité (AWS CLI)
<a name="enable-capacity-rebalancing-aws-cli"></a>

Les exemples suivants montrent comment utiliser le AWS CLI pour activer et désactiver le rééquilibrage de capacité. 

Utilisez la [update-auto-scaling-group](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/update-auto-scaling-group.html)commande [create-auto-scaling-group](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/create-auto-scaling-group.html)ou avec le paramètre suivant : 
+ `--capacity-rebalance`/`--no-capacity-rebalance`— Valeur booléenne indiquant si le rééquilibrage des capacités est activé.

Avant d'appeler la [create-auto-scaling-group](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/create-auto-scaling-group.html)commande, vous avez besoin du nom d'un modèle de lancement configuré pour être utilisé avec un groupe Auto Scaling. Pour de plus amples informations, veuillez consulter [Créer un modèle de lancement pour un groupe Auto Scaling](create-launch-template.md). 

**Note**  
Les procédures suivantes expliquent comment utiliser un fichier de configuration au format JSON ou YAML. Si vous utilisez AWS CLI la version 1, vous devez spécifier un fichier de configuration au format JSON. Si vous utilisez AWS CLI la version 2, vous pouvez spécifier un fichier de configuration au format YAML ou JSON.

### JSON
<a name="enable-capacity-rebalancing-aws-cli-json"></a>

**Pour créer et configurer un nouveau groupe Auto Scaling**
+ Utilisez la [create-auto-scaling-group](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/create-auto-scaling-group.html)commande suivante pour créer un nouveau groupe Auto Scaling et activer le rééquilibrage des capacités. Cette commande fait référence à un fichier JSON comme seul paramètre de votre groupe Auto Scaling, au lieu d’un fichier JSON.

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

  Si vous n'avez pas encore de fichier de configuration CLI spécifiant une [politique d'instances mixtes](ec2-auto-scaling-mixed-instances-groups.md), créez-en un.

  Ajoutez la ligne suivante à l'objet JSON de niveau supérieur dans le fichier de configuration. 

  ```
  {
      "CapacityRebalance": true
  }
  ```

  Voici un exemple de fichier `config.json`. 

  ```
  {
      "AutoScalingGroupName": "{{my-asg}}",
      "DesiredCapacity": {{12}},
      "MinSize": {{12}},
      "MaxSize": {{15}},
      "CapacityRebalance": true,
      "MixedInstancesPolicy": {
          "InstancesDistribution": {
              "OnDemandBaseCapacity": {{0}},
              "OnDemandPercentageAboveBaseCapacity": {{25}},
              "SpotAllocationStrategy": "price-capacity-optimized"
          },
          "LaunchTemplate": {
              "LaunchTemplateSpecification": {
                  "LaunchTemplateName": "{{my-launch-template}}",
                  "Version": "{{$Default}}"
              },
              "Overrides": [
                  {
                      "InstanceType": "{{c5.large}}"
                  },
                  {
                      "InstanceType": "{{c5a.large}}"
                  },
                  {
                      "InstanceType": "{{m5.large}}"
                  },
                  {
                      "InstanceType": "{{m5a.large}}"
                  },
                  {
                      "InstanceType": "{{c4.large}}"
                  },
                  {
                      "InstanceType": "{{m4.large}}"
                  },
                  {
                      "InstanceType": "{{c3.large}}"
                  },
                  {
                      "InstanceType": "{{m3.large}}"
                  }
              ]
          }
      },
      "TargetGroupARNs": "{{arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-alb-target-group/943f017f100becff}}",
      "VPCZoneIdentifier": "{{subnet-5ea0c127}},{{subnet-6194ea3b}},{{subnet-c934b782}}"
  }
  ```

### YAML
<a name="enable-capacity-rebalancing-aws-cli-yaml"></a>

**Pour créer et configurer un nouveau groupe Auto Scaling**
+ Utilisez la [create-auto-scaling-group](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/create-auto-scaling-group.html)commande suivante pour créer un nouveau groupe Auto Scaling et activer le rééquilibrage des capacités. Cette commande fait référence à un fichier YAML comme seul paramètre de votre groupe Auto Scaling, au lieu d’un fichier JSON.

  ```
  aws autoscaling create-auto-scaling-group --cli-input-yaml {{file://~/config.yaml}}
  ```

  Ajoutez la ligne suivante à votre fichier de configuration au format YAML.

  ```
  CapacityRebalance: true
  ```

  Voici un exemple de fichier `config.yaml`. 

  ```
  ---
  AutoScalingGroupName: {{my-asg}}
  DesiredCapacity: {{12}}
  MinSize: {{12}}
  MaxSize: {{15}}
  CapacityRebalance: true
  MixedInstancesPolicy:
    InstancesDistribution:
      OnDemandBaseCapacity: {{0}}
      OnDemandPercentageAboveBaseCapacity: {{25}}
      SpotAllocationStrategy: price-capacity-optimized
    LaunchTemplate:
      LaunchTemplateSpecification:
        LaunchTemplateName: {{my-launch-template}}
        Version: {{$Default}}
      Overrides:
      - InstanceType: {{c5.large}}
      - InstanceType: {{c5a.large}}
      - InstanceType: {{m5.large}}
      - InstanceType: {{m5a.large}}
      - InstanceType: {{c4.large}}
      - InstanceType: {{m4.large}}
      - InstanceType: {{c3.large}}
      - InstanceType: {{m3.large}}
  TargetGroupARNs:
  - {{arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-alb-target-group/943f017f100becff}}
  VPCZoneIdentifier: {{subnet-5ea0c127}},{{subnet-6194ea3b}},{{subnet-c934b782}}
  ```

**Pour activer le Rééquilibrage de la capacité pour un groupe Auto Scaling existant**
+ Utilisez la [update-auto-scaling-group](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/update-auto-scaling-group.html)commande suivante pour activer le rééquilibrage des capacités.

  ```
  aws autoscaling update-auto-scaling-group --auto-scaling-group-name {{my-asg}} \
    --capacity-rebalance
  ```

**Pour vérifier que le Rééquilibrage de la capacité est activé pour un groupe Auto Scaling**
+ Utilisez la [describe-auto-scaling-groups](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/describe-auto-scaling-groups.html)commande suivante pour vérifier que le rééquilibrage de capacité est activé et pour afficher les détails. 

  ```
  aws autoscaling describe-auto-scaling-groups --auto-scaling-group-name {{my-asg}}
  ```

  Voici un exemple de réponse.

  ```
  {
      "AutoScalingGroups": [
          {
              "AutoScalingGroupName": "my-asg",
              "AutoScalingGroupARN": "{{arn}}",
              ...
              "CapacityRebalance": true
          }
      ]
  }
  ```

**Pour désactiver le Rééquilibrage de la capacité.**  
Utilisez la [update-auto-scaling-group](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/update-auto-scaling-group.html)commande avec l'`--no-capacity-rebalance`option permettant de désactiver le rééquilibrage de capacité.

```
aws autoscaling update-auto-scaling-group --auto-scaling-group-name {{my-asg}} \
  --no-capacity-rebalance
```

## Ressources connexes
<a name="capacity-rebalancing-related-resources"></a>

Pour plus d'informations sur le rééquilibrage des capacités, consultez [Gérer de manière proactive le cycle de vie des instances Spot à l'aide de la nouvelle fonctionnalité de rééquilibrage des capacités pour Amazon EC2 Auto](https://aws.amazon.com/blogs/compute/proactively-manage-spot-instance-lifecycle-using-the-new-capacity-rebalancing-feature-for-ec2-auto-scaling/) Scaling sur le Compute Blog. AWS 

*Pour plus d'informations sur les recommandations de rééquilibrage des instances EC2, consultez les recommandations de rééquilibrage des [instances EC2 dans le guide de l'utilisateur](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/rebalance-recommendations.html) Amazon EC2.*

Pour en savoir plus sur les hooks de cycle de vie, consultez les ressources suivantes.
+ [Didacticiel : configurer un hook de cycle de vie qui appelle une fonction Lambda](tutorial-lifecycle-hook-lambda.md)(en utilisant EventBridge)
+ [Tutoriel : utilisation de scripts de données et de métadonnées d'instance pour récupérer l'état du cycle de vie](tutorial-lifecycle-hook-instance-metadata.md)

## Limitations
<a name="capacity-rebalancing-limitations"></a>
+ Amazon EC2 Auto Scaling ne peut remplacer l’instance qui reçoit la notification de rééquilibrage uniquement que si elle n’est pas protégée contre la mise à l’échelle horizontale. Cependant, la protection de mise à l’échelle horizontale n’empêche pas la résiliation suite à une interruption ponctuelle. Pour de plus amples informations, veuillez consulter [Utiliser la protection évolutive de l'instance pour contrôler la fermeture de l'instance](ec2-auto-scaling-instance-protection.md).
+ La prise en charge du rééquilibrage des capacités est disponible dans tous les Régions AWS commerciaux où Amazon EC2 Auto Scaling est disponible, à l’exception de la région du Moyen-Orient (EAU).