Vantaggi dei riferimenti

Puoi utilizzare i references per definire le proprietà della configurazione o dei modelli, anziché fornire direttamente i valori.

Con i riferimenti, puoi accedere a proprietà che non sono definite fino alla creazione della risorsa. Ad esempio, quando definisci una macchina virtuale (VM) nella configurazione, non ne conosci l'indirizzo IP. Tuttavia, puoi creare un riferimento all'indirizzo IP.

In questo passaggio, esaminerai un elemento two-vms.yaml aggiornato che contiene una rete, nonché le istanze VM che fanno riferimento alla rete.

Apertura della nuova configurazione

Apri un nuovo two-vms.yaml, che definisce una rete denominata a-new-network:

cd deploymentmanager-samples/examples/v2/step_by_step_guide/step4_use_references

nano two-vms.yaml  # use your preferred text editor

Visualizzare i riferimenti alla rete

Nella sezione properties di entrambe le istanze della macchina virtuale, tieni presente che il valore di network farà riferimento alla proprietà selfLink della nuova rete, pertanto la proprietà dell'interfaccia di rete sarà simile alla seguente:

networkInterfaces:
- network: $(ref.a-new-network.selfLink)

Deployment della configurazione

Nell'esempio, sostituisci tutte le istanze di MY_PROJECT con l'ID progetto, quindi esegui il deployment della configurazione con il seguente comando:

gcloud deployment-manager deployments create deployment-with-references --config two-vms.yaml

Per visualizzare il deployment, utilizza il comando seguente:

gcloud deployment-manager deployments describe deployment-with-references

In futuro: modelli e variabili

Per massimizzare l'efficienza quando crei configurazioni complesse, segui le best practice come l'utilizzo di variabili e modelli.

Nel passaggio successivo scoprirai i modelli e come consentono configurazioni flessibili e dinamiche.

Eliminazione del deployment

Ancora una volta, ti consigliamo di eliminare il deployment per evitare addebiti. Non è necessario questo deployment per il passaggio successivo. Esegui questo comando per eliminare il deployment:

gcloud deployment-manager deployments delete deployment-with-references