Anteprima di una configurazione

Questa pagina descrive come visualizzare l'anteprima di un file di configurazione prima di creare un deployment. Per scoprire di più sulle configurazioni, consulta la Panoramica delle configurazioni.

Dopo aver scritto un file di configurazione, puoi visualizzare l'anteprima della configurazione prima di creare un deployment. L'anteprima di una configurazione consente di visualizzare le risorse che Deployment Manager creerebbe, ma non le esegue effettivamente. Il servizio Deployment Manager mostra l'anteprima della configurazione:

  1. Espansione della configurazione completa, inclusi eventuali modelli.
  2. Creazione di un deployment e di risorse "shell".

Puoi visualizzare l'anteprima della configurazione utilizzando il parametro di query preview quando effettui una richiesta insert().

Prima di iniziare

Anteprima di una nuova configurazione

Visualizza l'anteprima di una configurazione utilizzando Google Cloud CLI o inviando una richiesta diretta all'API.

gcloud

Se utilizzi Google Cloud CLI, utilizza il sottocomando create con il flag --preview:

gcloud deployment-manager deployments create example-config --config configuration-file.yaml \
     --preview

Il server restituisce un elenco di risorse il cui stato è IN_PREVIEW da esaminare:

The fingerprint of the deployment is ulPDrJON8E5ySHKC5fcukw==
Waiting for create [operation-1492785372594-54dae2ddbff50-58d45d53-12d483cf]...done.
Create operation operation-1492785372594-54dae2ddbff50-58d45d53-12d483cf completed successfully.
NAME                      TYPE                 STATE       ERRORS  INTENT
datadisk-example  compute.v1.disk      IN_PREVIEW  []      CREATE_OR_ACQUIRE
vm-example        compute.v1.instance  IN_PREVIEW  []      CREATE_OR_ACQUIRE

API

Nell'API, utilizza il metodo insert() con un corpo della richiesta contenente i campi target e name e il parametro di query preview=true. Fornisci la configurazione nel target campo.

Ad esempio, la seguente richiesta API mostra l'anteprima di un semplice modello:

POST https://www.googleapis.com/deploymentmanager/v2/projects/myproject/global/deployments?preview=true

{
 "name": "example-config",
 "target": {
  "config": {
    "content":  "resources:\n- name: vm-created-by-cloud-config\n  type: compute.v1.instance\n  properties:\n    zone: us-central1-a\n    machineType: https://www.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/machineTypes/n1-standard-1\n    disks:\n    - deviceName: boot\n      type: PERSISTENT\n      boot: true\n      autoDelete: true\n      initializeParams:\n        diskName: disk-created-by-cloud-config\n        sourceImage: https://www.googleapis.com/compute/v1/projects/debian-cloud/global/images/debian-7-wheezy-v20140619\n    networkInterfaces:\n    networkInterfaces:\n    - network: https://www.googleapis.com/compute/v1/projects/myproject/global/networks/default"
   }
  }
}

Quando un deployment è in modalità di anteprima, puoi procedere con il deployment in uno di tre modi:

Eseguire più anteprime

Se vuoi modificare la configurazione ed eseguire un'altra anteprima, utilizza il comando update con il flag --preview:

gcloud deployment-manager deployments update example-config \
    --config new-config.yaml --preview

Nell'API, effettua una richiesta PUT() con un deployment esistente e fornisci il parametro di query preview=true. Il corpo della richiesta deve contenere i campi intent, target e name. Ad esempio, la seguente richiesta API mostra l'anteprima di un semplice aggiornamento:

PUT https://www.googleapis.com/deploymentmanager/v2/projects/myproject/global/deployments/example-config?preview=true

{
 "target": {
  "config": {
   "content": "resources:\n- name: vm-created-by-cloud-config\n  type: compute.v1.instance\n  properties:\n    zone: us-central1-a\n    machineType: https://www.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/machineTypes/n1-standard-1\n    disks:\n    - deviceName: boot\n      type: PERSISTENT\n      boot: true\n      autoDelete: true\n      initializeParams:\n        diskName: disk-created-by-cloud-config\n        sourceImage: https://www.googleapis.com/compute/v1/projects/debian-cloud/global/images/debian-7-wheezy-v20140619\n    networkInterfaces:\n    - network: https://www.googleapis.com/compute/v1/projects/myproject/global/networks/default"
  }
 },
 "name": "example-config"
}

Eseguire il deployment o annullare un'anteprima

Dopo aver visualizzato l'anteprima di un deployment, puoi procedere con l'esecuzione di un aggiornamento e l'applicazione della configurazione. Ad esempio, supponiamo di avere un deployment denominato example-config attualmente in modalità di anteprima. Puoi procedere con il deployment eseguendo il seguente comando:

gcloud deployment-manager deployments update example-config

Deployment Manager utilizza l'ultima configurazione visualizzata in anteprima per creare un deployment.

In alternativa, se non vuoi procedere con la configurazione, puoi annullare l'anteprima ed eliminare il deployment:

gcloud deployment-manager deployments cancel-preview example-config

Mentre un deployment è in modalità di anteprima, non puoi procedere con un'altra configurazione. Ad esempio, supponiamo che tu abbia un deployment chiamato example-config in modalità di anteprima che utilizza una configurazione denominata vm.yaml. Decidi di eseguire il deployment di una nuova configurazione denominata two_vms.yaml nello stesso deployment, saltando la procedura di anteprima. Mentre example-config è ancora in modalità di anteprima, non puoi eseguire il deployment di una nuova configurazione. Annullare l'anteprima e poi aggiornare il deployment con la nuova configurazione.

Passaggi successivi