Stratégies d’allocation pour instances Spot - 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.

Stratégies d’allocation pour instances Spot

Votre configuration du lancement détermine tous les groupes de capacité Spot possibles (types d’instance et zones de disponibilité) à partir desquels la flotte EC2 peut lancer des instances Spot. Cependant, lors du lancement des instances, la flotte EC2 utilise la stratégie d’allocation que vous spécifiez pour choisir les groupes spécifiques parmi tous vos groupes possibles.

Note

(Instances Linux uniquement) Si vous configurez votre instance Spot pour qu'elle soit lancée avec AMD SEV-SNP activé, des frais d'utilisation supplémentaires vous sont facturés, équivalant à 10 % du taux horaire à la demande pour le type d'instance sélectionné. Si la stratégie d’allocation utilise le prix comme entrée, la flotte EC2 n’inclut pas ces frais supplémentaires ; seul le prix Spot est utilisé.

Stratégies d’allocation

Vous pouvez spécifier l’une des stratégies d’allocation suivantes pour les instances Spot :

price-capacity-optimized(recommandé)

La flotte EC2 identifie les groupes dotés des capacités disponibles les plus élevées pour le nombre d’instances qui sont lancées. Cela signifie que nous demanderons des instances Spot auprès des groupes qui, selon nous, présentent le moins de risques d’interruption à court terme. La flotte EC2 demande ensuite des instances Spot auprès du groupe le moins coûteux de ces groupes.

La stratégie d’allocation price-capacity-optimized constitue le meilleur choix pour la plupart des charges de travail Spot, telles que les applications conteneurisées sans état, les microservices, les applications Web, les tâches de données et d’analyse, ainsi que le traitement par lots.

capacity-optimized

La flotte EC2 identifie les groupes dotés des capacités disponibles les plus élevées pour le nombre d’instances qui sont lancées. Cela signifie que nous demanderons des instances Spot auprès des groupes qui, selon nous, présentent le moins de risques d’interruption à court terme. Vous pouvez éventuellement définir une priorité pour chaque type d’instance de votre parc à l’aide de la commande capacity-optimized-prioritized. La flotte EC2 respecte les priorités de type d’instance sur la base du meilleur effort, mais optimise d’abord la capacité.

Avec les instances Spot, la tarification change lentement au fil du temps en fonction des tendances à long terme en matière d’offre et de demande, mais la capacité fluctue en temps réel. La stratégie capacity-optimized lance automatiquement des Instances Spot dans les pools les plus disponibles en examinant les données de capacité en temps réel et en prédisant les instances les plus disponibles. Cela convient parfaitement aux charges de travail dont l’interruption entraîne des coûts plus élevés associés au travail de redémarrage, telles que le temps d’intégration continue (CI), le rendu d’images et de médias, le deep learning, ainsi que les charges de travail de calcul haute performance (HPC), qui peuvent avoir un coût d’interruption plus élevé associées au travail de redémarrage. En offrant la possibilité de moins d’interruptions, la stratégie capacity-optimized peut réduire le coût global de votre charge de travail.

Alternativement, vous pouvez utiliser la stratégie d’allocation capacity-optimized-prioritized avec un paramètre de priorité pour définir l’ordre des types d’instance à utiliser de la priorité la plus élevée à la plus basse. Vous pouvez définir la même priorité pour différents types d’instance. La flotte EC2 optimisera d’abord la capacité, mais respectera les priorités de type d’instance sur la base du meilleur effort (par exemple, si le respect des priorités n’affecte pas de manière significative la capacité de la flotte EC2 à fournir une capacité optimale). C’est une bonne option pour les charges de travail pour lesquelles la possibilité de perturbation doit être minimisée, mais la priorité de certains types d’instances est également importante. Notez que lorsque vous définissez la priorité sur capacity-optimized-prioritized, la même priorité est également appliquée à vos instances à la demande si l’option à la demande AllocationStrategy est définie sur prioritized.

diversified

Les instances Spot sont réparties sur tous les groupes de capacité Spot.

lowest-price(non recommandé)
Avertissement

Nous ne recommandons pas la stratégie lowest-price d'allocation car c'est elle qui présente le risque d'interruption le plus élevé pour vos instances Spot.

Les instances Spot proviennent du groupe dont le tarif est le plus bas et qui dispose d’une capacité disponible. Il s’agit de la stratégie par défaut. Nous vous recommandons toutefois de remplacer la valeur par défaut en spécifiant la stratégie d’allocation price-capacity-optimized.

Si le groupe le moins coûteux ne dispose pas de capacité, les instances Spot proviennent du groupe le moins coûteux suivant qui a une capacité disponible.

Si un groupe n’a plus de capacité avant de répondre à votre demande, la flotte EC2 continue de répondre à votre demande en puisant dans le groupe suivant le moins coûteux. Pour garantir que la capacité souhaitée est atteinte, vous pouvez recevoir des instances Spot de plusieurs groupes.

Cette stratégie prenant uniquement en compte que le prix des instances et non la capacité disponible, elle peut entraîner des taux d’interruption élevés.

InstancePoolsToUseCount

Nombre de groupes d’instances Spot auxquels allouer votre capacité Spot cible. Valide uniquement lorsque la stratégie d’allocation est définie sur lowest-price. La flotte EC2 sélectionne les groupes d’instances Spot les moins chers et répartit équitablement votre capacité Spot cible entre le nombre de groupes d’instances Spot que vous spécifiez.

Notez qu’EC2 Fleet tente de puiser au mieux des instances Spot dans le nombre de groupes que vous spécifiez. Si un groupe n’a plus de capacité Spot avant de répondre à votre capacité cible, la flotte EC2 continue de répondre à votre demande en puisant dans le groupe suivant le moins coûteux. Pour garantir l’atteinte de votre capacité cible, il se peut que vous receviez des instances Spot provenant d’un nombre de groupes supérieur à celui que vous avez spécifié. De même, si la plupart des pools n’ont pas de capacité Spot, il se peut que vous receviez votre capacité cible complète à partir d’un nombre de groupes inférieur à celui que vous avez spécifié.

Choisir la stratégie d’allocation appropriée

Vous pouvez optimiser votre flotte en fonction de votre cas d’utilisation en choisissant la stratégie d’allocation de points appropriée. Pour la capacité cible d’instance à la demande, la flotte EC2 sélectionne toujours le type d’instance le moins cher en fonction du prix à la demande public, tout en continuant à suivre la stratégie d’allocation (price-capacity-optimized,capacity-optimized diversified ou lowest-price) pour les instances Spot.

Trouver un équilibre entre le prix le plus bas et la capacité disponible

Pour trouver un équilibre entre les groupes de capacité Spot les moins chers et les groupes de capacité Spot présentant la disponibilité de capacité la plus élevée, nous vous recommandons d’utiliser la stratégie d’allocation price-capacity-optimized. Cette stratégie prend des décisions concernant les groupes auprès desquels il convient de demander des instances Spot en fonction à la fois du prix des groupes et de la capacité disponible des instances Spot dans ces groupes. Cela signifie que nous demanderons des instances Spot auprès des groupes qui, selon nous, présentent le moins de risques d’interruption à court terme, tout en tenant compte du prix.

Si votre flotte exécute des charges de travail résilientes et sans état, notamment des applications conteneurisées, des microservices, des applications web, des tâches de données et d’analyse et des traitements par lots, utilisez la stratégie d’allocation price-capacity-optimized pour optimiser les économies de coûts et la capacité disponible.

Si votre flotte exécute des charges de travail dont l’interruption entraîne des coûts plus élevés associés au travail de redémarrage, vous devez implémenter des points de contrôle afin que les applications puissent redémarrer à partir de ce point, si elles sont interrompues. En utilisant des points de contrôle, vous adaptez la stratégie d’allocation price-capacity-optimized à ces charges de travail, car elle alloue la capacité à partir des groupes les moins chers qui offrent également un faible taux d’interruption des instances Spot.

Pour un exemple de configuration utilisant la stratégie d’allocation price-capacity-optimized, reportez-vous à la section Exemple 10 : Lancer des instances ponctuelles dans une price-capacity-optimized flotte.

Lorsque les charges de travail ont un coût d’interruption élevé

Vous pouvez éventuellement utiliser la stratégie capacity-optimized si vous exécutez des charges de travail utilisant des types d’instances dont le prix est similaire, ou lorsque le coût des interruptions est si important que toute économie de coûts est insuffisante par rapport à une augmentation marginale du nombre d’interruptions. Cette stratégie alloue la capacité à partir des groupes de capacité Spot les plus disponibles qui offrent la possibilité de moins d’interruptions, ce qui peut réduire le coût global de votre charge de travail. Pour un exemple de configuration utilisant la stratégie d’allocation capacity-optimized, reportez-vous à la section Exemple 8 : Lancer des instances ponctuelles dans un parc à capacité optimisée.

Lorsque le risque d’interruption doit être minimisé, mais que la préférence pour certains types d’instance est importante, vous pouvez exprimer vos priorités de groupe en utilisant la stratégie d’allocation capacity-optimized-prioritized, puis définir l’ordre des types d’instance à utiliser de la priorité la plus élevée à la plus basse. Pour accéder à un exemple de configuration, consultez Exemple 9 : Lancer des instances ponctuelles dans un parc à capacité optimisée avec des priorités.

Notez que lorsque vous définissez les priorités sur capacity-optimized-prioritized, les mêmes priorités sont également appliquées à vos instances à la demande si l'option à la demande AllocationStrategy est définie sur prioritized.

Lorsque votre charge de travail est flexible dans le temps et que la capacité disponible n’est pas un facteur

Si votre flotte est de petite taille ou si elle s’exécute pendant un temps limité, vous pouvez utiliser price-capacity-optimized pour maximiser vos économies tout en tenant compte de la capacité disponible.

Lorsque votre flotte est importante ou s’exécute pendant une longue période

Si votre parc est important ou qu’il s’exécute pendant une longue durée, vous pouvez améliorer sa disponibilité en répartissant les Instances Spot entre plusieurs groupes en utilisant la stratégie diversified. Par exemple, si votre flotte EC2 spécifie 10 groupes et une capacité cible de 100 instances, la flotte lance 10 instances Spot dans chaque groupe. Si le prix Spot d’un pool dépasse le prix maximum de ce pool, seul 10 % de votre flotte est touché. Avec cette stratégie, votre flotte est également moins affecté par les augmentations du prix Spot dans un pool au fil du temps. Avec la stratégie diversified, la flotte EC2 ne lance pas d’instances Spot dans des groupes dont le prix spot est supérieur ou égal au prix à la demande.

Maintenir la capacité cible

Une fois les Instances Spot résiliées en raison d’un changement de prix Spot ou de la modification de la capacité disponible d’un groupe de capacité Spot, un Flotte EC2 de type maintain lance des Instances Spot de remplacement. La stratégie d’allocation détermine les groupes à partir desquels les instances de remplacement sont lancées, comme suit :

  • Si la stratégie d’allocation est price-capacity-optimized, la flotte lance les instances de remplacement dans les groupes présentant le plus de capacités d’instances Spot disponibles, tout en tenant compte du prix et en identifiant les groupes les moins chers avec une capacité disponible élevée.

  • Si la stratégie d’allocation capacity-optimized est sélectionnée, la flotte lance les instances de remplacement dans les groupes avec le plus de capacités d’instances Spot disponibles.

  • Si la stratégie d’allocation est diversified, le parc d’instances répartit les Instances Spot de remplacement entre les groupes restants.