Obtener vista previa de una configuración

En esta página se describe cómo obtener una vista previa de un archivo de configuración antes de crear una implementación. Para obtener más información sobre la configuración, consulta Descripción general de la configuración.

Una vez que escribiste un archivo de configuración, puedes obtener una vista previa de la configuración antes de crear una implementación. La vista previa de la configuración te permite ver los recursos que Deployment Manager creará, pero sin iniciar realmente los recursos. Para obtener una vista previa de la configuración, el servicio de Deployment Manager hace lo siguiente:

  1. Expande la configuración completa, incluidas todas las plantillas.
  2. Crea una implementación y recursos "shell".

Para obtener una vista previa de tu configuración, utiliza el parámetro de consulta preview cuando realices una solicitud insert().

Antes de comenzar

Obtener una vista previa de una nueva configuración

Para obtener una vista previa de la configuración, usa la herramienta de línea de comandos de gcloud o realiza una solicitud directa a la API.

gcloud

Con la herramienta de línea de comandos de gcloud, utiliza el subcomando create con la marca --preview:

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

El servidor muestra una lista de recursos cuyo estado es IN_PREVIEW para que los revises:

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

En la API, utiliza el método insert() con un cuerpo de solicitud que contenga campos target y name, y el parámetro de consulta preview=true. Proporciona tu configuración en el campo target.

Por ejemplo, en la siguiente solicitud a la API se ve la vista previa de una plantilla simple:

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

{
 "name": "example-deployment",
 "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"
   }
  }
}

Cuando una implementación está en modo de vista previa, puedes avanzar con la implementación de una de las siguientes tres maneras:

Realizar varias vistas previas

Si deseas realizar cambios en tu configuración y obtener otra vista previa, utiliza el comando update con la marca --preview:

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

En la API, crea una solicitud de PUT() con una implementación existente y provee un parámetro de consulta de preview=true. La solicitud debe contener los campos intent, target y name. Por ejemplo, en la siguiente solicitud a la API se ve la vista previa de una actualización simple:

PUT https://www.googleapis.com/deploymentmanager/v2/projects/myproject/global/deployments/example-deployment?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-deployment"
}

Implementar o cancelar una vista previa

Luego de previsualizar una implementación, puedes avanzar con la implementación; para ello, realiza una actualización y confirma la configuración. Por ejemplo, supone que tienes una implementación llamada example-config actualmente en modo de vista previa. Puedes avanzar con la implementación mediante la ejecución del siguiente comando:

gcloud deployment-manager deployments update example-config

Deployment Manager utilizará la última configuración cuya vista previa viste para crear una nueva implementación.

Por otro lado, también puedes cancelar la vista previa y luego borrar la implementación, si no deseas avanzar con la configuración:

gcloud deployment-manager deployments cancel-preview example-config

Cuando una implementación está en modo de vista previa, no puedes avanzar con otra configuración. Por ejemplo, supón que tienes una implementación llamada example-deployment en modo de vista previa y con una configuración llamada vm.yaml. Decides que quieres implementar una nueva configuración llamada two_vm.yaml en la misma implementación, y omites el proceso de vista previa. Si bien example-deployment todavía está en modo de vista previa, no puedes implementar una nueva configuración. Primero debes cancelar la vista previa y entonces actualizar la implementación con la nueva configuración.

Pasos siguientes

¿Te ha resultado útil esta página? Enviar comentarios:

Enviar comentarios sobre...

Documentación de Cloud Deployment Manager