Crea e avvia un'istanza VM con GPU NVIDIA

Questa pagina descrive come creare un'istanza di macchina virtuale (VM) basata su Linux con unità di elaborazione grafica (GPU) NVIDIA.

Una macchina virtuale con GPU ti consente di eseguire vari carichi di lavoro accelerati da GPU, ad esempio intelligenza artificiale e machine learning.

Le macchine virtuali con GPU fanno parte della famiglia di macchine della serie A "ottimizzate per l'acceleratore", ad esempio A2 e A3. Per saperne di più, consulta Visualizza il tipo di macchina VM.

Questa pagina è rivolta agli sviluppatori dei gruppi di amministratori della piattaforma o operatori di applicazioni che creano VM in un ambiente air-gap di Google Distributed Cloud (GDC).

Prima di iniziare

Per utilizzare i comandi dell'interfaccia a riga di comando (CLI) gdcloud, assicurati di aver scaricato, installato e configurato la CLI gdcloud. Tutti i comandi per Distributed Cloud utilizzano la CLI gdcloud o kubectl e richiedono un ambiente Linux.

Richiedere autorizzazioni e accesso

Per eseguire le attività elencate in questa pagina, devi disporre del ruolo Amministratore macchina virtuale progetto. Segui i passaggi per verificare di disporre del ruolo Amministratore VirtualMachine progetto (project-vm-admin) nello spazio dei nomi del progetto in cui si trova la VM.

Per le operazioni sulle VM che utilizzano la console GDC o gcloud CLI, chiedi all'amministratore IAM del progetto di concederti i ruoli Project VirtualMachine Admin e Project Viewer (project-viewer).

Crea una VM

Crea una VM seguendo i passaggi descritti in Creare una VM da un'immagine e seleziona un tipo di macchina della serie A.

Installa i driver NVIDIA

Questa sezione fornisce i passaggi per installare i driver NVIDIA sull'istanza VM GDC.

Installa il pacchetto

A partire dalla versione v20250809 e successive, le immagini Ubuntu e Rocky Linux fornite da GDC hanno i driver NVIDIA preinstallati.

Per le versioni delle immagini precedenti a v20250809 e le immagini personalizzate fornite dall'utente, installa il driver dal repository del pacchetto GDC. Connettiti alla VM tramite SSH ed esegui il comando corrispondente al sistema operativo della VM:

Ubuntu:

    sudo apt install nvidia-dkms-570-server-open

Rocky Linux e RHEL:

    sudo dnf install nvidia-driver-cuda

Esegui DKMS

Attiva il driver NVIDIA sulla tua VM con il comando dkms. Devi eseguire questa operazione una sola volta per VM:

   sudo dkms autoinstall

Installa il toolkit CUDA

Il toolkit NVIDIA CUDA è disponibile nei repository dei pacchetti GDC. Connettiti alla VM utilizzando SSH, quindi esegui il comando corrispondente al sistema operativo della VM:

Ubuntu

    sudo apt install cuda-toolkit-12-8

Rocky Linux e RHEL

    sudo dnf install cuda-toolkit-12-8

Abilita Avvio protetto e firma i driver

Se devi abilitare l'avvio protetto sulla VM con GPU, devi firmare i driver della GPU. Consulta le istruzioni per il sistema operativo corrispondente.

Ubuntu

  1. Connettiti alla VM utilizzando SSH.
  2. Passa al super user:

    sudo su
    
  3. Genera una chiave MOK se non esiste già:

    [ -f /var/lib/shim-signed/mok/MOK.der ] || openssl req -new -x509 -newkey rsa:2048 -keyout /var/lib/shim-signed/mok/MOK.priv \
        -outform DER -out /var/lib/shim-signed/mok/MOK.der \
        -nodes -days 36500 -subj "/CN=DKMS Signing Key/"
    
  4. Registra la chiave utilizzando mokutil:

    mokutil --import /var/lib/shim-signed/mok/MOK.der
    
  5. Quando richiesto, crea e inserisci una nuova password a tua scelta.

  6. Firma i moduli kernel NVIDIA utilizzando la MOK:

    for module in nvidia nvidia_drm nvidia_modeset nvidia_uvm nvidia_peermem; do
        /usr/src/linux-headers-$(uname -r)/scripts/sign-file sha256 /var/lib/shim-signed/mok/MOK.priv /var/lib/shim-signed/mok/MOK.der $(modinfo -n $module)
    done
    

Rocky Linux e RHEL

  1. Connettiti alla VM utilizzando SSH.
  2. Passa al super user:

    sudo su
    
  3. Firma il driver con la chiave utilizzando dkms autoinstall:

    sudo dkms autoinstall
    
  4. Registra la chiave DKMS in MOK:

    mokutil --import /var/lib/dkms/mok.pub
    

Finalizza la registrazione e la verifica della MOK

Per accedere alla schermata di gestione MOK, assicurati di riavviare l'istanza VM e di connetterti immediatamente alla porta seriale. La schermata è sensibile al tempo e viene visualizzata solo brevemente durante la procedura di avvio. In particolare, segui questi passaggi:

  1. Riavvia l'istanza VM:

    reboot
    
  2. Connettiti alla console seriale della VM. Per saperne di più, vedi Connettersi a una porta seriale.

  3. Registra la MOK dalla console:

    Schermata di gestione MOK della console seriale della VM

    Schermata di gestione MOK della console seriale della VM con "Registra MOK" evidenziato

    Puoi visualizzare la chiave per assicurarti che corrisponda a quella generata in un passaggio precedente:

    Schermata di gestione MOK della console seriale della VM con l'opzione "Continua" selezionata

  4. Inserisci la password che hai selezionato in precedenza:

    Schermata di gestione MOK della console seriale della VM che richiede una password

  5. Seleziona Riavvia dal menu di gestione MOK:

    Schermata di gestione MOK della console seriale della VM con l'opzione "Riavvia" selezionata

  6. Verifica che il driver NVIDIA funzioni eseguendo nvidia-smi.

    L'output mostra lo stato della GPU e le informazioni sul driver:

    $ nvidia-smi
    Wed Aug 13 00:09:17 2025
    +-----------------------------------------------------------------------------------------+
    | NVIDIA-SMI 570.158.01             Driver Version: 570.158.01     CUDA Version: 12.8     |
    |-----------------------------------------+------------------------+----------------------+
    | GPU  Name                 Persistence-M | Bus-Id          Disp.A | Volatile Uncorr. ECC |
    | Fan  Temp   Perf          Pwr:Usage/Cap |           Memory-Usage | GPU-Util  Compute M. |
    |                                         |                        |               MIG M. |
    |=========================================+========================+======================|
    |   0  NVIDIA H200                    Off |   00000000:08:00.0 Off |                    0 |
    | N/A   42C    P0            128W /  700W |       0MiB / 143771MiB |      0%      Default |
    |                                         |                        |             Disabled |
    +-----------------------------------------+------------------------+----------------------+
    |   1  NVIDIA H200                    Off |   00000000:09:00.0 Off |                    0 |
    | N/A   36C    P0            127W /  700W |       0MiB / 143771MiB |      0%      Default |
    |                                         |                        |             Disabled |
    +-----------------------------------------+------------------------+----------------------+
    |   2  NVIDIA H200                    Off |   00000000:0A:00.0 Off |                    0 |
    | N/A   34C    P0            122W /  700W |       0MiB / 143771MiB |      0%      Default |
    |                                         |                        |             Disabled |
    +-----------------------------------------+------------------------+----------------------+
    |   3  NVIDIA H200                    Off |   00000000:0B:00.0 Off |                    0 |
    | N/A   40C    P0            128W /  700W |       0MiB / 143771MiB |      0%      Default |
    |                                         |                        |             Disabled |
    +-----------------------------------------+------------------------+----------------------+
    |   4  NVIDIA H200                    Off |   00000000:0C:00.0 Off |                    0 |
    | N/A   39C    P0            125W /  700W |       0MiB / 143771MiB |      0%      Default |
    |                                         |                        |             Disabled |
    +-----------------------------------------+------------------------+----------------------+
    |   5  NVIDIA H200                    Off |   00000000:0D:00.0 Off |                    0 |
    | N/A   35C    P0            122W /  700W |       0MiB / 143771MiB |      0%      Default |
    |                                         |                        |             Disabled |
    +-----------------------------------------+------------------------+----------------------+
    |   6  NVIDIA H200                    Off |   00000000:0E:00.0 Off |                    0 |
    | N/A   39C    P0            128W /  700W |       0MiB / 143771MiB |      0%      Default |
    |                                         |                        |             Disabled |
    +-----------------------------------------+------------------------+----------------------+
    |   7  NVIDIA H200                    Off |   00000000:0F:00.0 Off |                    0 |
    | N/A   35C    P0            121W /  700W |       0MiB / 143771MiB |      0%      Default |
    |                                         |                        |             Disabled |
    +-----------------------------------------+------------------------+----------------------+
    
    +-----------------------------------------------------------------------------------------+
    | Processes:                                                                              |
    |  GPU   GI   CI              PID   Type   Process name                        GPU Memory |
    |        ID   ID                                                               Usage      |
    |=========================================================================================|
    |  No running processes found                                                             |
    +-----------------------------------------------------------------------------------------+