Esta página descreve como pré-visualizar um ficheiro de configuração antes de criar uma implementação. Para saber mais sobre as configurações, leia o artigo Vista geral das configurações.
Depois de escrever um ficheiro de configuração, pode pré-visualizar a configuração antes de criar uma implementação. A pré-visualização de uma configuração permite-lhe ver os recursos que o Deployment Manager criaria, mas não instancia recursos reais. O serviço Deployment Manager pré-visualiza a configuração através do seguinte:
- Expandir a configuração completa, incluindo todos os modelos.
- Criar uma implementação e recursos de "shell".
Pode pré-visualizar a configuração através do parâmetro de consulta preview
quando
faz um pedido insert()
.
Antes de começar
- Se quiser usar os exemplos de linhas de comando neste guia, instale a ferramenta de linhas de comando`gcloud`.
- Se quiser usar os exemplos de API neste guia, configure o acesso à API.
- Compreenda como criar uma configuração básica.
Pré-visualizar uma nova configuração
Pré-visualize uma configuração através da CLI Google Cloud ou fazendo um pedido direto à API.
gcloud
Se estiver a usar a Google Cloud CLI, use o subcomando create
com a flag --preview
:
gcloud deployment-manager deployments create example-config --config configuration-file.yaml \
--preview
O servidor devolve uma lista de recursos cujo estado é IN_PREVIEW
para sua revisão:
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
Na API, use o método insert()
com um corpo do pedido que contenha os campos target
e name
e
o parâmetro de consulta preview=true
. Indique a sua configuração no campo target
.
Por exemplo, o seguinte pedido de API pré-visualiza um modelo simples:
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 uma implementação está no modo de pré-visualização, pode avançar com a implementação de uma das seguintes três formas:
- Implemente a configuração fazendo uma atualização.
- Cancelar a pré-visualização e, de seguida, eliminar a implementação.
- Atualize a pré-visualização.
Fazer várias pré-visualizações
Se quiser alterar a configuração e fazer outra pré-visualização,
use o comando update
com a flag --preview
:
gcloud deployment-manager deployments update example-config \
--config new-config.yaml --preview
Na API, faça um pedido PUT()
com uma implementação existente e forneça o parâmetro de consulta preview=true
. O corpo do pedido tem de conter os campos intent
, target
e name
. Por exemplo, o pedido de API seguinte pré-visualiza uma atualização simples:
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"
}
Implementar ou cancelar uma pré-visualização
Depois de pré-visualizar uma implementação, pode avançar com a implementação fazendo uma atualização e confirmando a configuração. Por exemplo, suponha que tem uma implementação denominada example-config atualmente no modo de pré-visualização. Pode avançar com a implementação executando o seguinte comando:
gcloud deployment-manager deployments update example-config
O Deployment Manager usa a configuração pré-visualizada mais recentemente para criar uma implementação.
Em alternativa, se não quiser continuar com a configuração, pode cancelar a pré-visualização e, em seguida, eliminar a implementação:
gcloud deployment-manager deployments cancel-preview example-config
Enquanto uma implementação estiver no modo de pré-visualização, não pode avançar com outra configuração. Por exemplo, suponha que tem uma implementação denominada example-config
que está no modo de pré-visualização a usar uma configuração denominada vm.yaml
. Decide que quer implementar uma nova configuração denominada
two_vms.yaml
na mesma implementação, ignorando o processo de pré-visualização. Enquanto o
example-config
estiver no modo de pré-visualização, não pode implementar uma nova configuração. Cancele a pré-visualização e, de seguida, atualize a implementação com a nova configuração.
O que se segue?
- Saiba mais sobre os ficheiros de configuração.
- Faça uma atualização à sua implementação depois de a implementar.