CloudFormation riferimento agli script di supporto - 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à.

CloudFormation riferimento agli script di supporto

CloudFormation fornisce i seguenti script di supporto in Python che puoi usare per installare software e avviare servizi su un'EC2istanza Amazon che crei come parte del tuo stack:

  • cfn-init— Utilizzabile per recuperare e interpretare i metadati delle risorse, installare pacchetti, creare file e avviare servizi.

  • cfn-signal— Da utilizzare per segnalare con un CreationPolicy oWaitCondition, in modo da poter sincronizzare altre risorse nello stack quando la risorsa o l'applicazione prerequisita è pronta.

  • cfn-get-metadata— Utilizzato per recuperare i metadati per una risorsa o il percorso verso una chiave specifica.

  • cfn-hup— Utilizzato per verificare la presenza di aggiornamenti ai metadati ed eseguire hook personalizzati quando vengono rilevate modifiche.

Puoi chiamare gli script direttamente dal tuo modello. Lo script funziona in combinazione con i metadati delle risorse definiti nello stesso modello. Gli script vengono eseguiti sull'EC2istanza Amazon durante il processo di creazione dello stack.

Nota

Gli script non vengono eseguiti per impostazione predefinita. Devi includere le chiamate al modello per l'esecuzione di script helper specifici.

AMIImmagini Amazon Linux

Gli script di CloudFormation supporto sono preinstallati su AMI immagini Amazon Linux su cui sono installati script bootstrap.

  • Nell'ultima AMI versione di Amazon Linux, gli script sono installati in/opt/aws/bin.

  • AMINelle versioni precedenti di Amazon Linux, il aws-cfn-bootstrap pacchetto che contiene gli script si trova nel repository Yum.

Nota

Gli script di supporto sono preinstallati nelle versioni più recenti di Amazon Linux AMI e non su OptimizedAMIs, come ECS Optimized Image che utilizza Amazon Linux come base.

Download di pacchetti per altre piattaforme

Per le distribuzioni Linux/Unix diverse dalle immagini Amazon Linux AMI e per Microsoft Windows (2008 o versione successiva), puoi scaricare il pacchetto. aws-cfn-bootstrap

Nota

La versione 2.0–1 e versioni successive degli script helper supportano Python 3.4 e versioni successive. Se hai bisogno di script di supporto che supportino una versione precedente di Python, vedi Cronologia delle versioni per Helper CloudFormation Scripts 1.4.

Autorizzazioni per gli script helper

Per impostazione predefinita, gli script helper non richiedono credenziali, perciò non è necessario utilizzare le opzioni --access-key, --secret-key,--role o --credential-file. Tuttavia, se non viene specificata alcuna credenziale, CloudFormation verifica la sottoscrizione allo stack e limita l'ambito della chiamata allo stack a cui l'istanza appartiene.

Se scegli di specificare un'opzione, è consigliabile specificare solo una delle seguenti:

  • --role

  • --credential-file

  • --access-key insieme a --secret-key

Se specifichi un'opzione, ricorda le autorizzazioni richieste dai vari script helper:

  • cfn-signal richiede cloudformation:SignalResource

  • Tutti gli altri script helper richiedono cloudformation:DescribeStackResource

Per ulteriori informazioni sull'utilizzo delle azioni CloudFormation specifiche e delle chiavi di contesto delle condizioni nelle IAM politiche, consulta Control CloudFormation access with nella Guida per l'utente. AWS Identity and Access ManagementAWS CloudFormation

Utilizzo della versione più recente

Gli script helper vengono aggiornati periodicamente. Se utilizzi gli script helper, assicurati che le istanze siano lanciate utilizzando la versione più recente degli script:

  • Includi il comando seguente nella proprietà UserData del modello prima di chiamare gli script. Questo comando garantisce l'utilizzo della versione più recente:

    yum install -y aws-cfn-bootstrap

  • Se non includi il yum install comando e utilizzi cfn-get-metadata gli script cfn-initcfn-signal,, o, dovrai aggiornare manualmente gli script in ogni istanza di Amazon EC2 Linux utilizzando questo comando:

    sudo yum install -y aws-cfn-bootstrap

    Nota

    L'esecuzione di sudo yum install -y aws-cfn-bootstrap consente di installare gli script helper dal repository yum.

  • Se non includi il yum install comando e utilizzi lo cfn-hup script, dovrai aggiornare manualmente lo script in ogni istanza di Amazon EC2 Linux utilizzando questi comandi:

    sudo yum install -y aws-cfn-bootstrap

    sudo /sbin/service cfn-hup restart

    Nota

    L'esecuzione di sudo yum install -y aws-cfn-bootstrap consente di installare gli script helper dal repository yum.

  • Se utilizzi il codice sorgente per gli script in modo che funzionino con un'altra versione di Linux o un'altra piattaforma e hai creato l'archivio di trust del certificato, dovrai anche mantenere l'archivio aggiornato.

Per la cronologia delle versioni del aws-cfn-bootstrap pacchetto, consultaCronologia delle versioni degli AWS CloudFormation script di supporto.