Déploiement des tâches - Amazon Elastic Container Service

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.

Déploiement des tâches

Pour éviter toute interruption de service des applications, le processus de déploiement est le suivant :

  1. Démarrez les nouveaux conteneurs d'applications tout en maintenant les conteneurs existants en activité.

  2. Vérifiez que les nouveaux contenants sont sains.

  3. Arrêtez les vieux conteneurs.

En fonction de la configuration de votre déploiement et de la quantité d'espace libre non réservé dans votre cluster, plusieurs cycles peuvent être nécessaires pour remplacer toutes les anciennes tâches par de nouvelles tâches.

Il existe deux options de configuration du service ECS que vous pouvez utiliser pour modifier le numéro :

  • minimumHealthyPercent: 100 % (par défaut)

    Limite inférieure du nombre de tâches de votre service qui doivent rester RUNNING inchangées pendant un déploiement. Ceci est représenté en pourcentage du DesiredCount. Il est arrondi au nombre entier le plus proche. Ce paramètre vous permet de procéder au déploiement sans avoir recours à une capacité de cluster supplémentaire.

  • maximumPercent: 200 % (par défaut)

    Limite supérieure du nombre de tâches de votre service autorisées dans l'PENDINGétat RUNNING ou lors d'un déploiement. Ceci est représenté en pourcentage du DesiredCount. Il est arrondi à l'entier inférieur le plus proche.

Prenons l'exemple du service suivant qui comporte six tâches tan, déployé dans un cluster pouvant accueillir huit tâches au total. Les options de configuration du service Amazon ECS par défaut n'autorisent pas le déploiement à moins de 100 % des six tâches souhaitées.

Schéma illustrant six tâches dans un cluster pouvant accueillir huit tâches.

Le processus de déploiement est le suivant :

  1. L'objectif est de remplacer les tâches en beige par des tâches bleues.

  2. Le planificateur lance deux nouvelles tâches bleues car les paramètres par défaut exigent que six tâches soient en cours d'exécution.

  3. Le planificateur arrête deux des tâches en bronzage car il y en aura un total de six (quatre en beige et deux en bleu).

  4. Le planificateur lance deux tâches bleues supplémentaires.

  5. Le planificateur arrête deux des tâches de bronzage.

  6. Le planificateur lance deux tâches bleues supplémentaires.

  7. Le planificateur arrête les deux dernières tâches de bronzage.

Dans l'exemple ci-dessus, si vous utilisez les valeurs par défaut pour les options, il y a une attente de 2,5 minutes pour chaque nouvelle tâche qui démarre. En outre, l'équilibreur de charge devra peut-être attendre 5 minutes pour que l'ancienne tâche s'arrête.

Vous pouvez accélérer le déploiement en définissant la minimumHealthyPercent valeur sur 50 %.

Prenons l'exemple du service suivant qui comporte six tâches tan, déployé dans un cluster pouvant accueillir huit tâches au total.

Schéma illustrant six tâches dans un cluster pouvant accueillir huit tâches d'une minimumHealthyPercent valeur de 50 %.

Le processus de déploiement est le suivant :

  1. L'objectif est de remplacer les tâches en beige par des tâches bleues.

  2. Le planificateur arrête trois des tâches de bronzage. Trois tâches de bronzage sont toujours en cours d'exécution, ce qui correspond à la minimumHealthyPercent valeur.

  3. Le planificateur lance cinq tâches bleues.

  4. Le planificateur arrête les trois tâches restantes.

  5. Le planificateur lance les dernières tâches bleues.

Vous pouvez également ajouter de l'espace libre afin de pouvoir exécuter des tâches supplémentaires.

Schéma illustrant six tâches dans un cluster pouvant accueillir huit tâches.

Le processus de déploiement est le suivant :

  1. L'objectif est de remplacer les tâches en beige par des tâches bleues.

  2. Le planificateur arrête trois des tâches de bronzage

  3. Le planificateur lance six tâches bleues

  4. Le planificateur arrête les trois tâches de bronzage.

Utilisez les valeurs suivantes pour les options de configuration du service ECS lorsque vos tâches sont inactives pendant un certain temps et que leur taux d'utilisation n'est pas élevé.

  • minimumHealthyPercent: 50 %

  • maximumPercent: 200 %