Utilizzo di set di modifiche sensibili alla deriva - AWS CloudFormation

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Utilizzo di set di modifiche sensibili alla deriva

I set di modifiche sensibili alla deriva sono set di CloudFormation modifiche avanzati che consentono di identificare e gestire la deriva dello stack in modo sicuro. Gli stack si discostano dalla configurazione del modello prevista quando le risorse dello stack vengono modificate all'esterno CloudFormation, utilizzando l'SDK o l' Console di gestione AWS SDK dei servizi sottostanti. AWS CLI I set di modifiche compatibili con la deriva confrontano i modelli con lo stato effettivo delle risorse dello stack e allineano le risorse alla deriva con le relative definizioni dei modelli. Quando la definizione del modello di una risorsa viene aggiornata in base allo stato effettivo, i set di modifiche in base alla deriva ripristinano lo stato di deriva della risorsa senza modificare la risorsa.

I vantaggi dell'utilizzo di set di modifiche sensibili alla deriva includono:

  • Anteprima delle sovrascritture della deriva: rileva se una distribuzione ripristinerà le modifiche critiche out-of-band apportate durante la risposta all'incidente.

  • Riconciliazione sistematica delle deviazioni: allinea in modo sicuro le risorse alla deriva con le definizioni dei modelli conformi, sovrascrivendo le proprietà derivate con i valori del modello o aggiornando il modello in modo che corrisponda allo stato effettivo delle risorse.

  • Funzionalità di rollback avanzate: se una distribuzione fallisce, ripristina le risorse allo stato effettivo precedente alla distribuzione, non allo stato precedente del modello.

  • Visibilità completa: scopri esattamente come la tua implementazione influirà sulle configurazioni effettive delle risorse prima di apportare modifiche.

I set di modifiche tradizionali forniscono un confronto tra il nuovo modello e il modello precedente per uno stack, ma non tengono conto della deriva dello stack. I set di modifiche compatibili con la deriva risolvono questo problema fornendo un confronto a tre vie tra:

  • Stato effettivo: la configurazione in tempo reale delle risorse. CloudFormation leggerà la configurazione delle risorse del tuo account al momento della creazione del set di modifiche tramite il servizio sottostante APIs.

  • Stato di distribuzione precedente: la configurazione definita nel modello dell'ultima CloudFormation distribuzione.

  • Stato desiderato: la configurazione definita nel nuovo modello.

I set di modifiche Drift-aware aggiorneranno lo stato effettivo di tutte le risorse dello stack in modo che corrisponda allo stato desiderato, anche se una risorsa non è stata modificata in modo esplicito nel modello.

Considerazioni

  • Supporto per tipi di risorse: i set di modifiche compatibili con Drift-aware supportano il confronto tra lo stato desiderato e lo stato effettivo per centinaia di tipi di risorse. Per i tipi di risorse non supportati, i set di modifiche sensibili alla deriva si basano sul confronto dello stato di distribuzione precedente con lo stato desiderato. Per i dettagli, consulta la sezione Tipi di risorse supportati.

  • Proprietà di sola scrittura: per le proprietà che contengono dati sensibili (password, segreti), i set di modifiche sensibili alla deriva vengono confrontati con i valori di distribuzione precedenti anziché con i valori effettivi.

  • AWS-managed properties: i set di modifiche Drift-aware preservano out-of-band le modifiche apportate dai AWS servizi alle proprietà gestite, come la capacità desiderata di un gruppo Amazon Auto EC2 Scaling. Per i dettagli, consulta la sezione AWS-managed properties.

  • Chiavi di tag esterne: i set di modifiche Drift-aware non rimuovono o modificano le chiavi dei tag che non sono state specificate nel modello, prevenendo conflitti con i sistemi di controllo degli accessi basati sugli attributi (ABAC).

  • Sostituzione di risorse alla deriva: i set di modifiche che supportano la deriva non supportano la riconciliazione della deriva per le proprietà immutabili.

  • Allegati cross-stack: alcuni tipi di risorse, ad esempio, possono influenzare lo stato effettivo di altri tipi di risorseAWS::IAM::Policy, ad esempio. AWS::IAM::Role I set di modifiche sensibili alla deriva gestiscono l'attaccamento delle risorse all'interno di uno stack. Se una risorsa viene modificata allegando una risorsa secondaria da uno stack diverso, i set di modifiche che riconoscono la deriva rileveranno la modifica come deriva e possono annullare l'allegato. Le risorse allegabili più diffuse includono,, e. AWS::IAM::Policy AWS::IAM::ManagedPolicy AWS::EC2::SecurityGroupIngress AWS::EC2::SecurityGroupEgress

AWS-proprietà gestite

È possibile configurare proprietà specifiche delle risorse per la AWS gestione attiva. Ad esempio, puoi consentire ad Amazon Relational Database Service (Amazon RDS) di aggiornare automaticamente la versione secondaria del motore di una tabella Amazon RDS. Queste modifiche possono essere visualizzate come deriva dello stack. CloudFormation I set di modifiche compatibili con la deriva riconoscono che è prevista una deriva per le proprietà AWS-managed e lasciano inalterato il loro valore effettivo se non avete modificato la proprietà nel relativo modello. I principali esempi di proprietà -managed sono: AWS

  • Abilitazione della AutoMinorVersionUpgrade proprietà di una tabella Amazon RDS per consentire gli aggiornamenti automatici della versione del motore.

  • Utilizzo della AWS::ApplicationAutoScaling::ScalableTarget risorsa per abilitare l'auto-scaling per proprietà come le unità di capacità di una tabella Amazon DynamoDB e read/write il conteggio desiderato di un cluster Amazon Elastic Container Service.

  • Utilizzo dei gruppi AWS::AutoScaling::ScalingPolicy per Amazon EC2 Auto Scaling.

I set di modifiche Drift-aware chiariscono le proprietà che sono state identificate come -managed. AWS Vedi la sezione per i dettagli. AWS CLI

Utilizzo dei set di modifiche compatibili con la deriva (console)

È possibile creare e gestire set di modifiche sensibili alla deriva tramite la CloudFormation console utilizzando lo stesso flusso di lavoro dei set di modifiche tradizionali, con opzioni aggiuntive per le modalità di distribuzione.

Creazione di set di modifiche sensibili alla deriva

Per creare un set di modifiche sensibile alla deriva (console)
  1. Accedi Console di gestione AWS e apri la CloudFormation console all'indirizzo /cloudformazione. https://console.aws.amazon.com

  2. Nella pagina Stacks, seleziona lo stack che desideri aggiornare.

  3. Scegli le azioni dello stack, quindi scegli Crea set di modifiche per lo stack corrente.

  4. Nella pagina Crea set di modifiche, per Cambia tipo di set, scegli Drift aware change set.

  5. Selezionare Create change set (Crea set di modifiche).

  6. Nella pagina dei dettagli del set di modifiche, esamina il confronto a tre vie che mostra la distribuzione effettiva, precedente e lo stato desiderato per ciascuna risorsa interessata.

  7. Se sei soddisfatto delle modifiche, scegli Esegui set di modifiche.

Revisione dei set di modifiche sensibili alla deriva

Quando visualizzi un set di modifiche in grado di riconoscere la deriva nella console, vedrai informazioni migliorate rispetto ai set di modifiche tradizionali:

  • Stato di deriva dello stack: indica se lo stack si è allontanato dall'ultima implementazione.

  • Confronto delle proprietà: mostra una differenza JSON tra lo stato effettivo e quello desiderato di una risorsa interessata.

  • Indicatori di deriva: contrassegna chiaramente le proprietà all'interno del diff JSON che hanno subito variazioni. Fai clic su Visualizza deriva per visualizzare il valore di implementazione precedente per una proprietà.

  • Indicatori di origine del valore: mostrano se i valori precedenti di una proprietà provengono dallo stato effettivo o dallo stato di implementazione precedente.

Utilizzo dei set di modifiche sensibili alla deriva ()AWS CLI

È possibile creare e gestire set di modifiche sensibili alla deriva utilizzando AWS CLI aggiungendo il parametro al comando. --deployment-mode REVERT_DRIFT create-change-set

Creazione di set di modifiche sensibili alla deriva

Per creare un set di modifiche che tenga conto della deriva

Utilizzate il create-change-setcomando con il --deployment-mode REVERT_DRIFT parametro per creare un set di modifiche in grado di riconoscere la deriva.

aws cloudformation create-change-set \ --stack-name my-stack \ --change-set-name my-drift-aware-changeset \ --template-body file://updated-template.yaml \ --deployment-mode REVERT_DRIFT \ --capabilities CAPABILITY_IAM

Revisione dei set di modifiche sensibili alla deriva

Per esaminare i dettagli di un set di modifiche in grado di riconoscere la deriva

Utilizzate il describe-change-setcomando per esaminare i dettagli di un set di modifiche in grado di riconoscere la deriva:

aws cloudformation describe-change-set \ --change-set-name my-drift-aware-changeset \ --stack-name my-stack

La risposta include informazioni avanzate per i set di modifiche sensibili alla deriva:

  • StackDriftStatus— Mostra se lo stack è andato alla deriva (DRIFTED,, o). IN_SYNC NOT_CHECKED UNKNOWN

  • ResourceDriftStatus— Mostra lo stato di deriva per ogni risorsa (DELETED,,MODIFIED, IN_SYNC o). NOT_CHECKED

  • BeforeValueFrom— Indica se il valore precedente di una proprietà proviene da ACTUAL_STATE oPREVIOUS_DEPLOYMENT_STATE.

  • Drift— Contiene i dettagli della deriva per una proprietàPreviousValue, tra cuiActualValue, eDriftDetectionTimestamp.

  • ResourceDriftIgnoredProperties— Contiene le proprietà di una risorsa per la quale il set di modifiche non ripristinerà la deriva e i motivi per cui la deriva viene ignorata.

Per ulteriori informazioni, consulta DescribeChangeSet nella documentazione di riferimento dell’API AWS CloudFormation .

Esecuzione di set di modifiche sensibili alla deriva

Per eseguire un set di modifiche in grado di riconoscere la deriva

Dopo aver esaminato il set di modifiche, utilizzate il execute-change-setcomando per applicare le modifiche:

aws cloudformation execute-change-set \ --change-set-name my-drift-aware-changeset \ --stack-name my-stack

Se la distribuzione fallisce, CloudFormation ripristinerà le risorse allo stato effettivo precedente alla distribuzione e manterrà out-of-band le modifiche apportate dall'ultima distribuzione.

Tipi di risorse supportati

I set di modifiche sensibili alla deriva supportano un confronto a tre vie tra lo stato effettivo, lo stato di distribuzione precedente e lo stato desiderato per tutti i tipi di risorse che supportano il rilevamento delle deviazioni, ad eccezione dei seguenti tipi di risorse:

  • 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

I set di modifiche con riconoscimento della deriva si basano su un confronto tra lo stato di distribuzione precedente e lo stato desiderato per le risorse che non supportano il confronto a tre vie.