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 risorsa Amazon EC2 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 helper cfn-init viene in genere eseguito dai dati utente di un’istanza Amazon EC2 o di un modello di lancio.
Se non conosci l’utilizzo degli script di supporto, ti consigliamo di completare prima il tutorial Deploying applications on Amazon EC2 nella Guida per l’utente di AWS CloudFormation .
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
I seguenti esempi mostrano le proprietà UserData di un’istanza EC2, che esegue il set di configurazione InstallAndRun associato alla risorsa WebServerInstance.
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: Fn::Base64: !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 Guida per l’utente di AWS CloudFormation .
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