

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.

# Mettre à jour un service Amazon ECS Express Mode
<a name="express-service-update-full"></a>

Le service Express Mode simplifie le processus de mise à jour du service en fournissant des options configurables pour la mise en réseau, l'équilibrage de charge et la mise à l'échelle automatique des applications, ainsi qu'en orchestrant les modifications apportées à ces services.

Vous pouvez mettre à jour votre service Express Mode pour modifier les images des conteneurs, ajuster l'allocation des ressources ou modifier les paramètres de configuration. Les mises à jour sont déployées à l'aide de déploiements Canary avec des alarmes de restauration basées sur des alarmes pour maintenir la disponibilité.

## Comportement de déploiement
<a name="express-service-update-full-behavior"></a>

Un service en mode Express utilise les déploiements Canary par défaut pour garantir des mises à jour sécurisées et des annulations rapides :
+ Un nouvel environnement est créé et des tâches sont déployées en fonction de vos modifications
+ 5 % du trafic est transféré vers le nouvel environnement
+ Les annulations basées sur les alarmes se déclenchent si la somme des pourcentages d'erreurs 4xx et 5xx est supérieure à 1 pour 2 points de données en 3 minutes
+ Les bilans de santé vérifient que les nouvelles tâches sont saines
+ Après 3 minutes de cuisson, 100 % du trafic est transféré vers un nouvel environnement
+ Après 3 minutes de cuisson pour la surveillance, les anciennes tâches sont progressivement arrêtées et remplacées

Pour plus d'informations, consultez la section Déploiements [ d'Amazon ECS Canary ](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/canary-deployment.html)

## Procédure
<a name="express-service-update-full-procedure"></a>

1. Ouvrez la console à l'adresse [ https://console.aws.amazon.com/ecs/v2](https://console.aws.amazon.com/ecs/v2).

1. Dans le panneau de navigation, choisissez **Clusters**.

1. Sur la ** page ** Clusters, choisissez le nom du cluster qui contient votre service Express Mode.

1. Sur la page des détails du cluster, choisissez l'**onglet ** Services.

1. Configurez un filtre pour afficher vos services en mode Express. Pour le type de gestion des ressources ** ** filtrées, choisissez ** ECS**.

   Un ** badge ** Express est placé à côté du nom d'un service en mode Express.

1. Sous **Configuration** :

   1. Spécifiez l'image à utiliser pour votre application. Pour ** l'URI de l'image**, entrez l'URI de votre image. Pour parcourir vos images Amazon ECR, choisissez ** Parcourir les images ECR**, puis procédez comme suit :

      1. Pour Dépôt ** privé**, choisissez le référentiel privé Amazon ECR.

      1. Pour ** Image**, choisissez votre image.

      1. Choisissez le mode d'identification de l'image. Pour ** Sélectionner l'image par**, choisissez l'une des options suivantes :
         + AWS vous recommande de choisir ** Image digest**.
         + Pour utiliser la balise, choisissez la balise ** Image, ** puis choisissez la balise.

   1. Pour utiliser un registre privé, sélectionnez Registre ** privé**. Ensuite, pour l'ARN ou le nom de ** Secrets Manager**, entrez l'ARN Secrets Manager que vous avez créé dans les prérequis.

   1. Pour Rôle d'exécution des ** tâches**, choisissez les rôles ou créez un nouveau rôle et actualisez. Vous pouvez mettre à jour le rôle d'exécution des tâches lorsque vous devez ajouter des autorisations supplémentaires.

1. Sous Configurations ** supplémentaires**, personnalisez votre service.

   1. Sous le ** conteneur ** :

      1. Pour Port de ** conteneur**, mettez à jour le port sur lequel votre application écoute (la valeur par défaut est 80).

      1. Pour le chemin ** de vérification de l'état**, mettez à jour le chemin des bilans de santé (par exemple,`/health`).

   1. Sous Variables d'**environnement**, ajoutez des paires clé-valeur pour les variables d'environnement dont votre application a besoin :

      1. Pour ** Key**, entrez le nom de la variable d'environnement.

      1. Pour Type de ** valeur**, choisissez Variable d'**environnement ** ou ** Secret**.

      1. Dans ** Valeur ou valeur de**, entrez la valeur ou la référence.

      1. Choisissez ** Ajouter une variable ** d'environnement pour ajouter d'autres variables si nécessaire.

   1. Pour ** Command**, entrez éventuellement une commande personnalisée pour remplacer l'instruction Docker CMD.

   1. Pour le rôle de ** tâche**, ajoutez un rôle IAM qui accorde des autorisations à votre application exécutée dans vos conteneurs. Cela permet à votre application d'effectuer des appels d'API vers AWS des services.

   1. Sous ** Compute ** :

      1. Pour le ** processeur**, mettez à jour l'allocation de processeur virtuel pour vos tâches (par exemple, 1 processeur virtuel).

      1. Pour ** la mémoire**, mettez à jour l'allocation de mémoire pour vos tâches (par exemple, 2 Go).

   1. Sous ** Auto Scaling ** :

      1. Pour la métrique de service ** ECS**, choisissez la métrique à utiliser (par exemple, ** ECS Service Average Memory Utilization ** ou ** Request Count per target**).

      1. Dans Valeur ** cible**, entrez la cible de mise à l'échelle (par exemple, ** 60 ** ou ** 1 000**).

      1. Pour Nombre ** minimum de tâches ** et Nombre ** maximum de tâches**, mettez à jour les limites de mise à l'échelle.

   1. Sous ** Journaux ** :

      1. Pour le groupe de CloudWatch journaux ** Amazon**, mettez à jour le nom du groupe de journaux pour les journaux de votre application. Notez que cela ne déplacera pas les journaux existants, mais commencera à écrire des journaux à partir de la nouvelle révision du service.

      1. Pour le préfixe de flux de CloudWatch journaux ** Amazon**, entrez un nouveau préfixe pour les flux de journaux.

1. Choisissez ** Mettre ** à jour pour mettre à jour votre service Express Mode.

### Mise à jour avec une définition de tâche personnalisée
<a name="express-service-update-custom-td"></a>

Vous pouvez mettre à jour votre service Express Mode avec une définition de tâche personnalisée en spécifiant le `taskDefinitionArn` paramètre. Le mode Express utilise votre définition de tâche telle quelle et continue de gérer le reste de l'infrastructure.

Lors des mises à jour suivantes, vous pouvez soit :
+ Créez une nouvelle révision de votre définition de tâche et mettez à jour le`taskDefinitionArn`. Le mode Express utilise la nouvelle révision pour le prochain déploiement de service.
+ Mettez directement à jour les paramètres du mode Express :
  + Pour les paramètres non liés à la définition de la tâche (tels que `healthCheckPath``networkConfiguration`, ou`scalingTarget`), le mode Express applique les modifications sans modifier la définition de la tâche.
  + Pour les paramètres liés à la définition des tâches (tels que l'image, le processeur ou la mémoire à l'aide de `primaryContainer` ou`cpu`/`memory`), le mode Express crée une nouvelle définition de tâche gérée avec vos modifications tout en préservant votre autre configuration au niveau des tâches.

**Pour effectuer une mise à jour avec une définition de tâche personnalisée (console Amazon ECS)**

1. Ouvrez la console Amazon ECS et accédez à votre service Express Mode.

1. Choisissez la flèche déroulante à côté de ** Mettre à jour le service**, puis choisissez ** Mettre à jour avec une définition ** de tâche personnalisée.

1. Pour Famille de définitions de ** tâches**, sélectionnez une famille de définitions de tâches existante. Pour créer une nouvelle définition de tâche, cliquez sur le ** lien Définitions de ** tâches.

1. Pour Révision de la définition des ** tâches**, sélectionnez la révision à utiliser ou laissez ce champ vide pour utiliser la dernière révision.

1. (Facultatif) Développez ** des configurations supplémentaires ** pour mettre à jour le chemin de vérification de l'état, la mise en réseau ou les paramètres de dimensionnement automatique.

1. Choisissez **Mettre à jour**.

La AWS AWS CLI commande suivante met à jour votre service Express Mode avec une définition de tâche personnalisée :

```
aws ecs update-express-gateway-service \
    --service-arn arn:aws:ecs:us-west-2:123456789012:service/default/my-service \
    --task-definition-arn arn:aws:ecs:us-west-2:123456789012:task-definition/my-td:4
```

**Note**  
Si vous utilisez CloudFormation et que vous ajoutez `taskDefinitionArn` à votre service Express Mode pour la première fois, redéployez d'abord votre stack une fois. Cela garantit la compatibilité avec la restauration.