Utilisez le rééquilibrage des capacités dans le EC2 parc et le parc ponctuel pour remplacer les instances ponctuelles à risque - 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.

Utilisez le rééquilibrage des capacités dans le EC2 parc et le parc ponctuel pour remplacer les instances ponctuelles à risque

Grâce au rééquilibrage des capacités, votre EC2 flotte ou votre flotte ponctuelle peut maintenir la capacité ponctuelle souhaitée en remplaçant de manière proactive les instances ponctuelles risquant d'être interrompues. Lorsqu'une instance Spot présente un risque élevé d'interruption, Amazon EC2 envoie une recommandation de rééquilibrage. Si le rééquilibrage de capacité est activé, la recommandation de rééquilibrage déclenche le lancement d'une nouvelle instance ponctuelle avant que l'instance à risque ne soit interrompue.

Le rééquilibrage des capacités vous aide à maintenir la disponibilité de la charge de travail en augmentant de manière proactive votre flotte avec de nouvelles instances Spot avant que les instances en cours ne soient interrompues par Amazon. EC2

Pour configurer EC2 Fleet afin d'utiliser le rééquilibrage de capacité afin de lancer une instance Spot de remplacement

Utilisez la commande create-fleet (AWS CLI) et les paramètres appropriés dans la MaintenanceStrategies structure. Pour un exemple JSON de configuration, voirExemple 7 : configurer le rééquilibrage de capacité pour lancer des instances Spot de remplacement.

Pour configurer Spot Fleet afin d'utiliser le rééquilibrage de capacité afin de lancer une instance Spot de remplacement

Vous pouvez utiliser la EC2 console Amazon ou le AWS CLI pour configurer le rééquilibrage des capacités.

(Console) Lors de la création du parc Spot, cochez la case Rééquilibrage des capacités. Pour plus d’informations, consultez l’étape 6.d dans Création d’une demande de parc d’instances Spot à l’aide des paramètres définis (console).

(AWS CLI) Utilisez la request-spot-fleetcommande et les paramètres appropriés dans la SpotMaintenanceStrategies structure. Pour un exemple JSON de configuration, voirExemple 8 : Configurer le rééquilibrage de capacité pour lancer les instances Spot de remplacement.

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

Les modèles ReplacementStrategy for EC2 Fleet et Spot Fleet prennent en charge les deux valeurs suivantes :

launch-before-terminate

Amazon EC2 met fin aux instances ponctuelles qui reçoivent une notification de rééquilibrage après le lancement de nouvelles instances ponctuelles 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 de latermination-delay, puis met fin aux 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 letermination-delay.

Nous vous déconseillons vivement d'utiliser la stratégie d'allocation lowest-price lowestPrice (EC2flotte) ou (flotte ponctuelle) en combinaison avec launch-before-terminate celle-ci afin d'éviter d'avoir des instances ponctuelles de remplacement présentant également un risque élevé d'interruption.

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 met pas fin aux 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 une EC2 flotte ou une flotte ponctuelle pour le rééquilibrage des capacités, tenez compte des points suivants :

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

Configurez votre flotte pour utiliser plusieurs types d'instances et zones de disponibilité. Cela permet de lancer des instances Spot dans divers groupes dz capacité Spot. Pour de plus amples informations, veuillez consulter 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 capacity-optimized-prioritized d'allocation capacity-optimized 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 de plus amples informations, veuillez consulter Utiliser la stratégie d’allocation optimisée pour le prix et la capacité.

Si vous utilisez la stratégie lowest-price d'allocation, vos instances Spot de remplacement peuvent présenter un risque élevé d'interruption. En effet, Amazon EC2 lancera toujours des instances dans le pool le moins cher dont la capacité est disponible à ce moment-là, même si vos instances Spot de remplacement sont susceptibles d'être interrompues peu de temps après leur lancement.

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

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 fournit une disponibilité identique ou supérieure à celle de l'instance existante. Si le risque d'interruption d'une nouvelle instance est plus élevé que celui de l'instance existante, Amazon ne EC2 lancera pas de nouvelle instance. Amazon EC2 continuera toutefois à évaluer les pools de capacité Spot et lancera une nouvelle instance si la disponibilité s'améliore.

Il est possible que votre instance existante soit interrompue si Amazon n'en lance pas une nouvelle de EC2 manière proactive. Dans ce cas, Amazon EC2 tentera de lancer une nouvelle instance, que celle-ci présente ou non un risque élevé d'interruption.

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

Lorsque vous activez le rééquilibrage des capacités, cela n'augmente pas le taux d'interruption de votre instance Spot (le nombre d'instances ponctuelles récupérées lorsqu'Amazon a EC2 besoin de récupérer la capacité). Toutefois, si Capacity Rebalancing détecte qu'une instance risque d'être interrompue, Amazon EC2 tentera immédiatement de lancer une nouvelle instance. Il se peut donc que davantage d'instances soient remplacées que si vous aviez attendu 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 commence EC2 immédiatement à tenter 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 cela launch-before-terminate est spécifié, Amazon EC2 mettra fin à l'instance à risque une fois que l'instance de remplacement sera mise en ligne.

Amazon EC2 peut lancer de nouvelles instances Spot de remplacement jusqu'à ce que la capacité atteinte soit le double de la capacité cible

Lorsqu'un parc est configuré pour le rééquilibrage de capacité, le parc tente de lancer une nouvelle instance ponctuelle de remplacement pour chaque instance ponctuelle 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 met fin à l'instance après un délai d'arrêt préconfiguré ou la laisse fonctionner. 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 avec une capacité cible de 100 instances Spot. Toutes les instances Spot reçoivent une recommandation de rééquilibrage, ce qui oblige Amazon EC2 à lancer 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 le parc 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 votre flotte de manière à mettre fin aux instances Spot qui reçoivent une recommandation de rééquilibrage

Si vous configurez votre parc pour le rééquilibrage des capacités, nous vous recommandons de choisir launch-before-terminate un délai de résiliation approprié uniquement si vous pouvez prévoir le temps que prendront les procédures 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 rapidement effectuer des actions de rééquilibrage sur les instances concernées avant qu'Amazon ne les EC2 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 met pas automatiquement fin aux 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 de plus amples informations, veuillez consulter Surveiller les signaux de recommandation de rééquilibrage.

La flotte ne prend pas en compte les instances qui reçoivent une recommandation de rééquilibrage lors du calcul de la capacité remplie lors de l'introduction ou de la sortie d'échelle

Si votre flotte est configurée pour le rééquilibrage des capacités et que vous modifiez la capacité cible pour augmenter ou diminuer la capacité, la flotte ne compte pas les instances marquées pour le rééquilibrage dans le cadre de la capacité remplie, comme suit :

  • Mise à l'échelle : si vous diminuez la capacité cible souhaitée, Amazon EC2 met fin aux instances qui ne sont pas destinées à être rééquilibrées 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 avec une capacité cible de 100 instances ponctuelles. 10 instances reçoivent une recommandation de rééquilibrage. Amazon EC2 lance donc 10 nouvelles instances de remplacement, soit une capacité totale de 110 instances. Vous réduisez ensuite la capacité cible à 50 (mise à l'échelle), mais la capacité remplie est en fait de 60 instances, car les 10 instances marquées pour le rééquilibrage ne sont pas résiliées par AmazonEC2. Vous devez résilier manuellement ces instances, ou vous pouvez les laisser en cours d’exécution.

  • Extensification : si vous augmentez la capacité cible souhaitée, Amazon EC2 lance de nouvelles instances jusqu'à ce que la capacité souhaitée soit 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 avec une capacité cible de 100 instances ponctuelles. 10 instances reçoivent une recommandation de rééquilibrage. Le parc lance donc 10 nouvelles instances de remplacement, soit une capacité totale 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.