Passer de gcutil à gcloud compute


L'outil gcloud compute étant désormais en disponibilité générale, Compute Engine recommande à tous les utilisateurs de passer de gcloud compute à gcutil. gcloud compute est un outil de ligne de commande unifié qui présente un certain nombre d'améliorations par rapport à gcutil, telles que les suivantes :

  • Complétion par tabulation
  • Mise à niveau sur place
  • Aide approfondie de type page de manuel
  • Choix de différents formats de sortie

Afin d'aider les utilisateurs à passer de gcutil à gcloud compute, ce guide décrit brièvement les principaux changements entre les deux outils. gcloud compute.gcloud compute

Nouvelles commandes gcloud

Toutes les commandes gcutil existantes disposent d'un équivalent dans l'outil gcloud compute, à quelques exceptions près. Vous pouvez obtenir la liste complète des commandes gcloud en consultant les pages de référence ou en exécutant gcloud compute --help. Le tableau ci-dessous décrit brièvement les modifications apportées aux commandes gcutil les plus fréquemment utilisées.

Commande gcutil Commande gcloud compute
gcutil addinstance INSTANCE
gcloud compute instances create INSTANCE
Remarques

Crée une instance.

  • Une zone/région par défaut peut être définie, sans quoi gcloud compute demande à ce qu'une zone/région soit définie.
  • Crée des machines virtuelles avec les propriétés par défaut, telles que les suivantes :
    • Type de machine : n1-standard-1
    • Image : debian-10

Consultez la section Créer et démarrer une instance.

Commande gcutil Commande gcloud compute
gcutil deleteinstance INSTANCE
gcloud compute instances delete INSTANCE \
       [--keep-disks {boot,all,none}]
Remarques

Supprime des instances. Consultez la section Supprimer une instance.

Commande gcutil Commande gcloud compute
gcutil ... --cache_flag_values
gcloud configs set project PROJECT
gcloud configs set compute/zone ZONE
gcloud configs set compute/region REGION
Remarques

Définit les valeurs par défaut relatives au projet, à la zone et à la région. Consultez la section Définir une zone et une région par défaut.

Commande gcutil Commande gcloud compute
gcutil push/pull
gcloud compute scp
Remarques

Copie des fichiers entre un ordinateur local et une machine virtuelle. Consultez Transférer des fichiers à l'aide de Google Cloud CLI.

Commande gcutil Commande gcloud compute
gcutil deleteRESOURCE
gcloud compute RESOURCES delete
Remarques

Supprime des ressources, par exemple :

gcloud compute instances delete example-instance
Commande gcutil Commande gcloud compute
gcutil getRESOURCES
gcloud compute RESOURCES describe
Remarques

Décrit une ressource spécifique, par exemple :

gcloud compute instances describe example-instance

Commande gcutil Commande gcloud compute
gcutil listRESOURCES
gcloud compute RESOURCES list
Remarques

Liste toutes les ressources d'un type donné. Par exemple, pour répertorier les instances :

gcloud compute instances list

Commande gcutil Commande 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
Remarques

L'outil assure lui-même qu'une seule mise à jour puisse être effectuée à la fois, il n'est donc pas nécessaire de spécifier une empreinte manuellement. Consultez la section Définir des métadonnées d'instance personnalisées.

Commande gcutil Commande gcloud compute
gcutil … --dump_request_response

Pas encore disponible

Commande gcutil Commande gcloud compute
gcutil … --log_level=DEBUG
gcloud … --verbosity debug
Remarques

En outre, les journaux sont stockés dans des fichiers pour chaque commande dans ~/.config/gcloud/logs.

Commande gcutil Commande gcloud compute
gcutil ssh INSTANCE --ssh_user
gcloud compute ssh USER@INSTANCE
Remarques

Consultez la section Se connecter à une instance.

Commande gcutil Commande gcloud compute
gcutil … \
--image=projects/project-id/global/images/image
gcloud compute … --image image-name \
       --image-project image-project
Remarques

Consultez la section Démarrer une instance à partir d'une image.

Commande gcutil Commande 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}
Remarques

Si un disque est marqué pour suppression automatique, il sera automatiquement supprimé sauf indication contraire à l'aide de l'indicateur --keep-disks.

Paramètres par défaut des instances

La création d'une instance dans gcloud compute propose maintenant plusieurs valeurs par défaut pour l'image et le type de machine de votre machine virtuelle. Vous pouvez choisir d'utiliser ces valeurs par défaut en omettant les indicateurs --image et --machine-type, ou remplacer ces paramètres par les indicateurs appropriés. Les paramètres de machine virtuelle par défaut sont les suivants :

  • Image par défaut : dernière image debian-10
  • Type de machine par défaut : n1-standard-1

Par exemple, vous pouvez simplement exécuter :

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

Et gcloud compute crée l'instance en utilisant l'image et le type de machine décrits ci-dessus.

Format de sortie

Le format de sortie par défaut varie désormais en fonction de la commande que vous exécutez. Par exemple, si vous exécutez la commande describe pour obtenir des informations sur une ressource spécifique, la réponse sera au format YAML. Vous pouvez cependant choisir le format de sortie dans lequel la réponse sera renvoyée, par exemple JSON ou le format texte, à l'aide de l'indicateur --format :

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

Mise à jour des métadonnées désormais additive

Lors de la définition ou de la mise à jour de métadonnées, vous n'avez plus besoin de fournir d'empreinte. Par défaut, tous les changements de métadonnées sont considérés comme étant additifs. Vous pouvez ajouter des entrées de métadonnées uniques ou mettre à jour des entrées sans effectuer de mise à jour par lot de toutes les métadonnées. Seules les clés de métadonnées transmises seront mutées.

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

Spécifier des projets d'image

Auparavant, pour spécifier une image exacte, vous deviez fournir un URI d'image partielle incluant le nom du projet, comme ci-dessous :

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

Dans gcloud compute, vous devez maintenant spécifier le projet d'image à l'aide d'un nouvel indicateur --image-project :

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

Vous pouvez également fournir l'URI complet :

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