Contrôler les instances à scalabilité automatique à résilier pendant une mise à l'échelle horizontale - 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.

Contrôler les instances à scalabilité automatique à résilier pendant une mise à l'échelle horizontale

Amazon EC2 Auto Scaling utilise des politiques de résiliation pour décider de l'ordre de résiliation des instances. Vous pouvez utiliser une politique prédéfinie ou créer une politique personnalisée pour répondre à vos besoins spécifiques. En utilisant une politique personnalisée ou une protection intégrée des instances, vous pouvez également empêcher votre groupe Auto Scaling de mettre fin à des instances qui ne sont pas encore prêtes à le faire.

Quand Amazon EC2 Auto Scaling utilise des politiques de résiliation

Les sections suivantes décrivent les scénarios dans lesquels Amazon EC2 Auto Scaling utilise des politiques de résiliation.

Événements de mise à l'échelle horizontale

Un événement de mise à l'échelle horizontale se produit lorsqu'une nouvelle valeur pour la capacité souhaitée d'un groupe de mise à l'échelle automatique est inférieure à la capacité actuelle du groupe.

Les événements de mise à l'échelle horizontale se produisent dans les scénarios suivants :

  • Lorsque vous utilisez des politiques de mise à l'échelle dynamique et que la taille du groupe diminue à la suite de modifications de la valeur d'une mesure

  • Lorsque vous utilisez une mise à l'échelle planifiée et que la taille du groupe diminue à la suite d'une action planifiée

  • Lorsque vous réduisez manuellement la taille du groupe

L'exemple suivant montre comment fonctionnent les politiques de résiliation lorsqu'il y a un événement évolutif.

  1. Dans cet exemple, le groupe Auto Scaling possède un type d'instance, deux zones de disponibilité et une capacité souhaitée de deux instances. Il dispose également d'une politique de mise à l'échelle dynamique qui ajoute et supprime des instances lorsque l'utilisation des ressources augmente ou diminue. Les deux instances de ce groupe sont réparties entre les deux zones de disponibilité, comme dans le schéma suivant.

    Un groupe Auto Scaling de base avec deux instances.
  2. Lorsque le groupe Auto Scaling augmente, Amazon EC2 Auto Scaling lance une nouvelle instance. Le groupe Auto Scaling comporte désormais trois instances, réparties entre les deux zones de disponibilité, comme indiqué dans le diagramme suivant.

    Un groupe Auto Scaling après le dimensionnement d'une instance.
  3. Lorsque le groupe Auto Scaling est mis à l'échelle, Amazon EC2 Auto Scaling résilie l'une des instances.

  4. Si vous n'avez pas attribué de politique de mise hors service spécifique au groupe, Amazon EC2 Auto Scaling utilisera la politique de mise hors service par défaut. Il sélectionne la zone de disponibilité avec deux instances et met fin à l'instance qui a été lancée à partir d'une configuration de lancement, d'un modèle de lancement différent ou de la version la plus ancienne du modèle de lancement actuel. Si les instances ont été lancées à partir du même modèle de lancement et de la même version, Amazon EC2 Auto Scaling sélectionne l'instance la plus proche de l'heure de facturation suivante et y met fin.

    Un groupe Auto Scaling après le dimensionnement par une instance.

Actualisation d'instance

Vous pouvez lancer une actualisation des instances pour mettre à jour les instances de votre groupe Auto Scaling. Au cours d'une actualisation d'instance, Amazon EC2 Auto Scaling résilie les instances du groupe, puis lance les remplacements pour celles qui ont été résiliées. La politique de résiliation du groupe Auto Scaling contrôle les instances remplacées en premier.

Rééquilibrage des zones de disponibilité

Amazon EC2 Auto Scaling équilibre la capacité dans les zones de disponibilité activées pour le groupe Auto Scaling. Cela permet de réduire l'impact d'une panne de la zone de disponibilité. Si la distribution de la capacité entre les zones de disponibilité devient déséquilibrée, Amazon EC2 Auto Scaling rééquilibre le groupe Auto Scaling en lançant des instances dans les zones de disponibilité activées avec le moins d'instances et en résiliant des instances ailleurs. La politique de résiliation détermine quelles instances sont résiliées en premier.

Il existe plusieurs raisons pour lesquelles la distribution des instances entre les zones de disponibilité peut se déséquilibrer.

Suppression d'instances

Si vous détachez des instances de votre groupe Auto Scaling, si vous placez des instances en attente ou si vous mettez fin explicitement à des instances et décrémentez la capacité souhaitée, empêchant le lancement d'instances de remplacement, le groupe peut devenir déséquilibré. Dans ce cas, Amazon EC2 Auto Scaling compense en rééquilibrant les zones de disponibilité.

Utilisation de zones de disponibilité différentes de celles initialement spécifiées

Si vous développez votre groupe Auto Scaling de manière à inclure des zones de disponibilité supplémentaires, ou si vous modifiez les zones de disponibilité utilisées, Amazon EC2 Auto Scaling lance des instances dans les nouvelles zones de disponibilité et résilie des instances dans les autres zones pour vous assurer que votre groupe Auto Scaling est réparti uniformément entre les zones de disponibilité.

Pannes de disponibilité

Les pannes de disponibilité sont rares. Toutefois, si une zone de disponibilité devient indisponible et est restaurée ultérieurement, votre groupe Auto Scaling peut être déséquilibré entre les zones de disponibilité. Amazon EC2 Auto Scaling essaie de rééquilibrer progressivement le groupe et le rééquilibrage peut résilier les instances dans d'autres zones.

Par exemple, imaginons que vous avez un groupe Auto Scaling avec un type d'instance, deux zones de disponibilité et une capacité souhaitée de deux instances. Dans l'hypothèse où une zone de disponibilité échoue, Amazon EC2 Auto Scaling lance automatiquement une nouvelle instance dans la zone de disponibilité saine pour remplacer celle de la zone de disponibilité défectueuse. Ainsi, lorsque la zone de disponibilité défectueuse redevient saine ultérieurement, Amazon EC2 Auto Scaling lance automatiquement une nouvelle instance dans cette zone, ce qui met fin à une instance dans la zone non affectée.

Note

Lors du rééquilibrage, Amazon EC2 Auto Scaling lance de nouvelles instances avant de résilier les anciennes, afin que le rééquilibrage ne compromette pas les performances ou la disponibilité de l'application.

Comme Amazon EC2 Auto Scaling tente de lancer de nouvelles instances avant de résilier les anciennes, le fait d'atteindre ou de s'approcher de la capacité maximale spécifiée peut entraver ou arrêter les activités de rééquilibrage. Pour éviter ce problème, le système peut temporairement dépasser la capacité maximum spécifiée d'un groupe d'une marge de 10 pour cent (ou d'une marge de 1 instance, la plus importante des deux) pendant l'activité de rééquilibrage. La marge est étendue uniquement si le groupe atteint ou s'approche de la capacité maximum et nécessite un rééquilibrage, à cause d'une demande de modification du zonage par l'utilisateur ou pour compenser des problèmes de zone de disponibilité. L'extension dure uniquement le temps de rééquilibrer le groupe.