Abilita display virtuali su una VM


Questo documento descrive come attivare o disattivare i display virtuali su un'istanza di una macchina virtuale (VM).

Se un'applicazione in esecuzione sulla VM richiede un dispositivo di visualizzazione, ma che necessitano delle prestazioni di una GPU, quindi configura la VM per l'uso del display virtuale dispositivi mobili. Se attivi i display virtuali su una VM, puoi eseguire dispositivi di visualizzazione virtuale sulla VM, come strumenti di gestione del sistema remoto, software di desktop remoto e acquisizione di schermate.

Prima di iniziare

  • Se non l'hai già fatto, configura l'autenticazione. L'autenticazione è la procedura mediante la quale la tua identità viene verificata per l'accesso alle API e ai servizi Google Cloud. Per eseguire codice o esempi da un ambiente di sviluppo locale, puoi autenticarti su Compute Engine come segue.

    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

      Per utilizzare gli esempi di Terraform in questa pagina in un ambiente dell'ambiente di sviluppo, installare e inizializzare gcloud CLI quindi configura Credenziali predefinite dell'applicazione con le tue credenziali utente.

      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.

      Per ulteriori informazioni, vedi Set up authentication for a local development environment.

      REST

      Per utilizzare gli esempi di API REST in questa pagina in un ambiente di sviluppo locale, utilizzi le credenziali che fornisci a gcloud CLI.

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

        gcloud init

      Per ulteriori informazioni, vedi Esegui l'autenticazione per l'utilizzo di REST nella documentazione sull'autenticazione di Google Cloud.

Ruoli obbligatori

Per ottenere le autorizzazioni necessarie per abilitare o disabilitare le visualizzazioni virtuali su una VM, chiedi all'amministratore di concederti Ruolo IAM Amministratore istanze Compute (v1) (roles/compute.instanceAdmin.v1) nel progetto. Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso a progetti, cartelle e organizzazioni.

Questo ruolo predefinito contiene le autorizzazioni necessarie per abilitare o disabilitare le visualizzazioni virtuali su una VM. Per vedere le autorizzazioni esatte obbligatorie, espandi la sezione Autorizzazioni obbligatorie:

Autorizzazioni obbligatorie

Per attivare o disattivare i display virtuali su una VM sono necessarie le seguenti autorizzazioni:

  • Per attivare o disattivare i display virtuali su una VM esistente: compute.instances.updateDisplayDevice sulla VM
  • Per creare una VM con display virtuali abilitati:
    • compute.instances.create nel progetto
    • Per utilizzare un'immagine personalizzata per creare la VM: compute.images.useReadOnly sull'immagine
    • Per utilizzare uno snapshot per creare la VM: compute.snapshots.useReadOnly sullo snapshot
    • Per utilizzare un modello di istanza per creare la VM: compute.instanceTemplates.useReadOnly nel modello di istanza
    • Per assegnare una rete legacy alla VM,: compute.networks.use nel progetto
    • Per specificare un indirizzo IP statico per la VM: compute.addresses.use nel progetto
    • Per assegnare un indirizzo IP esterno alla VM quando utilizzi una rete legacy: compute.networks.useExternalIp nel progetto
    • Per specificare una subnet per la VM: compute.subnetworks.use nel progetto o nella subnet scelta
    • Per assegnare un indirizzo IP esterno alla VM quando utilizzi una rete VPC,: compute.subnetworks.useExternalIp nel progetto o nella subnet scelta
    • Per impostare i metadati dell'istanza VM per la VM: compute.instances.setMetadata nel progetto
    • Per impostare i tag per la VM: compute.instances.setTags sulla VM
    • Per impostare le etichette per la VM: compute.instances.setLabels sulla VM
    • Per impostare un account di servizio che la VM deve utilizzare: compute.instances.setServiceAccount sulla VM
    • Per creare un nuovo disco per la VM: compute.disks.create nel progetto
    • Per collegare un disco esistente in modalità di sola lettura o di lettura e scrittura: compute.disks.use sul disco
    • Per collegare un disco esistente in modalità di sola lettura: compute.disks.useReadOnly sul disco

Potresti anche riuscire a ottenere queste autorizzazioni con ruoli personalizzati altri ruoli predefiniti.

Prezzi

Non sono previsti costi associati all'attivazione o alla disattivazione di display virtuali su VM.

Limitazioni

Per le VM con display virtuali abilitati, si applicano le seguenti limitazioni:

  • Se la VM esegue un'immagine del sistema operativo Windows basata su x64 precedente alla versionev20190312, dopo aver attivato i display virtuali sulla VM, devi installare il driver del display virtuale come descritto in questo documento. Se la VM esegue una versione dell'immagine del sistema operativo successiva, il driver è già installata nell'immagine sistema operativo.

  • Puoi utilizzare un dispositivo di visualizzazione virtuale sulla VM solo dopo l'avvio del sistema operativo guest e inizializza il driver del display virtuale.

  • Non puoi utilizzare dispositivi di visualizzazione virtuali su VM che eseguono la piattaforma CPU Sandy Bridge.

  • Non puoi utilizzare dispositivi di visualizzazione virtuali su VM T2A ARM.

Attivare i display virtuali su una VM

Per abilitare i display virtuali su una VM, seleziona uno dei seguenti metodi descritti in questo documento:

Se la VM esegue un'immagine del sistema operativo Windows basata su x64 precedente alla versione v20190312, poi, dopo aver abilitato le visualizzazioni virtuali sulla VM, installare il driver del display virtuale come descritto in documento.

Crea una VM con display virtuali abilitati

Per creare una VM con i display virtuali abilitati, seleziona una delle seguenti opzioni:

Console

  1. Nella console Google Cloud, vai alla pagina Crea un'istanza.

    Vai a Crea un'istanza

  2. Specifica le proprietà della VM, inclusi il nome, la zona e il tipo di macchina.

  3. Nella sezione Dispositivo display, seleziona la casella di controllo Attiva il dispositivo display.

  4. Per creare la VM, fai clic su Crea.

gcloud

Per creare una VM con i display virtuali abilitati, utilizza il comando gcloud compute instances create con il flag --enable-display-device.

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

Sostituisci quanto segue:

  • VM_NAME: il nome della VM.

  • MACHINE_TYPE: tipo di macchina da utilizzare per la VM.

  • ZONE: la zona in cui creare la VM.

Terraform

Per creare una VM con display virtuali abilitati, utilizza la Risorsa Terraform con l'argomento enable_display impostato su true.

Ad esempio, per creare una VM nella zona us-central1-c con i display virtuali attivati e specificare f1-micro come tipo di macchina, utilizza la seguente risorsa:


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

Per creare una VM con display virtuali abilitati, effettua una richiesta POST alla Metodo instances.insert. Nel corpo della richiesta, includi il campo enableDisplay impostato su 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"
    }
  ]
}

Sostituisci quanto segue:

  • PROJECT_ID: l'ID del progetto in cui creare la VM.

  • ZONE: la zona in cui creare la VM.

  • VM_NAME: il nome della VM.

  • MACHINE_TYPE: il tipo di macchina da utilizzare per la VM.

  • IMAGE_PROJECT: il progetto immagine che contiene l'immagine del sistema operativo, ad esempio debian-cloud. Per ulteriori informazioni sui per i progetti immagine supportati, consulta Immagini pubbliche.

  • IMAGE: specifica una delle seguenti opzioni:

    • Una versione specifica dell'immagine del sistema operativo, ad esempio debian-12-bookworm-v20240617.

    • Una famiglia di immagini, che deve essere formattata come family/IMAGE_FAMILY. Questo specifica l'immagine del sistema operativo più recente e non ritirata. Ad esempio, se specifica family/debian-12, la versione più recente in Debian 12 famiglia di immagini. Per saperne di più sull'utilizzo delle famiglie di immagini, consulta le best practice per le famiglie di immagini.

Per ulteriori informazioni sulla creazione di una VM, consulta Creare e avviare un'istanza Compute Engine.

Attivare i display virtuali su una VM esistente

Prima di abilitare i display virtuali su una VM, assicurati di interrompere la VM.

Per attivare i display virtuali su una VM esistente, seleziona una delle seguenti opzioni:

Console

  1. Nella console Google Cloud, vai alla pagina Istanze VM.

    Vai alla pagina Istanze VM

  2. Nella colonna Nome, fai clic sul nome della VM.

    Si apre la pagina dei dettagli della VM.

  3. Fai clic su Modifica.

    Si apre la pagina per modificare le proprietà della VM.

  4. Nella sezione Dispositivo display, seleziona la casella di controllo Attiva il dispositivo display.

  5. Fai clic su Salva.

gcloud

Per attivare i display virtuali su una VM esistente, utilizza il comando gcloud compute instances update con il flag --enable-display-device.

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

Sostituisci quanto segue:

  • VM_NAME: il nome della VM.

  • ZONE: la zona in cui si trova la VM.

REST

Per attivare i display virtuali su una VM esistente, invia una richiesta POST al metodo instances.updateDisplayDevice. Nel corpo della richiesta, includi il campo enableDisplay e impostalo su true.

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

{
  "enableDisplay": true
}

Sostituisci quanto segue:

  • PROJECT_ID: l'ID del progetto in cui si trova la VM.

  • ZONE: la zona in cui si trova la VM.

  • VM_NAME: il nome della VM.

Disabilita display virtuali su una VM esistente

Prima di disattivare i display virtuali su una VM, assicurati di arrestare la VM.

Per disabilitare le visualizzazioni virtuali su una VM esistente, seleziona una delle seguenti opzioni opzioni:

Console

  1. Nella console Google Cloud, vai alla pagina Istanze VM.

    Vai alla pagina Istanze VM

  2. Nella colonna Nome, fai clic sul nome della VM.

    Si apre la pagina dei dettagli della VM.

  3. Fai clic su Modifica.

    Viene visualizzata la pagina per modificare le proprietà della VM.

  4. Nella sezione Dispositivo di visualizzazione, deseleziona la casella di controllo Attiva il dispositivo di visualizzazione.

  5. Fai clic su Salva.

gcloud

Per disabilitare le visualizzazioni virtuali su una VM esistente, utilizza la Comando gcloud compute instances update con il flag --no-enable-display-device.

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

Sostituisci quanto segue:

  • VM_NAME: il nome della VM.

  • ZONE: la zona in cui si trova la VM.

REST

Per disabilitare le visualizzazioni virtuali su una VM esistente, effettua una richiesta POST alla Metodo instances.updateDisplayDevice. Nel corpo della richiesta, includi il campo enableDisplay e impostalo su false.

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

{
  "enableDisplay": false
}

Sostituisci quanto segue:

  • PROJECT_ID: l'ID del progetto in cui si trova la VM.

  • ZONE: la zona in cui si trova la VM.

  • VM_NAME: il nome della VM.

Installa il driver del display virtuale

Se hai attivato i display virtuali su una VM Windows che esegue un'immagine del sistema operativo Windows precedente alla versione v20190312, per utilizzare un dispositivo di visualizzazione virtuale sulla VM devi installare il driver del display virtuale fornito da Google Cloud. Se La VM esegue una versione più recente dell'immagine del sistema operativo, quindi il driver è già installato puoi saltare questa sezione.

Per installare il driver del display virtuale su una VM con i display virtuali abilitati, segui questi passaggi:

  1. Connettiti alla VM Windows.

  2. Apri un terminale PowerShell come amministratore.

  3. Installa il componente google-compute-engine-driver-gga:

    googet install google-compute-engine-driver-gga
    
  4. Riavvia la VM.

Dopo aver riavviato la VM, puoi verifica che il driver sia stato installato correttamente come descritti nella prossima sezione.

Verifica l'installazione del driver del display virtuale

Se devi installare manualmente il driver del display virtuale sul una VM Windows, come descritto nella sezione precedente, puoi verificare che l'installazione è riuscita procedendo nel seguente modo:

  1. Se non l'hai già fatto, connetterti alla VM Windows.

  2. Apri Gestione dispositivi.

  3. Nell'elenco Gestione dispositivi, nell'elenco Adattatori display, assicurati che compare il driver di Google Graphics Array (GGA).

    Se il driver non è presente nell'elenco, reinstalla il driver della scheda video virtuale come descritto in questo documento.

Passaggi successivi