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.
Comprendre les comportements de mise à jour des ressources d’une pile
Lorsque vous soumettez une mise à jour, CloudFormation met à jour les ressources en fonction des différences entre ce que vous envoyez et le modèle de la pile. Les ressources qui n'ont pas changé continuent à être exécutées sans interruption pendant le processus de mise à jour. Quant aux ressources mises à jour, CloudFormation utilise l'un des comportements suivants :
- Mise à jour sans interruption
-
CloudFormation met à jour la ressource sans interrompre le fonctionnement de cette ressource et sans modifier son ID physique. Par exemple, si vous mettez à jour certaines propriétés d'une ressource AWS::CloudTrail::Trail, CloudFormation met à jour le journal de suivi sans interruption.
- Mise à jour avec quelques interruptions
-
CloudFormation met à jour la ressource avec quelques interruptions. Par exemple, si vous mettez à jour certaines propriétés d'une ressource AWS::EC2::Instance, l'instance peut subir quelques interruptions pendant que CloudFormation et Amazon EC2 reconfigurent l'instance.
- Remplacement
-
CloudFormation recrée la ressource pendant une mise à jour, ce qui génère également un nouvel ID physique. CloudFormation crée généralement la ressource de remplacement d'abord, modifie les références des autres ressources dépendantes pour qu'elles renvoient vers la ressource de remplacement, puis supprime l'ancienne ressource. Par exemple, si vous mettez à jour la propriété
AvailabilityZoned'un type de ressource AWS::EC2::DBInstance, CloudFormation crée une nouvelle ressource et remplace la ressource d'instance EC2 actuelle par la nouvelle.Si vous ajoutez ou supprimez une propriété qui nécessite un remplacement, cela déclenchera également une mise à jour. La mise à jour se produira même si la valeur réelle de la propriété ne change pas.
La méthode utilisée par CloudFormation dépend de la propriété que vous mettez à jour pour un type de ressource donné. Le comportement de mise à jour de chaque propriété est décrit dans la Référence des types de ressources et de propriétés AWS.
Selon le comportement de mise à jour, vous pouvez décider quand modifier les ressources afin de limiter l'impact de ces modifications sur votre application. En particulier, vous pouvez planifier le moment où les ressources doivent être remplacées au cours d'une mise à jour. Par exemple, si vous mettez à jour la propriété Port d'un type de ressource AWS::RDS::DBInstance, CloudFormation remplace l'instance de base de données en créant une instance de base de données avec le paramètre de port mis à jour et supprime l'ancienne instance de base données. Avant la mise à jour, envisagez d'effectuer les opérations suivantes pour vous préparer au remplacement de la base de données :
-
Créez un instantané des bases de données actuelles.
-
Préparez une stratégie définissant la façon dont les applications qui utilisent cette instance DB doivent gérer une interruption lorsque l'instance est remplacée.
-
Assurez-vous que les applications qui utilisent cette instance DB prennent en compte le paramètre de port mis à jour et les autres mises à jour que vous avez effectuées.
-
Utilisez l'instantané DB pour restaurer les bases de données dans la nouvelle instance de base de données.
Cet exemple n'est pas exhaustif. Il a pour objectif de vous donner une idée des éléments à prévoir lorsqu'une ressource est remplacée pendant une mise à jour.
Note
Si le modèle inclut une ou plusieurs piles imbriquées, CloudFormation initie également une mise à jour pour chaque pile imbriquée. Cette étape est nécessaire pour déterminer si les piles imbriquées ont été modifiées. CloudFormation met uniquement à jour les ressources des piles imbriquées dont les modèles correspondants incluent des modifications.