Creazione di un deployment mediante gcloud o API

Questa pagina descrive come creare un deployment. Un deployment è un' istanza di un insieme di risorse definite in una configurazione. Fornisci una configurazione valida nella richiesta per creare il deployment. Un deployment può contenere un numero di risorse, in una varietà di Google Cloud servizi. Quando crei un deployment, Deployment Manager crea tutte le risorse descritte nelle rispettive Google Cloud API.

Prima di iniziare

  • Se vuoi utilizzare gli esempi di riga di comando in questa guida, installa lo strumento a riga di comando `gcloud`.
  • Se vuoi utilizzare gli esempi di API in questa guida, configura l'accesso alle API.
  • Crea una configurazione.

Creazione di un deployment

Quando crei un deployment, crei una risorsa di tipo Deployment che contiene una raccolta di risorse. Ogni risorsa è definita in modo esplicito in una configurazione che fornisci nella richiesta.

gcloud

Con Google Cloud CLI, utilizza il comando deployments create:

gcloud deployment-manager deployments create my-first-deployment \
    --config vm.yaml

Il flag --config è un percorso relativo al file di configurazione YAML.

Per impostazione predefinita, se la configurazione include risorse già presenti nel progetto, queste vengono acquisite dal deployment e possono essere gestite utilizzando il deployment. Se non vuoi acquisire una risorsa, devi utilizzare l'opzione --create-policy, come nel seguente comando gcloud beta:

gcloud beta deployment-manager deployments create my-first-deployment \
    --config vm.yaml --create-policy CREATE

Per informazioni sulle policy che puoi utilizzare quando crei i deployment, consulta Impostare la policy per la creazione delle risorse.

Se il deployment viene creato correttamente, puoi ottenere una descrizione del deployment:

gcloud deployment-manager deployments describe my-first-deployment

API

Nell'API, effettua una insert() richiesta con la configurazione fornita in linea, nel corpo della richiesta:

POST https://www.googleapis.com/deploymentmanager/v2/projects/myproject/global/deployments

{
 "name": "example-config-with-templates",
 "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-v20151104\n    networkInterfaces:\n    - network: https://www.googleapis.com/compute/v1/projects/myproject/global/networks/default\n"