Rééquilibrage de la capacité - Amazon Elastic Compute Cloud

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.

Rééquilibrage de la capacité

Vous pouvez configurer un parc d’instances Spot pour lancer une instance Spot de remplacement lorsqu’Amazon EC2 émet une recommandation de rééquilibrage pour vous avertir qu’une instance Spot présente un risque d’interruption élevé. Le rééquilibrage de capacité vous permet de maintenir la disponibilité de la charge de travail en augmentant de manière proactive votre flotte avec une nouvelle instance Spot avant qu’une instance en cours d’exécution ne soit interrompue par Amazon EC2. Pour plus d’informations, consultez Recommandations de rééquilibrage des instances EC2.

Pour configurer le parc d’instances Spot pour lancer une instance Spot de remplacement, vous pouvez utiliser la console Amazon EC2 ou la AWS CLI.

Limites

  • Le rééquilibrage de capacité est disponible uniquement pour les flottes de type maintain.

  • Lorsque la flotte est en cours d’exécution, vous ne pouvez pas modifier le paramètre Rééquilibrage de capacité. Pour modifier le paramètre Rééquilibrage de capacité, vous devez supprimer la flotte et en créer un nouveau.

Options de configuration

La ReplacementStrategy pour le parc d’instances Spot prend en charge les deux valeurs suivantes :

launch-before-terminate

Amazon EC2 met fin aux instances Spot qui reçoivent une notification de rééquilibrage après le lancement de nouvelles instances Spot de remplacement. Quand vous spécifiez launch-before-terminate, vous devez également spécifier une valeur pour termination-delay. Une fois les nouvelles instances de remplacement lancées, Amazon EC2 attend la durée du termination-delay, puis résilie les anciennes instances. Pour termination-delay, le minimum est de 120 secondes (2 minutes) et le maximum est de 7 200 secondes (2 heures).

Nous vous recommandons d’utiliser launch-before-terminate uniquement si vous pouvez prédire la durée de la procédure d’arrêt de votre instance. Cela garantit que les anciennes instances ne sont résiliées qu’une fois les procédures d’arrêt terminées. Notez qu’Amazon EC2 peut interrompre les anciennes instances avec un avertissement de deux minutes avant le termination-delay.

launch

Amazon EC2 lance des instances Spot de remplacement lorsqu’une notification de rééquilibrage est émise pour les instances Spot existantes. Amazon EC2 ne résilie pas les instances qui reçoivent une notification de rééquilibrage. Vous pouvez résilier les anciennes instances ou les laisser en cours d’exécution. Toutes les instances en cours d’exécution vous sont facturées.

Considérations

Si vous configurez un parc d’instances Spot pour le rééquilibrage de capacité, tenez compte des points suivants :

Fournissez autant de groupes de capacité Spot que possible dans la demande

Configurez votre parc d’instances Spot pour utiliser plusieurs types d’instance et zones de disponibilité. Cela permet de lancer des instances Spot dans divers groupes dz capacité Spot. Pour plus d’informations, consultez Soyez flexible en ce qui concerne les types d’instance et les zones de disponibilité.

Éviter un risque élevé d’interruption des instances Spot de remplacement

Pour éviter un risque élevé d'interruption, nous recommandons la stratégie capacityOptimizedPrioritized d'allocation capacityOptimized or. Ces stratégies garantissent que les instances Spot de remplacement sont lancées dans les groupes de capacité Spot optimaux et sont donc moins susceptibles d’être interrompues dans un proche avenir. Pour plus d’informations, consultez Utiliser la stratégie d’allocation optimisée pour le prix et la capacité.

Amazon EC2 ne lancera une nouvelle instance que si la disponibilité est identique ou meilleure

L’un des objectifs du rééquilibrage de capacité est d’améliorer la disponibilité d’une instance Spot. Si une instance Spot existante reçoit une recommandation de rééquilibrage, Amazon EC2 ne lancera une nouvelle instance que si la nouvelle instance offre une disponibilité supérieure ou égale à celle de l’instance existante. Si le risque d’interruption d’une nouvelle instance est plus important que celui de l’instance existante, Amazon EC2 ne lancera pas de nouvelle instance. Amazon EC2 continuera toutefois à évaluer les groupes de capacité Spot et lancera une nouvelle instance si la disponibilité s’améliore.

Il est possible que votre instance existante soit interrompue sans qu’Amazon EC2 ne lance une nouvelle instance de manière proactive. Lorsque cela se produit, Amazon EC2 essayera de lancer une nouvelle instance, que la nouvelle instance présente un risque d’interruption élevé ou non.

Le rééquilibrage de capacité n’augmente pas le taux d’interruption de votre instance Spot

Lorsque vous activez le rééquilibrage de la capacité, cette action n’augmente pas votre Taux d’interruption d’instance Spot.(le nombre d’instances Spot qui sont récupérées lorsqu’Amazon EC2 doit récupérer de l’espace. Toutefois, si le rééquilibrage de la capacité détecte une potentielle interruption d’instance, Amazon EC2 essayera instantanément de lancer une nouvelle instance. En résultat, un nombre supérieur d’instances pourraient être remplacées, comparativement au scénario où vous attendriez qu’Amazon EC2 lance une nouvelle instance après l’interruption de l’instance à risque.

Bien que vous puissiez remplacer davantage d’instances lorsque le rééquilibrage de la capacité est activé, vous gagnerez à faire preuve de proactivité que de réactivité en disposant de plus de temps d’action avant l’interruption de vos instances. En général, après un Avis d’interruption d’instance Spot., vous ne disposez que deux minutes pour arrêter correctement votre instance. Etant donné que le rééquilibrage de la capacité lance une nouvelle instance à l’avance, vous donnez aux processus existants de meilleures chances de se terminer sur votre instance à risque. Vous pouvez démarrer les procédures d’arrêt de votre instance et empêcher la planification de nouveaux travaux sur votre instance à risque. Vous pouvez également commencer à préparer l’instance nouvellement lancée afin de prendre le contrôle de l’application. Grâce au remplacement proactif de Capacity Rebalancing, vous bénéficiez d’une continuité.

À titre d’exemple théorique pour démontrer les risques et les avantages liés au rééquilibrage des capacités, considérez le scénario suivant :

  • 14 h 00 : une recommandation de rééquilibrage est reçue pour l’instance-A, et Amazon EC2 essaie instantanément de lancer une Instance-B de remplacement, ce qui vous laisse le temps de démarrer vos procédures d’arrêt.*

  • 14 h 30 — Une recommandation de rééquilibrage est reçue pour l’instance-B, remplacée par Instance-C, ce qui vous donne le temps de démarrer vos procédures d’arrêt. *

  • 14 h 32 — Si le rééquilibrage de la capacité n’était pas activé, et si un avis d’interruption d’instance Spot avait été reçu à 14h32 pour l’instance-A, vous n’auriez disposé que de deux minutes pour agir. Cependant, l’instance-A aurait été en cours d’exécution jusqu’à ce moment.

* Si launch-before-terminate est spécifié, Amazon EC2 mettra fin à l’instance à risque après la mise en ligne de l’instance de remplacement.

Amazon EC2 peut lancer de nouvelles instances Spot de remplacement jusqu’à ce que la capacité exécutée représente le double de la capacité cible

Lorsqu’un parc d’instances Spot est configuré pour le rééquilibrage de capacité, Amazon EC2 tente de lancer une nouvelle instance Spot de remplacement pour chaque instance Spot qui reçoit une recommandation de rééquilibrage. Une fois qu’une instance Spot reçoit une recommandation de rééquilibrage, elle n’est plus comptabilisée dans la capacité exécutée. Selon la stratégie de remplacement, Amazon EC2 résilie l’instance après un délai de terminaison préconfiguré ou la laisse en cours d’exécution. Cela vous donne la possibilité d’effectuer des actions de rééquilibrage sur l’instance.

Si votre flotte atteint le double de sa capacité cible, il cesse de lancer de nouvelles instances de remplacement même si les instances de remplacement elles-mêmes reçoivent une recommandation de rééquilibrage.

Par exemple, vous créez un parc d’instances Spot avec une capacité cible de 100 instances Spot. Toutes les instances Spot reçoivent une recommandation de rééquilibrage, ce qui entraîne le lancement par Amazon EC2 de 100 instances Spot de remplacement. Cela augmente le nombre d’instances Spot exécutées à 200, soit le double de la capacité cible. Certaines instances de remplacement reçoivent une recommandation de rééquilibrage, mais aucune autre instance de remplacement n’est lancée car la flotte ne peut pas dépasser le double de sa capacité cible.

Notez que vous êtes facturé pour toutes les instances pendant qu’elles sont en cours d’exécution.

Nous vous recommandons de configurer le parc d’instances Spot afin qu’il résilie les instances Spot qui reçoivent une recommandation de rééquilibrage

Si vous configurez votre parc d’instances Spot pour le rééquilibrage de capacité, nous vous recommandons de choisir launch-before-terminate avec un délai de résiliation approprié uniquement si vous pouvez prédire la durée de la procédure d’arrêt de votre instance. Cela garantit que les anciennes instances ne sont résiliées qu’une fois les procédures d’arrêt terminées.

Si vous choisissez de résilier vous-même les instances recommandées pour le rééquilibrage, nous vous recommandons de surveiller le signal de recommandation de rééquilibrage reçu par les instances Spot de la flotte. En surveillant le signal, vous pouvez effectuer rapidement des actions de rééquilibrage sur les instances concernées avant qu’Amazon EC2 ne les interrompe, puis vous pouvez les résilier manuellement. Si vous ne résiliez pas les instances, vous continuez à les payer pendant qu’elles sont en cours d’exécution. Amazon EC2 ne résilie pas automatiquement les instances qui reçoivent une recommandation de rééquilibrage.

Vous pouvez configurer des notifications à l'aide d'Amazon EventBridge ou des métadonnées d'instance. Pour plus d’informations, consultez Surveiller les signaux de recommandation de rééquilibrage.

Le parc d’instances Spot ne prend pas en compte les instances qui reçoivent une recommandation de rééquilibrage lors du calcul de la capacité exécutée pendant la diminution ou l’augmentation

Si votre parc d’instances Spot est configuré pour le rééquilibrage de capacité et que vous modifiez la capacité cible pour qu’elle soit diminuée ou augmentée, la flotte ne comptabilise pas les instances marquées pour rééquilibrage dans le cadre de la capacité exécutée, comme suit :

  • Mise à l’échelle horizontale : si vous diminuez la capacité cible souhaitée, Amazon EC2 résilie les instances qui ne sont pas marquées pour rééquilibrage tant que la capacité souhaitée n’est pas atteinte. Les instances marquées pour rééquilibrage ne sont pas prises en compte dans la capacité exécutée.

    Par exemple, vous créez un parc d’instances Spot avec une capacité cible de 100 instances Spot, 10 instances reçoivent une recommandation de rééquilibrage, Amazon EC2 lance alors 10 nouvelles instances de remplacement, ce qui donne une capacité exécutée de 110 instances. Vous réduisez ensuite la capacité cible à 50 (mise à l’échelle horizontale), mais la capacité exécutée est en fait de 60 instances car les 10 instances marquées pour rééquilibrage ne sont pas résiliées par Amazon EC2. Vous devez résilier manuellement ces instances, ou vous pouvez les laisser en cours d’exécution.

  • Montée en puissance : si vous augmentez la capacité cible souhaitée, Amazon EC2 lance de nouvelles instances tant que la capacité souhaitée n’est pas atteinte. Les instances marquées pour rééquilibrage ne sont pas prises en compte dans la capacité exécutée.

    Par exemple, vous créez un parc d’instances Spot avec une capacité cible de 100 instances Spot, 10 instances reçoivent une recommandation de rééquilibrage, Amazon EC2 lance alors 10 nouvelles instances de remplacement, ce qui donne une capacité exécutée de 110 instances. Vous augmentez ensuite la capacité cible à 200 (augmentation), mais la capacité exécutée est en fait de 210 instances car les 10 instances marquées pour rééquilibrage ne sont pas comptabilisées par la flotte comme faisant partie de la capacité cible. Vous devez résilier manuellement ces instances, ou vous pouvez les laisser en cours d’exécution.