Activer les affichages virtuels sur une VM


Ce document explique comment activer ou désactiver les écrans virtuels sur une instance de machine virtuelle (VM).

Si une application exécutée sur votre VM nécessite un appareil d'affichage, mais que vous n'avez pas besoin des performances d'un GPU, configurez votre VM pour qu'elle utilise des appareils d'affichage virtuels. En activant les affichages virtuels sur une VM, vous pouvez exécuter des appareils d'affichage virtuels sur la VM, tels que des outils de gestion système à distance, des logiciels de bureau à distance et la capture d'écran.

Avant de commencer

  • Si ce n'est pas déjà fait, configurez l'authentification. L'authentification est le processus permettant de valider votre identité pour accéder aux services et aux API Google Cloud. Pour exécuter du code ou des exemples depuis un environnement de développement local, vous pouvez vous authentifier auprès de Compute Engine en sélectionnant l'une des options suivantes:

    Select the tab for how you plan to use the samples on this page:

    Console

    When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.

    gcloud

    1. Install the Google Cloud CLI, then initialize it by running the following command:

      gcloud init
    2. Set a default region and zone.
    3. Terraform

      Pour utiliser les exemples Terraform de cette page dans un environnement de développement local, installez et initialisez gcloud CLI, puis configurez le service Identifiants par défaut de l'application à l'aide de vos identifiants utilisateur.

      1. Install the Google Cloud CLI.
      2. To initialize the gcloud CLI, run the following command:

        gcloud init
      3. If you're using a local shell, then create local authentication credentials for your user account:

        gcloud auth application-default login

        You don't need to do this if you're using Cloud Shell.

      Pour en savoir plus, consultez Set up authentication for a local development environment.

      REST

      Pour utiliser les exemples d'API REST de cette page dans un environnement de développement local, vous devez utiliser les identifiants que vous fournissez à gcloud CLI.

        Install the Google Cloud CLI, then initialize it by running the following command:

        gcloud init

      Pour en savoir plus, consultez la section S'authentifier pour utiliser REST dans la documentation sur l'authentification Google Cloud.

Rôles requis

Pour obtenir les autorisations nécessaires pour activer ou désactiver les affichages virtuels sur une VM, demandez à votre administrateur de vous accorder le rôle IAM Administrateur d'instances Compute (v1) (roles/compute.instanceAdmin.v1) sur le projet. Pour en savoir plus sur l'attribution de rôles, consultez la page Gérer l'accès aux projets, aux dossiers et aux organisations.

Ce rôle prédéfini contient les autorisations requises pour activer ou désactiver les affichages virtuels sur une VM. Pour connaître les autorisations exactes requises, développez la section Autorisations requises :

Autorisations requises

Les autorisations suivantes sont requises pour activer ou désactiver les affichages virtuels sur une VM :

  • Pour activer ou désactiver les affichages virtuels sur une VM existante : compute.instances.updateDisplayDevice sur la VM
  • Pour créer une VM avec l'affichage virtuel activé :
    • compute.instances.create sur le projet
    • Pour créer la VM à l'aide d'une image personnalisée : compute.images.useReadOnly sur l'image
    • Pour créer la VM à l'aide d'un instantané : compute.snapshots.useReadOnly sur l'instantané
    • Pour créer la VM à l'aide d'un modèle d'instance : compute.instanceTemplates.useReadOnly sur le modèle d'instance
    • Pour attribuer un ancien réseau à la VM : compute.networks.use sur le projet
    • Pour spécifier une adresse IP statique pour la VM : compute.addresses.use sur le projet
    • Pour attribuer une adresse IP externe à la VM, en cas d'utilisation d'un ancien réseau : compute.networks.useExternalIp sur le projet
    • Pour spécifier un sous-réseau pour la VM : compute.subnetworks.use sur le projet ou sur le sous-réseau choisi
    • Pour attribuer une adresse IP externe à la VM, en cas d'utilisation d'un réseau VPC : compute.subnetworks.useExternalIp sur le projet ou sur le sous-réseau choisi
    • Pour définir les métadonnées d'instance de VM pour la VM : compute.instances.setMetadata sur le projet
    • Pour définir des tags pour la VM : compute.instances.setTags sur la VM
    • Pour définir des libellés pour la VM : compute.instances.setLabels sur la VM
    • Pour définir un compte de service à utiliser avec la VM : compute.instances.setServiceAccount sur la VM
    • Pour créer un disque pour la VM : compute.disks.create sur le projet
    • Pour associer un disque existant en mode lecture seule ou en mode lecture-écriture : compute.disks.use sur le disque
    • Pour associer un disque existant en mode lecture seule : compute.disks.useReadOnly sur le disque

Vous pouvez également obtenir ces autorisations avec des rôles personnalisés ou d'autres rôles prédéfinis.

Tarifs

L'activation ou la désactivation d'affichages virtuels sur une VM n'engendre aucuns frais.

Restrictions

Pour les VM avec affichages virtuels activés, les limites suivantes s'appliquent :

  • Si votre VM exécute une image d'OS Windows x64 antérieure à la version v20190312, installez le pilote d'affichage virtuel après avoir activé les affichages virtuels sur la VM, comme décrit dans ce document. Si votre VM exécute une version ultérieure de l'image de l'OS, le pilote est déjà installé sur l'image de l'OS.

  • Vous ne pouvez utiliser un appareil d'affichage virtuel sur la VM qu'après le démarrage de l'OS invité et l'initialisation du pilote d'affichage virtuel.

  • Vous ne pouvez pas utiliser d'appareils d'affichage virtuels sur les VM exécutant la plate-forme de processeur Sandy Bridge.

  • Vous ne pouvez pas utiliser d'appareils d'affichage virtuels sur les VM T2A Arm.

Activer les affichages virtuels sur une VM

Pour activer les affichages virtuels sur une VM, sélectionnez l'une des méthodes décrites dans ce document :

Si votre VM exécute une image d'OS Windows x64 antérieure à la version v20190312, installez le pilote d'affichage virtuel après avoir activé les affichages virtuels sur la VM, comme décrit dans ce document.

Créez une VM avec l'affichage virtuel activé.

Pour créer une VM avec l'affichage virtuel activé, sélectionnez l'une des options suivantes :

Console

  1. Accédez à la page Créer une instance dans Google Cloud Console.

    Accéder à la page Créer une instance

  2. Spécifiez les propriétés de la VM, y compris le nom, la zone et le type de machine.

  3. Dans la section Appareil d'affichage, cochez la case Activer l'appareil d'affichage.

  4. Pour créer la VM, cliquez sur Créer.

gcloud

Pour créer une VM avec l'affichage virtuel activé, utilisez la commande gcloud compute instances create avec l'indicateur --enable-display-device.

gcloud compute instances create VM_NAME \
    --enable-display-device \
    --machine-type=MACHINE_TYPE \
    --zone=ZONE

Remplacez les éléments suivants :

  • VM_NAME : Nom de la VM.

  • MACHINE_TYPE : type de machine à utiliser pour la VM.

  • ZONE : Zone dans laquelle créer l'instance de VM.

Terraform

Pour créer une VM avec l'affichage virtuel activé, utilisez la ressource Terraform avec l'argument enable_display défini sur true.

Par exemple, pour créer une VM dans la zone us-central1-c avec l'affichage virtuel activé et spécifier f1-micro comme type de machine, utilisez la ressource suivante :


resource "google_compute_instance" "instance_virtual_display" {
  name         = "instance-virtual-display"
  machine_type = "f1-micro"
  zone         = "us-central1-c"

  # Set the below to true to enable virtual display
  enable_display = true

  boot_disk {
    initialize_params {
      image = "debian-cloud/debian-11"
    }
  }
  network_interface {
    # A default network is created for all GCP projects
    network = "default"
    access_config {
    }
  }
}

REST

Pour créer une VM avec l'affichage virtuel activé, envoyez une requête POST à la méthode instances.insert. Dans le corps de la requête, incluez le champ enableDisplay défini sur true.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances

{
  "name": "VM_NAME",
  "machineType": "zones/ZONE/machineTypes/MACHINE_TYPE",
  "disks": [
    {
      "boot": true,
      "initializeParams": {
        "sourceImage": "project/IMAGE_PROJECT/global/images/IMAGE"
      }
    }
  ],
  "displayDevice": {
    "enableDisplay": true
  },
  "networkInterfaces": [
    {
      "network": "global/networks/default"
    }
  ]
}

Remplacez les éléments suivants :

  • PROJECT_ID : ID du projet dans lequel la VM sera créée.

  • ZONE : Zone dans laquelle créer l'instance de VM.

  • VM_NAME : Nom de la VM.

  • MACHINE_TYPE : type de machine à utiliser pour la VM.

  • IMAGE_PROJECT : projet d'image contenant l'image d'OS ; par exemple, debian-cloud. Pour en savoir plus sur les projets d'image compatibles, consultez la page Images publiques.

  • IMAGE : spécifiez l'une des options suivantes :

    • Version spécifique de l'image de l'OS. Exemple : debian-12-bookworm-v20240617

    • Une famille d'images, qui doit être au format family/IMAGE_FAMILY. Cela permet de spécifier l'image d'OS non obsolète la plus récente. Par exemple, si vous spécifiez family/debian-12, la dernière version de la famille d'images Debian 12 est utilisée. Pour en savoir plus sur l'utilisation des familles d'images, consultez la page Bonnes pratiques concernant les familles d'images.

Pour en savoir plus sur la création d'une VM, consultez la section Créer et démarrer une instance Compute Engine.

Activer les affichages virtuels sur une VM existante

Avant d'activer les affichages virtuels sur une VM, veillez à arrêter la VM.

Pour activer les affichages virtuels sur une VM existante, sélectionnez l'une des options suivantes :

Console

  1. Dans Google Cloud Console, accédez à la page Instances de VM.

    Accéder à la page "Instances de VM"

  2. Dans la colonne Nom, cliquez sur le nom de la VM.

    La page d'informations de la VM s'affiche.

  3. Cliquez sur Modifier.

    La page permettant de modifier les propriétés de la VM s'ouvre.

  4. Dans la section Appareil d'affichage, cochez la case Activer l'appareil d'affichage.

  5. Cliquez sur Enregistrer.

gcloud

Pour activer l'affichage virtuel sur une VM existante, exécutez la commande gcloud compute instances update avec l'indicateur --enable-display-device.

gcloud compute instances update VM_NAME \
    --enable-display-device \
    --zone=ZONE

Remplacez les éléments suivants :

  • VM_NAME : Nom de la VM.

  • ZONE : zone où se trouve la VM.

REST

Pour activer les affichages virtuels sur une VM existante, envoyez une requête POST à la méthode instances.updateDisplayDevice. Dans le corps de la requête, incluez le champ enableDisplay et définissez-le sur true.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/updateDisplayDevice

{
  "enableDisplay": true
}

Remplacez les éléments suivants :

  • PROJECT_ID : ID du projet dans lequel se trouve la VM.

  • ZONE : zone où se trouve la VM.

  • VM_NAME : Nom de la VM.

Désactiver les affichages virtuels sur une VM existante

Avant de désactiver les affichages virtuels sur une VM, veillez à arrêter la VM.

Pour désactiver les affichages virtuels sur une VM existante, sélectionnez l'une des options suivantes :

Console

  1. Dans Google Cloud Console, accédez à la page Instances de VM.

    Accéder à la page "Instances de VM"

  2. Dans la colonne Nom, cliquez sur le nom de la VM.

    La page d'informations de la VM s'affiche.

  3. Cliquez sur Modifier.

    La page permettant de modifier les propriétés de la VM s'ouvre.

  4. Dans la section Appareil d'affichage, décochez la case Activer l'appareil d'affichage.

  5. Cliquez sur Enregistrer.

gcloud

Pour désactiver les affichages virtuels sur une VM existante, exécutez la commande gcloud compute instances update avec l'indicateur --no-enable-display-device.

gcloud compute instances update VM_NAME \
    --no-enable-display-device \
    --zone=ZONE

Remplacez les éléments suivants :

  • VM_NAME : Nom de la VM.

  • ZONE : zone où se trouve la VM.

REST

Pour désactiver les affichages virtuels sur une VM existante, envoyez une requête POST à la méthode instances.updateDisplayDevice. Dans le corps de la requête, incluez le champ enableDisplay et définissez-le sur false.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/updateDisplayDevice

{
  "enableDisplay": false
}

Remplacez les éléments suivants :

  • PROJECT_ID : ID du projet dans lequel se trouve la VM.

  • ZONE : zone où se trouve la VM.

  • VM_NAME : Nom de la VM.

Installer le pilote d'affichage virtuel

Si vous avez activé les affichages virtuels sur une VM Windows qui exécute une image d'OS Windows antérieure à la version v20190312, vous devez installer le pilote d'affichage virtuel fourni par Google Cloud pour utiliser un appareil d'affichage virtuel sur la VM. Si la VM exécute une version plus récente de l'image d'OS, le pilote est déjà installé et vous pouvez ignorer cette section.

Pour installer le pilote d'affichage virtuel sur une VM avec des affichages virtuels activés, procédez comme suit :

  1. Connectez-vous à la VM Windows.

  2. Ouvrez un terminal PowerShell en tant qu'administrateur.

  3. Installez le composant google-compute-engine-driver-gga :

    googet install google-compute-engine-driver-gga
    
  4. Redémarrez la VM.

Après avoir redémarré la VM, vous pouvez vérifier que le pilote a été correctement installé, comme décrit dans la section suivante.

Vérifier l'installation du pilote d'affichage virtuel

Si vous avez dû installer manuellement le pilote d'affichage virtuel sur une VM Windows, comme décrit dans la section précédente, vous pouvez vérifier que l'installation a réussi en procédant comme suit :

  1. Si ce n'est pas déjà fait, connectez-vous à la VM Windows.

  2. Ouvrez le Gestionnaire d'appareils.

  3. Dans la liste Device Manager (Gestionnaire d'appareils), dans la liste Display adapters (Cartes graphiques), vérifiez que le pilote Google Graphics Array (GGA) est répertorié.

    Si le pilote n'est pas listé, réinstallez le pilote d'affichage virtuel comme décrit dans ce document.

Étape suivante