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.
Vous pouvez utiliser le placement des tâches pour configurer Amazon ECS afin de placer vos tâches sur des instances de conteneur répondant à certains critères, par exemple une zone de disponibilité ou un type d'instance.
Les composants de placement des tâches sont les suivants :
-
Stratégie de placement des tâches - Algorithme de sélection des instances de conteneur pour le placement des tâches ou des tâches à terminer. Par exemple, Amazon ECS peut sélectionner des instances de conteneur de manière aléatoire, ou il peut sélectionner des instances de conteneur de manière à ce que les tâches soient réparties uniformément sur un groupe d'instances.
-
Groupe de tâches : groupe de tâches connexes, par exemple des tâches de base de données.
-
Contrainte de placement des tâches : il s'agit de règles qui doivent être respectées pour placer une tâche sur une instance de conteneur. Si la contrainte n'est pas respectée, la tâche n'est pas placée et reste dans son
PENDING
état. Par exemple, vous pouvez utiliser une contrainte pour placer des tâches uniquement sur un type d'instance spécifique.
Amazon ECS utilise différents algorithmes pour les types de lancement.
EC2 type de lancement
Pour les tâches qui utilisent le type de EC2 lancement, Amazon ECS doit déterminer où placer la tâche en fonction des exigences spécifiées dans la définition de la tâche, telles que le processeur et la mémoire. De la même manière, lorsque vous réduisez le nombre de tâches, Amazon ECS doit déterminer quelles tâches doivent être résiliées. Vous pouvez appliquer des stratégies et des contraintes de placement des tâches afin de personnaliser la façon dont Amazon ECS place et résilie les tâches.
Les stratégies de placement des tâches par défaut varient selon que vous les exécutez manuellement (tâches autonomes) ou au sein d'un service. Pour les tâches exécutées dans le cadre d'un service Amazon ECS, la stratégie de placement des tâches est spread
, en utilisant attribute:ecs.availability-zone
. Il n'existe pas de contrainte de placement des tâches par défaut pour les tâches ne figurant pas dans les services. Pour de plus amples informations, veuillez consulter Planifiez vos conteneurs sur Amazon ECS.
Note
Les stratégies de placement des tâches ont une obligation de moyens, mais pas de résultat. Amazon ECS tente toujours de placer les tâches, même lorsque l'option de placement optimale n'est pas disponible. Néanmoins, les contraintes de placement des tâches constituent une obligation et peuvent empêcher le placement des tâches.
Vous pouvez utiliser simultanément des stratégies et des contraintes de placement des tâches. Par exemple, vous pouvez utiliser une stratégie et une contrainte de placement des tâches de façon à répartir les tâches entre différentes zones de disponibilité et les regrouper par bin packing en fonction de la mémoire dans chaque zone de disponibilité, mais uniquement pour les instances G2.
Lorsqu'Amazon ECS place des tâches, il a recours au processus suivant afin de sélectionner les instances de conteneur :
-
Identifiez les instances de conteneur qui répondent aux exigences en termes de processeur, de processeur graphique, de mémoire et de port dans la définition de la tâche.
-
Identifiez les instances de conteneur qui répondent aux contraintes de placement des tâches.
-
Identifiez les instances de conteneur qui répondent aux stratégies de placement des tâches.
-
Sélectionnez les instances de conteneur pour le placement des tâches.
Type de lancement Fargate
Les stratégies et contraintes de placement de tâche ne sont pas prises en charge pour les tâches utilisant le type de lancement Fargate. Fargate fera de son mieux pour répartir les tâches entre les zones de disponibilité accessibles. Si le fournisseur de capacité inclut à la fois Fargate et Fargate Spot, le comportement de répartition est indépendant pour chaque fournisseur de capacité.