

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 AWS CloudFormation s'empile plus rapidement avec le mode express
<a name="cloudformation-express-mode"></a>

Avec le mode CloudFormation express, vous pouvez effectuer des opérations de stack dès que la configuration des ressources CloudFormation s'applique, sans attendre que les ressources soient complètement stabilisées. Utilisez le mode express pour créer, mettre à jour et supprimer des piles beaucoup plus rapidement lors des flux de travail de développement itératifs.

Le mode Express fonctionne avec tous les CloudFormation modèles existants. Il n'est pas nécessaire de modifier le modèle pour utiliser le mode express.

**Topics**
+ [Quand utiliser le mode express](#express-mode-when-to-use)
+ [Comment fonctionne le mode express](#express-mode-how-it-works)
+ [Comment CloudFormation gère les dépendances en mode express](#express-mode-dependencies)
+ [Commencer à utiliser le mode express](#express-mode-getting-started)
+ [Comportement de restauration avec le mode express](#express-mode-rollback)
+ [Mode express et piles imbriquées](#express-mode-nested-stacks)
+ [Considérations relatives à la disponibilité des](#express-mode-resource-readiness)
+ [Fonctionnalités et limitations non prises en charge](#express-mode-unsupported)
+ [Comparaison avec AWS CDK déploiements HotSwap](#express-mode-comparison-cdk-hotswap)
+ [Ressources connexes](#express-mode-related-resources)

## Quand utiliser le mode express
<a name="express-mode-when-to-use"></a>

Utilisez le mode express pour les flux de travail de développement et d'itération où la rapidité est plus importante que l'attente d'une stabilisation complète des ressources. Utilisez le mode express lorsque :
+ Vous répétez les modifications apportées au modèle au cours du développement.
+ Vous souhaitez obtenir plus rapidement des informations sur la validité de vos configurations de ressources.
+ Il n'est pas nécessaire d'attendre que les ressources soient pleinement opérationnelles pour continuer.

Pour les déploiements de production où vous devez vérifier que les ressources sont totalement stabilisées et opérationnelles avant de considérer le déploiement comme terminé, utilisez le mode de déploiement par défaut.

## Comment fonctionne le mode express
<a name="express-mode-how-it-works"></a>

Dans le mode de déploiement par défaut, CloudFormation attend que chaque ressource atteigne un état complètement stabilisé avant de signaler la ressource comme terminée. Par exemple, lors de la création d'une instance Amazon EC2, attendez CloudFormation que l'instance soit dans son état. `running`

En mode express, on considère CloudFormation généralement qu'une opération sur une ressource est terminée dès que l'appel d'API pour créer, mettre à jour ou supprimer la ressource aboutit. Dans la plupart des cas, CloudFormation n'attend pas que la ressource atteigne son état opérationnel final.

Cela signifie qu'une fois qu'une opération de pile en mode express est terminée :
+ Les ressources sont peut-être encore en train d'initialiser ou de propager des modifications.
+ Les ressources ne sont peut-être pas encore prêtes à traiter le trafic ou à accepter des connexions.
+ Les opérations de suppression sont peut-être toujours en cours.

## Comment CloudFormation gère les dépendances en mode express
<a name="express-mode-dependencies"></a>

Le mode Express respecte les dépendances des ressources définies dans votre modèle. Si une ressource fait référence à l'ID ou à l'attribut d'une autre ressource (via `Ref` ou`Fn::GetAtt`), CloudFormation confirme que la configuration de la ressource référencée est appliquée avant de démarrer la ressource dépendante. Si une ressource dépendante rencontre une défaillance temporaire parce qu'une ressource référencée n'est pas prête, CloudFormation recommence l'opération.

Les ressources qui ne sont pas dépendantes les unes des autres peuvent fonctionner en parallèle.

Le mode Express ne modifie pas l'ordre de dépendance de vos ressources. Il change lorsque les rapports d'opération de pile sont terminés.

## Commencer à utiliser le mode express
<a name="express-mode-getting-started"></a>

Vous pouvez utiliser le mode express avec le AWS Command Line Interface (AWS CLI), le Cloud Development Kit AWS (AWS CDK) (AWS CDK), la CloudFormation console et les ensembles de modifications. Les sections suivantes décrivent comment activer le mode express avec chaque méthode.

### Utilisation du mode express avec AWS CLI
<a name="express-mode-cli"></a>

Pour utiliser le mode express avec le AWS CLI, ajoutez le `--deployment-config` paramètre à vos commandes d'opérations de pile.

**Création d'une pile en mode express**  
La commande suivante crée une pile en mode express :

```
aws cloudformation create-stack --stack-name {{my-stack}} \
    --template-body {{file://my-template.yaml}} \
    --deployment-config '{"mode": "EXPRESS"}'
```

**Mettre à jour une pile avec le mode express**  
La commande suivante met à jour une pile en utilisant le mode express :

```
aws cloudformation update-stack --stack-name {{my-stack}} \
    --template-body {{file://my-template.yaml}} \
    --deployment-config '{"mode": "EXPRESS"}'
```

**Supprimer une pile en mode express**  
La commande suivante supprime une pile à l'aide du mode express :

```
aws cloudformation delete-stack --stack-name {{my-stack}} \
    --deployment-config '{"mode": "EXPRESS"}'
```

### Utilisation du mode express avec AWS CDK
<a name="express-mode-cdk"></a>

Pour utiliser le mode express avec le Cloud Development Kit AWS (AWS CDK) (AWS CDK), utilisez le `--express` drapeau avec la `cdk deploy` commande :

```
cdk deploy --express
```

### Utilisation du mode express avec AWS SAM
<a name="express-mode-sam"></a>

Pour utiliser le mode express avec la CLI AWS SAM, ajoutez l'`--express`indicateur à vos commandes de déploiement ou de synchronisation :

```
sam deploy --express
```

```
sam sync --express
```

Pour conserver le paramètre dans la configuration de votre projet, utilisez `--save-params` :

```
sam deploy --express --save-params
```

Cela est enregistré `express = true` dans votre `samconfig.toml` fichier afin que les déploiements suivants utilisent automatiquement le mode Express.

Lorsque le mode express est activé, la AWS SAM CLI transmet la configuration de déploiement à CloudFormation. L'`--disable-rollback`indicateur contrôle le comportement de restauration dans la configuration de déploiement.

### Utilisation du mode express avec la console
<a name="express-mode-console"></a>

Lorsque vous créez ou mettez à jour une pile dans la CloudFormation console, vous pouvez activer le mode express à l'étape **Configurer les options de pile**. Sous **Options de déploiement**, sélectionnez **Express** pour le mode de déploiement.

### Utilisation du mode express avec des ensembles de modifications
<a name="express-mode-change-sets"></a>

Vous pouvez utiliser le mode express avec des ensembles de modifications en spécifiant la configuration de déploiement lors de la création du jeu de modifications :

```
aws cloudformation create-change-set --stack-name {{my-stack}} \
    --change-set-name {{my-change-set}} \
    --template-body {{file://my-template.yaml}} \
    --deployment-config '{"mode": "EXPRESS"}'
```

Lorsque vous exécutez l'ensemble de modifications, CloudFormation applique la configuration de déploiement en mode express spécifiée lors de la création de l'ensemble de modifications.

## Comportement de restauration avec le mode express
<a name="express-mode-rollback"></a>

Lorsque vous utilisez le mode express, le rollback CloudFormation est désactivé par défaut. En cas d'échec d'une opération sur les ressources, CloudFormation n'annule pas automatiquement les modifications.

Pour réactiver la restauration en mode express, définissez le `disableRollback` `--deployment-config` paramètre `false` sur :

```
aws cloudformation create-stack --stack-name {{my-stack}} \
    --template-body {{file://my-template.yaml}} \
    --deployment-config '{"mode": "EXPRESS", "disableRollback": false}'
```

## Mode express et piles imbriquées
<a name="express-mode-nested-stacks"></a>

Lorsque vous utilisez le mode express sur une pile parent, le paramètre se propage à toutes les piles imbriquées de la hiérarchie. Il n'est pas nécessaire de spécifier le mode express pour chaque pile imbriquée séparément. Toutes les ressources de la pile racine et de ses piles imbriquées sont terminées dès que leur configuration est appliquée.

## Considérations relatives à la disponibilité des
<a name="express-mode-resource-readiness"></a>

Le mode Express termine les opérations sur les ressources avant que celles-ci n'atteignent un état totalement stabilisé. Toute ressource peut donc nécessiter un délai supplémentaire pour être pleinement prête à servir le trafic ou à effectuer une propagation multirégionale. Le tableau suivant illustre les types de comportement des ressources auxquels vous pouvez vous attendre, à l'aide d'exemples relatifs à différents types de ressources. Ces exemples sont illustratifs et ne constituent pas une liste complète des ressources prises en charge.


| Type de ressource | Opération | Comportement de préparation | 
| --- | --- | --- | 
|  CloudFront Distribution sur Amazon | Create/Update | Le déploiement global de la distribution peut prendre plusieurs minutes une fois la configuration appliquée. | 
| Instance Amazon EC2 | Créer | L'instance est peut-être toujours en cours d'initialisation (exécution de scripts de données utilisateur, vérifications d'état) une fois l'opération de pile terminée. | 
| AWS Fonction Lambda | Suppression | Les ressources fonctionnelles sont peut-être encore en cours de nettoyage une fois les rapports d'opération de suppression terminés. | 
| Service Amazon Elastic Container Service (Amazon ECS) | Create/Update | Les tâches de service sont peut-être encore en train de démarrer ou d'atteindre un état stable une fois l'opération de pile terminée. | 

## Fonctionnalités et limitations non prises en charge
<a name="express-mode-unsupported"></a>

Les fonctionnalités et services suivants ne sont pas pris en charge avec le mode express :

CloudFormation StackSets  
CloudFormation ne prend pas en charge le mode express avec StackSets les opérations.

Les ressources suivantes ont un comportement spécifique avec le mode express :

Ressources personnalisées  
Les ressources personnalisées (y compris `AWS::CloudFormation::CustomResource` les `Custom::*` ressources) suivent leur comportement par défaut. CloudFormation attend que la ressource personnalisée envoie un signal de réponse avant de considérer l'opération comme terminée, même en mode express. Pour éviter qu'une ressource personnalisée lente ou bloquée ne retarde les flux de travail à itération rapide, définissez un temps d'attente maximal à l'`ServiceTimeout`aide de cette propriété. Pour de plus amples informations, veuillez consulter [Délai d’attente de réponse](template-custom-resources.md#response-timeout).

## Comparaison avec AWS CDK déploiements HotSwap
<a name="express-mode-comparison-cdk-hotswap"></a>

Le tableau suivant compare le mode express aux déploiements AWS CDK hotswap.


| Fonctionnalité | Mode express | AWS CDK hotswap | 
| --- | --- | --- | 
| Mécanisme de déploiement | Utilisations CloudFormation pour toutes les opérations liées aux ressources | Contourne CloudFormation et appelle directement les API du service | 
| Compatibilité des modèles | Fonctionne avec tous les CloudFormation modèles existants | Prend en charge un ensemble limité de types de ressources | 
| État de la pile | L'état de la pile reste cohérent avec le modèle | L'état de la pile peut dériver du modèle | 
| Assistance en cas de rétrogradation | Supporte le rollback (désactivé par défaut) | Aucune prise en charge de la rétrogradation | 
| Couverture des ressources | Tous les types de CloudFormation ressources | Types de ressources limités (AWS Lambda, Amazon ECS, AWS Step Functions, etc.) | 
| Usage recommandé | Workflows de développement et d'itération | Workflows de développement avec ressources prises en charge uniquement | 

## Ressources connexes
<a name="express-mode-related-resources"></a>
+ [Choisissez comment gérer les défaillances lors de l’approvisionnement des ressources](stack-failure-options.md)
+ [Piles imbriquées](using-cfn-nested-stacks.md)
+ [Mettre à jour les piles à l’aide de jeux de modifications](using-cfn-updating-stacks-changesets.md)
+ [CreateStack](https://docs.aws.amazon.com/AWSCloudFormation/latest/APIReference/API_CreateStack.html) dans la *Référence d'API AWS CloudFormation *