Un vantaggio dell'utilizzo dei modelli per il deployment è la possibilità di creare e definire proprietà personalizzate, che ti consentono di riutilizzare i modelli in zone, regioni e progetti.
Le proprietà del modello sono variabili arbitrarie. Qualsiasi file di configurazione o file modello può fornire un valore per una proprietà del modello senza modificarlo. Di conseguenza, puoi modificare il valore di una proprietà per varie configurazioni senza modificare il modello stesso.
Per fare riferimento a un valore arbitrario, utilizza questa sintassi in un modello:
context.properties["property-name"]
Oltre alle proprietà del modello, puoi utilizzare anche le variabili di ambiente specifiche per il tuo deployment, che sono precompilate con informazioni sul deployment. Puoi utilizzare le variabili di ambiente nei modelli per ottenere informazioni univoche sul tuo deployment.
Per chiamare una variabile di ambiente, utilizza questa sintassi:
context.env['variable-name']
Le variabili di ambiente valide includono il nome del deployment, l'ID progetto, la proprietà name della risorsa e il tipo di configurazione. Scopri di più sulle variabili di ambiente.
Proprietà del modello e variabili di ambiente in un modello
In questo passaggio, vm-template.py
mostra i vantaggi delle proprietà del modello e delle variabili di ambiente. Apri vm-template.py
:
cd deploymentmanager-samples/examples/v2/step_by_step_guide/step7_use_environment_variables/python
nano vm-template.py # use your preferred text editor
Diverse parti del modello sono state sostituite con proprietà del modello e variabili di ambiente. Ad esempio, l'ID progetto viene sostituito con
context.env[project]
, quindi non devi sostituire manualmente l'ID progetto nei
tuoi modelli.
I commenti nel file descrivono altre modifiche al modello.
Analogamente, network-template.py
e firewall-template.py
utilizzano il nome del deployment nella loro definizione chiamando context.env['name']
.
Deployment della configurazione
Per visualizzare il file di configurazione di questo deployment, esegui il comando seguente:
nano config-with-many-templates.yaml
Salva le modifiche e ridistribuisci la configurazione per verificare il funzionamento delle variabili.
gcloud deployment-manager deployments create deployment-with-template-properties --config config-with-many-templates.yaml
Eliminazione del deployment
Ti consigliamo di eliminare l'implementazione per evitare addebiti. Non hai bisogno di questo deployment per il passaggio successivo. Esegui questo comando per eliminare il deployment:
gcloud deployment-manager deployments delete deployment-with-template-properties
Prospettive future: script di supporto
Ora scopri gli script di supporto per eseguire in modo efficiente attività ripetute.