Transizione da gcutil a gcloud compute

Con gcloud compute in disponibilità generale, Compute Engine consiglia a tutti gli utenti di passare allo strumento gcloud compute da gcutil. gcloud compute è uno strumento a riga di comando unificato che presenta una serie di miglioramenti rispetto a gcutil, tra cui:

  • Completamento Tab
  • Upgrade in loco
  • Guida dettagliata per lo stile della pagina man
  • Scelta di diversi formati di output

Per aiutare gli utenti nella transizione da gcutil a gcloud compute, questa guida descrive brevemente i principali cambiamenti tra i due strumenti. Per una descrizione dettagliata dello strumento gcloud compute, consulta la documentazione di gcloud compute.

Nuovi comandi gcloud

Tutti i comandi gcutil esistenti hanno comandi equivalenti nello strumento gcloud compute, con alcune eccezioni. Puoi ottenere un elenco completo dei comandi gcloud visitando le pagine di riferimento o eseguendo gcloud compute --help. La tabella seguente illustra brevemente le modifiche rispetto ai comandi gcutil più comuni.

Comando gcutil Comando gcloud compute

gcutil addinstance INSTANCE

gcloud compute instances create INSTANCE
Note

Crea un'istanza.

  • È possibile impostare una zona/regione predefinita, altrimenti "gcloud compute" richiede una zona/regione.
  • Crea macchine virtuali con proprietà predefinite, come:
    • tipo di macchina: n1-standard-1
    • immagine: debian-10

Vedi Creazione e avvio di un'istanza.

Comando gcutil Comando gcloud compute

gcutil deleteinstance INSTANCE

gcloud compute instances delete INSTANCE \
       [--keep-disks {boot,all,none}]
Note

Elimina le istanze. Vedi Eliminazione di un'istanza.

Comando gcutil Comando gcloud compute

gcutil ... --cache_flag_values

gcloud configs set project PROJECT
gcloud configs set compute/zone ZONE
gcloud configs set compute/region REGION
Note

Imposta i valori predefiniti per progetto, zona e regione. Consulta la sezione Impostare una zona e una regione predefinite.

Comando gcutil Comando gcloud compute

gcutil push/pull

gcloud compute scp
Note

Copia i file tra un computer locale e una macchina virtuale. Vedi Trasferire file utilizzando Google Cloud CLI.

Comando gcutil Comando gcloud compute

gcutil deleteRESOURCE

gcloud compute RESOURCES delete
Note

Elimina le risorse, ad esempio:


gcloud compute instances delete example-instance
Comando gcutil Comando gcloud compute

gcutil getRESOURCES

gcloud compute RESOURCES describe
Note

Descrive una singola risorsa, ad esempio:


gcloud compute instances describe example-instance

Comando gcutil Comando gcloud compute

gcutil listRESOURCES

gcloud compute RESOURCES list
Note

Elenca tutte le risorse di quel tipo. Ad esempio, per elencare le istanze:


gcloud compute instances list

Comando gcutil Comando gcloud compute

gcutil setmetadata

gcloud compute instances add-metadata
gcloud compute instances remove-metadata
gcloud compute project-info add-metadata
gcloud compute project-info remove-metadata
Note

Il blocco ottimistico viene ora eseguito dallo strumento, quindi non è necessario specificare manualmente un'impronta. Consulta Impostare i metadati di un'istanza personalizzata.

Comando gcutil Comando gcloud compute

gcutil … --dump_request_response

Non ancora disponibile.

Comando gcutil Comando gcloud compute

gcutil … --log_level=DEBUG

gcloud … --verbosity debug
Note

Inoltre, i log sono archiviati in file per ogni comando in ~/.config/gcloud/logs.

Comando gcutil Comando gcloud compute

gcutil ssh INSTANCE --ssh_user

gcloud compute ssh USER@INSTANCE
Note

Vedi Connessione a un'istanza.

Comando gcutil Comando gcloud compute

gcutil … \
--image=projects/project-id/global/images/image

gcloud compute … --image image-name \
       --image-project image-project
Note

Consulta la sezione Avviare un'istanza da un'immagine.

Comando gcutil Comando gcloud compute

gcutil deleteinstances --[no]delete_pd
gcutil deleteinstances --[no]delete_boot_pd

gcloud compute instances delete … \
       --delete-disks {all,none,boot}
gcloud compute instances delete … \
       --keep-disks {all,none,boot}
Note

Se un disco è contrassegnato per essere eliminato automaticamente, verrà eliminato automaticamente a meno che non venga specificato utilizzando il flag --keep-disks.

Impostazioni predefinite dell'istanza

Per la creazione di un'istanza in gcloud compute sono ora disponibili diversi valori predefiniti per l'immagine e il tipo di macchina della macchina virtuale. Puoi scegliere di utilizzare questi valori predefiniti omettendo i flag --image e --machine-type oppure puoi eseguire l'override delle impostazioni fornendo i flag appropriati. Le impostazioni predefinite della macchina virtuale sono:

  • Immagine predefinita: ultima immagine debian-10
  • Tipo di macchina predefinito: n1-standard-1

Ad esempio, puoi eseguire semplicemente:

gcloud compute instances create example-instance --zone us-central1-a

gcloud compute creerà l'istanza utilizzando l'immagine e il tipo di macchina descritti sopra.

Formattazione dell'output

La formattazione predefinita dell'output è cambiata e varia a seconda del comando che esegui. Ad esempio, se esegui il comando describe per ottenere informazioni su una singola risorsa, l'output della risposta sarà in formato YAML. Puoi restituire la risposta in diversi formati di output, come JSON o testo, utilizzando il flag --format:

gcloud compute instances list --format {json,yaml,text}

L'aggiornamento dei metadati è ora cumulativo

Quando imposti o aggiorni i metadati, non è più necessario fornire un'impronta. Per impostazione predefinita, tutte le modifiche ai metadati sono considerate cumulative. Puoi aggiungere singole voci di metadati o aggiornare voci senza eseguire un aggiornamento batch di tutti i metadati. Solo le chiavi dei metadati che vengono passate verranno modificate.

gcloud compute instances add-metadata example-instance \
         --metadata cookies=chocolate

Specifica dei progetti immagine

In precedenza, per specificare un'immagine esatta, dovevi fornire un URI dell'immagine parziale, che includeva il nome del progetto, ad esempio:

gcutil addinstance example-instance \
         --image=projects/debian-cloud/global/images/debian-9

In gcloud compute, ora devi specificare il progetto di immagini utilizzando un nuovo flag --image-project:

gcloud compute instances create example-instance \
         --image debian-9-stretch-vYYYMMDD
         --image-project debian-cloud

Puoi anche fornire l'URI completo:

gcloud compute instances create example-instance \
         --image https://compute.googleapis.com/compute/v1/projects/debian-cloud/global/images/debian-9-stretch-vYYYMMDD