Esportazione di informazioni da uno stack distribuito - 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à.

Esportazione di informazioni da uno stack distribuito

Se disponi di più stack nella stessa regione Account AWS e nella stessa regione, potresti voler condividere informazioni tra di loro. Ciò è utile quando uno stack deve utilizzare risorse create da un altro stack.

Ad esempio, potresti avere uno stack che crea risorse di rete, come sottoreti e gruppi di sicurezza, per i tuoi server web. Gli altri stack che creano i server Web effettivi possono quindi utilizzare le risorse di rete create dal primo stack. Non è necessario codificare le risorse IDs nel modello dello stack o passarle IDs come parametri di input.

Per condividere informazioni tra pile, esportate i valori di output da uno stack e li importate in un altro stack. Come funziona:

  1. Nel modello del primo stack (ad esempio, lo stack di rete), definisci determinati valori da esportare utilizzando il Export campo nella sezione Output.

  2. Quando crei o aggiorni quello stack, CloudFormation esporta i valori di output, rendendoli disponibili ad altri stack nella stessa regione. Account AWS

  3. Nel modello dell'altro stack, si utilizza la Fn::ImportValuefunzione per importare i valori esportati dal primo stack.

  4. Quando crei o aggiorni il secondo stack (ad esempio, lo stack del server web), recupera CloudFormation automaticamente i valori esportati dal primo stack e li utilizza.

Per una procedura guidata e modelli di esempio, consulta Fai riferimento agli output di risorse in un altro stack CloudFormation.

Nota

Quando un altro stack importa un valore di output, non puoi eliminare lo stack che esporta il valore di output o modificare il valore di output esportato. Tutte le importazioni devono essere eliminate prima di poter eliminare lo stack di esportazione o di modificare il valore di output.

Esportazione dei valori di output di uno stack e utilizzo di stack nidificati

Uno stack nidificato è uno stack creato all'interno di un altro stack utilizzando la risorsa AWS::CloudFormation::Stack. Con gli stack nidificati, puoi distribuire e gestire tutte le risorse da un singolo stack. Puoi utilizzare output da uno stack nel gruppo di stack nidificati come input per un altro stack del gruppo. Ciò è diverso dall'esportazione di valori.

Se desideri isolare la condivisione delle informazioni all'interno di un gruppo di stack nidificati, è consigliabile utilizzare stack nidificati. Per condividere le informazioni con altri stack (non solo nel gruppo di stack nidificati), esporta i valori. Ad esempio, puoi creare un singolo stack con una sottorete ed esportarne l'ID. Altri stack possono utilizzare questa sottorete importandone l'ID; non è necessario che ogni stack crei una sottorete propria. Finché gli stack importano l'ID della sottorete, non è possibile modificarlo o eliminarlo.

Per ulteriori informazioni sugli stack annidati, consulta. Incorpora pile all'interno di altre pile utilizzando pile annidate

Elencazione dei valori di output esportati

Per visualizzare i valori che puoi importare, elenca tutti i valori di output esportati utilizzando la CloudFormation console, AWS CLI oppure. CloudFormation API CloudFormation mostra i nomi e i valori degli output esportati per la regione corrente e lo stack da cui vengono esportati gli output. Per fare riferimento a un valore di output esportato in un modello di stack, utilizza il nome di esportazione e la funzione Fn::ImportValue.

Per elencare i valori di output esportati (console)
Per elencare i valori di output esportati (AWS CLI)
Per elencare i valori di output esportati (API)

Creazione di elenchi di stack che importano un valore di output esportato

Quando esportate un valore di output, gli stack che si trovano nello stesso AWS account e nella stessa regione possono importare quel valore. Per vedere quali stack importano un determinato valore di output, è possibile utilizzare l'operazione di importazione di elenchi.

Per eliminare o modificare i valori di output esportati, è possibile utilizzare l'operazione ListImports per tenere traccia degli stack che li importano, quindi modificare tali stack per rimuovere le funzioni Fn::ImportValue che fanno riferimento ai valori di output. Prima di poter eliminare o modificare i valori di output esportati, è necessario rimuovere tutte le importazioni che fanno riferimento a tali valori.

Per ulteriori informazioni sull'importazione e l'esportazione dei valori di output, vedi Esportazione di informazioni da uno stack distribuito.

Per elencare gli stack che importano un valore di output esportato (console)
  1. Nella CloudFormation console, dal pannello di CloudFormationnavigazione, scegli Esportazioni.

  2. Per vedere quali pile importano un determinato valore di esportazione, scegli il nome di esportazione per quel valore di esportazione. CloudFormation visualizza la pagina dei dettagli di esportazione, che elenca tutti gli stack che importano il valore.

Per elencare gli stack che importano un valore di output esportato (AWS CLI)
  • Eseguire il comando list-imports fornendo il nome del valore di output esportato.

    CloudFormation restituisce un elenco di pile che importano il valore.

Per elencare le pile che importano un valore di output esportato () API
  • Eseguite il ListImportsAPI, fornendo il nome del valore di output esportato.

    CloudFormation restituisce un elenco di pile che stanno importando il valore.