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 delle variabili di ambiente
Importante
Il AWS OpsWorks Stacks servizio ha raggiunto la fine del ciclo di vita il 26 maggio 2024 ed è stato disabilitato sia per i clienti nuovi che per quelli esistenti. Consigliamo vivamente ai clienti di migrare i propri carichi di lavoro verso altre soluzioni il prima possibile. Se hai domande sulla migrazione, contatta il Supporto AWS Team su AWS re:post
Nota
I suggerimenti riportati in questo argomento si applicano a Chef 11.10 e versioni precedenti di Chef. Per ottenere le variabili di ambiente in Chef 12 e nelle versioni più recenti, devi utilizzare il contenitore di dati dell'app. Per ulteriori informazioni, consulta AWS OpsWorks Data Bag Reference e App Data Bag (aws_opsworks_app).
I livelli personalizzati possono utilizzare una ricetta per recuperare il valore di una variabile utilizzando la sintassi standard di nodo e archiviarlo in un formato accessibile alle app del livello.
Devi implementare una ricetta personalizzata in grado di recuperare i valori delle variabili di ambiente dagli attributi deploy
dell'istanza. La ricetta può quindi archiviare i dati nell'istanza in un formato accessibile dall'applicazione, ad esempio un file YAML. Le definizioni delle variabili di ambiente di un'app vengono archiviate negli attributi deploy
, all'interno della variabile environment_variables
dell'app. L'esempio seguente mostra il percorso di questi attributi per un'app denominata simplephpapp
, utilizzando dati JSON per rappresentare la struttura degli attributi.
{ ... "ssh_users": { }, "deploy": { "simplephpapp": { "application": "simplephpapp", "application_type": "php", "environment_variables": { "USER_ID": "168424", "USER_KEY": "somepassword" }, ... } }
Una ricetta può recuperare i valori delle variabili utilizzando una sintassi standard di nodo. L'esempio seguente mostra come recuperare il valore USER_ID
dal precedente dato JSON e inserirlo nel log di Chef.
Chef::Log.info("USER_ID: #{node[:deploy]['simplephpapp'][:environment_variables][:USER_ID]}")
Per una descrizione più dettagliata di come recuperare informazioni dai dati JSON di configurazione e distribuzione dello stack e archiviarle nell'istanza, consulta Passaggio di dati alle applicazioni.