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.
Utilisation d'ensembles de modifications sensibles à la dérive
Les ensembles de modifications sensibles à la dérive sont des ensembles de CloudFormation modifications améliorés qui vous permettent d'identifier et de gérer la dérive des piles de manière sûre. Les piles s'écartent de la configuration de modèle attendue lorsque les ressources des piles sont modifiées à l'extérieur CloudFormation, à l'aide du AWS Management Console SDK ou du SDK des services sous-jacents. AWS CLI Les ensembles de modifications sensibles à la dérive comparent les modèles à l'état réel de vos ressources de pile et alignent les ressources dérivées sur leurs définitions de modèles. Lorsque la définition du modèle d'une ressource est mise à jour pour correspondre à son état réel, les ensembles de modifications sensibles à la dérive réinitialisent le statut de dérive de la ressource sans modifier la ressource.
Les avantages de l'utilisation d'ensembles de modifications sensibles à la dérive sont les suivants :
-
Prévisualisez les remplacements de dérive : détectez si un déploiement annulera les out-of-band modifications critiques apportées lors de la réponse à un incident.
-
Réconciliation systématique des dérivations : alignez en toute sécurité les ressources dérivées avec les définitions de modèles conformes, soit en remplaçant les propriétés dérivées par les valeurs du modèle, soit en mettant à jour le modèle pour qu'il corresponde à l'état réel des ressources.
-
Fonctionnalités de restauration améliorées : en cas d'échec d'un déploiement, restaurez les ressources dans leur état actuel d'avant le déploiement, et non dans l'état du modèle précédent.
-
Visibilité complète — Découvrez exactement comment votre déploiement affectera les configurations réelles des ressources avant d'apporter des modifications.
Les ensembles de modifications traditionnels fournissent une comparaison de votre nouveau modèle avec le modèle précédent pour une pile, mais ne tiennent pas compte de la dérive de la pile. Les ensembles de modifications sensibles à la dérive résolvent ce problème en fournissant une comparaison à trois niveaux entre :
-
État réel : configuration en temps réel de vos ressources. CloudFormation lira la configuration des ressources de votre compte au moment de la création de l'ensemble de modifications via le service sous-jacent APIs.
-
État de déploiement précédent : configuration définie dans le modèle de votre dernier CloudFormation déploiement.
-
État souhaité : configuration définie dans votre nouveau modèle.
Les ensembles de modifications sensibles à la dérive mettront à jour l'état réel de toutes les ressources de la pile pour qu'il corresponde à l'état souhaité, même si aucune ressource n'a été explicitement modifiée dans le modèle.
Considérations
-
Prise en charge des types de ressources : les ensembles de modifications sensibles à la dérive permettent de comparer l'état souhaité avec l'état réel pour des centaines de types de ressources. Pour les types de ressources non pris en charge, les ensembles de modifications sensibles à la dérive se basent sur la comparaison de l'état de déploiement précédent avec l'état souhaité. Consultez la section Types de ressources pris en charge pour plus de détails.
-
Propriétés en écriture seule : pour les propriétés contenant des données sensibles (mots de passe, secrets), les ensembles de modifications sensibles à la dérive sont comparés aux valeurs de déploiement précédentes plutôt qu'aux valeurs réelles.
-
AWS-propriétés gérées : les ensembles de modifications sensibles à la dérive préservent les out-of-band modifications apportées par les AWS services aux propriétés gérées, telles que la capacité souhaitée d'un groupe Amazon Auto Scaling EC2 . Consultez la section des propriétés AWS gérées pour plus de détails.
-
Clés de balise externes : les ensembles de modifications sensibles à la dérive ne suppriment ni ne modifient les clés de balise qui n'ont pas été spécifiées dans le modèle, évitant ainsi les conflits avec les systèmes de contrôle d'accès basé sur les attributs (ABAC).
-
Remplacement des ressources dérivées : les ensembles de modifications sensibles à la dérive ne prennent pas en charge la réconciliation par dérive pour les propriétés immuables.
-
Pièces jointes croisées : certains types de ressources, tels que
AWS::IAM::Policy, peuvent influencer l'état réel d'autres types de ressources, tels queAWS::IAM::Role. Les ensembles de modifications sensibles à la dérive gèrent l'attachement des ressources au sein d'une pile. Si une ressource est modifiée par l'attachement d'une ressource secondaire provenant d'une pile différente, les ensembles de modifications sensibles à la dérive détecteront la modification comme une dérive et pourront annuler l'attachement. Les ressources joignables les plus populaires incluentAWS::IAM::PolicyAWS::IAM::ManagedPolicy,AWS::EC2::SecurityGroupIngress, etAWS::EC2::SecurityGroupEgress.
AWS-propriétés gérées
Vous pouvez configurer des propriétés de ressources spécifiques pour une AWS gestion active. Par exemple, vous pouvez autoriser Amazon Relational Database Service (Amazon RDS) à mettre à niveau automatiquement la version mineure du moteur d'une table Amazon RDS. Ces modifications peuvent se traduire par une dérive de la pile CloudFormation. Les ensembles de modifications sensibles à la dérive reconnaissent que la dérive est attendue pour les propriétés AWS gérées et ne modifient pas leur valeur réelle si vous n'avez pas modifié la propriété dans leur modèle. Les principaux exemples de propriétés AWS gérées sont les suivants :
-
Activation de la
AutoMinorVersionUpgradepropriété d'une table Amazon RDS pour autoriser les mises à jour automatiques de la version du moteur. -
Utilisation de la
AWS::ApplicationAutoScaling::ScalableTargetressource pour activer l'auto-scaling pour des propriétés telles que les unités de read/write capacité d'une table Amazon DynamoDB et le nombre souhaité d'un cluster Amazon Elastic Container Service. -
Utilisation du
AWS::AutoScaling::ScalingPolicypour les groupes Amazon EC2 Auto Scaling.
Les ensembles de modifications sensibles à la dérive clarifient les propriétés identifiées comme gérées. AWS Consultez la AWS CLI section pour plus de détails.
Utilisation d'ensembles de modifications sensibles à la dérive (console)
Vous pouvez créer et gérer des ensembles de modifications sensibles à la dérive via la CloudFormation console en utilisant le même flux de travail que les ensembles de modifications traditionnels, avec des options supplémentaires pour les modes de déploiement.
Création d'ensembles de modifications sensibles à la dérive
Pour créer un ensemble de modifications adapté à la dérive (console)
Connectez-vous à la CloudFormation console AWS Management Console et ouvrez-la à l'adresse https://console.aws.amazon.com/cloudformation.
-
Sur la page Stacks, sélectionnez la pile que vous souhaitez mettre à jour.
-
Choisissez Stack actions, puis choisissez Create change set for current stack.
-
Sur la page Créer un ensemble de modifications, pour Modifier le type de jeu, choisissez Drift aware change set.
-
Choisissez Create change set (Créer un jeu de modifications).
-
Sur la page des détails de l'ensemble de modifications, passez en revue la comparaison tridimensionnelle indiquant le déploiement réel, le déploiement précédent et l'état souhaité pour chaque ressource affectée.
-
Si vous êtes satisfait des modifications, choisissez Execute change set.
Révision des ensembles de modifications sensibles à la dérive
Lorsque vous consultez un ensemble de modifications sensible à la dérive dans la console, vous obtenez des informations améliorées par rapport aux ensembles de modifications traditionnels :
-
État de dérive de la pile : indique si la pile a dérivé depuis son dernier déploiement.
-
Comparaison des propriétés — Affiche une différence JSON entre l'état réel et l'état souhaité d'une ressource affectée.
-
Indicateurs de dérive : indique clairement les propriétés qui ont dérivé dans le différentiel JSON. Cliquez sur Afficher la dérive pour voir la valeur de déploiement précédente d'une propriété.
-
Indicateurs de source de valeur : indique si les valeurs antérieures à une propriété proviennent de l'état réel ou de l'état de déploiement précédent.
Utilisation d'ensembles de modifications sensibles à la dérive ()AWS CLI
Vous pouvez créer et gérer des ensembles de modifications sensibles à la dérive à l'aide du en AWS CLI ajoutant le --deployment-mode REVERT_DRIFT paramètre à la commande. create-change-set
Création d'ensembles de modifications sensibles à la dérive
Pour créer un ensemble de modifications adapté à la dérive
Utilisez la create-change-setcommande avec le --deployment-mode REVERT_DRIFT paramètre pour créer un ensemble de modifications adapté à la dérive.
aws cloudformation create-change-set \ --stack-namemy-stack\ --change-set-namemy-drift-aware-changeset\ --template-bodyfile://updated-template.yaml\ --deployment-mode REVERT_DRIFT \ --capabilitiesCAPABILITY_IAM
Révision des ensembles de modifications sensibles à la dérive
Pour consulter les détails d'un ensemble de modifications sensibles à la dérive
Utilisez la describe-change-setcommande pour passer en revue les détails d'un ensemble de modifications adapté à la dérive :
aws cloudformation describe-change-set \ --change-set-namemy-drift-aware-changeset\ --stack-namemy-stack
La réponse inclut des informations améliorées pour les ensembles de modifications sensibles à la dérive :
-
StackDriftStatus— Indique si la pile a dérivé (DRIFTED,IN_SYNCNOT_CHECKED, ouUNKNOWN). -
ResourceDriftStatus— Affiche l'état de dérive pour chaque ressource (DELETEDMODIFIED,IN_SYNC, ouNOT_CHECKED). -
BeforeValueFrom— Indique si la valeur avant d'une propriété provient deACTUAL_STATEouPREVIOUS_DEPLOYMENT_STATE. -
Drift— Contient les détails de dérive d'une propriétéPreviousValue, notammentActualValue, etDriftDetectionTimestamp. -
ResourceDriftIgnoredProperties— Contient les propriétés d'une ressource pour laquelle l'ensemble de modifications n'annulera pas la dérive et les raisons pour lesquelles la dérive n'est pas prise en compte.
Pour plus d’informations, consultez DescribeChangeSet dans la Référence d’API AWS CloudFormation .
Exécution d'ensembles de modifications sensibles à la dérive
Pour exécuter un ensemble de modifications adapté à la dérive
Après avoir examiné l'ensemble de modifications, utilisez la execute-change-setcommande pour appliquer les modifications :
aws cloudformation execute-change-set \ --change-set-namemy-drift-aware-changeset\ --stack-namemy-stack
En cas d'échec du déploiement, les ressources CloudFormation seront ramenées à leur état actuel d'avant le déploiement et préservera out-of-band les modifications apportées depuis le dernier déploiement.
Types de ressources pris en charge
Les ensembles de modifications sensibles à la dérive permettent une comparaison tridimensionnelle de l'état réel, de l'état de déploiement précédent et de l'état souhaité pour tous les types de ressources prenant en charge la détection de la dérive, à l'exception des types de ressources suivants :
-
AWS::SageMaker::MlflowTrackingServer -
AWS::Route53Resolver::FirewallRuleGroup -
AWS::MediaLive::Multiplexprogram -
AWS::VpcLattice::ResourceConfiguration -
AWS::S3::StorageLensGroup -
AWS::Bedrock::AgentAlias -
AWS::MSK::Cluster -
AWS::RDS::DBProxy -
AWS::Redshift::ClusterParameterGroup -
AWS::QBusiness::Index -
AWS::NetworkManager::CoreNetwork -
AWS::IAM::OIDCProvider -
AWS::Organizations::ResourcePolicy -
AWS::SNS::TopicInlinePolicy -
AWS::Route53::KeySigningKey -
AWS::DataZone::PolicyGrant -
AWS::Transfer::Certificate -
AWS::SageMaker::ImageVersion -
AWS::Neptune::DBParameterGroup -
AWS::ODB::CloudVmCluster -
AWS::RolesAnywhere::TrustAnchor -
AWS::Evidently::Launch -
AWS::Detective::Graph -
AWS::Maester::DocumentType -
AWS::SageMaker::ModelPackageGroup -
AWS::S3Express::BucketPolicy -
AWS::Panorama::PackageVersion -
AWS::S3Tables::TableBucketPolicy
Les ensembles de modifications sensibles à la dérive se basent sur une comparaison de l'état de déploiement précédent et de l'état souhaité pour les ressources qui ne prennent pas en charge la comparaison tridimensionnelle.