Questa è la nuova Guida di riferimento ai modelli CloudFormation. Aggiorna i segnalibri e i link. Per informazioni su come iniziare CloudFormation, consulta la Guida AWS CloudFormation per l'utente.
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à.
cfn-init
In un CloudFormation modello, puoi utilizzarlo AWS::CloudFormation::Init all'interno della Metadata sezione di una EC2 risorsa Amazon per definire le attività di inizializzazione. Per ulteriori informazioni, consulta AWS::CloudFormation::Init.
Lo script helper cfn-init legge i metadati del modello dalla chiave AWS::CloudFormation::Init e agisce di conseguenza per:
-
Recupera e analizza i metadati da CloudFormation
-
Installa i pacchetti
-
Scrivere file su disco
-
Servizi Enable/disable and start/stop
Lo script di cfn-init supporto viene in genere eseguito dai dati utente di un' EC2 istanza Amazon o di un modello di avvio.
Se non conosci l'utilizzo degli script di supporto, ti consigliamo di completare prima il EC2 tutorial Deploying applications on Amazon nella Guida per l'AWS CloudFormation utente.
Nota
Se utilizzi cfn-init per aggiornare un file esistente, crea una copia di backup del file originale nella stessa directory con un’estensione bak. Ad esempio, se aggiorni /, l’operazione genera due file: path/to/file_name/ racchiude i contenuti del file originale e path/to/file_name.bak/ racchiude i contenuti aggiornati.path/to/file_name
Sintassi
cfn-init --stack|-sstack.name.or.id\ --resource|-rlogical.resource.id\ --regionregion\ --access-keyaccess.key\ --secret-keysecret.key\ --rolerolename\ --credential-file|-fcredential.file\ --configsets|-cconfig.sets\ --url|-uservice.url\ --http-proxyHTTP.proxy\ --https-proxyHTTPS.proxy\ --verbose|-v
Nota
cfn-init non richiede credenziali, pertanto 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. Per ulteriori informazioni, consulta Autorizzazioni per gli script helper.
Opzioni
| Nome | Description | Richiesto |
|---|---|---|
|
|
Nome dello stack o ID stack. ▬Tipo: stringa Default: nessuna Esempio: |
Sì |
|
|
L’ID di risorsa logica della risorsa che contiene i metadati. ▬Tipo: stringa Esempio: |
Sì |
|
|
L'endpoint CloudFormation regionale da utilizzare. ▬Tipo: stringa Default: Esempio: |
No |
|
|
AWS chiave di accesso per un account con autorizzazione a chiamare ▬Tipo: stringa |
No |
|
|
AWS chiave di accesso segreta che corrisponde alla chiave di AWS accesso specificata. ▬Tipo: stringa |
No |
|
|
Il nome di un ruolo IAM associato all’istanza. ▬Tipo: stringa Condizione: il parametro del file delle credenziali sostituisce questo parametro. |
No |
|
|
Un file che contiene sia una chiave di accesso segreta sia una chiave di accesso. Il parametro del file delle credenziali sostituisce i parametri di ruolo, chiave di accesso e chiave segreta. ▬Tipo: stringa |
No |
|
|
Un elenco separato da virgole di set di configurazione da eseguire (in ordine). ▬Tipo: stringa Default: |
No |
|
|
L' CloudFormation endpoint da usare. ▬Tipo: stringa |
No |
|
|
Un proxy HTTP (non SSL). Utilizzare il seguente formato: ▬Tipo: stringa |
No |
|
|
Un proxy HTTPS. Utilizzare il seguente formato: ▬Tipo: stringa |
No |
|
|
Output verboso. Questa funzione è utile per il debug dei casi in cui NotaPer eseguire il debug di eventi di inizializzazione, devi attivare |
No |
|
Mostra il messaggio di aiuto ed esce. |
No |
Esempi
Esempi Amazon Linux
Gli esempi seguenti mostrano la UserData proprietà di un' EC2 istanza, che esegue il InstallAndRun set di configurazione associato alla WebServerInstance risorsa.
Per includere la versione più recente, aggiungi yum install -y aws-cfn-bootstrap a UserData.
JSON
Proprietà UserData utilizzando la funzione intrinseca Fn::Join.
{ "UserData": { "Fn::Base64": { "Fn::Join": [ "", [ "#!/bin/bash -xe\n", "", "yum install -y aws-cfn-bootstrap", "/opt/aws/bin/cfn-init -v ", " --stack ", { "Ref": "AWS::StackName" }, " --resource WebServerInstance ", " --configsets InstallAndRun ", " --region ", { "Ref": "AWS::Region" }, "\n" ] ] } } }
YAML
Proprietà UserData utilizzando la funzione intrinseca Fn::Sub.
UserData: !Base64 Fn::Sub: |- #!/bin/bash -xe yum update -y aws-cfn-bootstrap # Install the files and packages from the metadata /opt/aws/bin/cfn-init -v --stack ${AWS::StackName} --resource WebServerInstance --configsets InstallAndRun --region ${AWS::Region}
Risorse correlate
Per un tutorial con un modello di esempio, consulta Deploying applications on Amazon EC2 nella AWS CloudFormation User Guide.
Per un Windows esempio, consulta gli CloudFormation stack Windows basati su Bootstrap nella Guida per l'utente.AWS CloudFormation
Puoi anche visitare il nostro GitHub repository per scaricare i modelli di esempio che utilizziamocfn-init, inclusi i seguenti modelli.
Ad esempio, i modelli di stack LAMP che utilizzanocfn-init, vedi ec2-lamp-server