Nachdem Sie eine VM-Instanz mit einer oder mehreren GPUs erstellt haben, benötigt Ihr System NVIDIA-Gerätetreiber, damit Ihre Anwendungen auf das Gerät zugreifen können. Achten Sie darauf, dass auf Ihren VM-Instanzen ausreichend freier Speicherplatz vorhanden ist. Sie sollten beim Erstellen der neuen VM mindestens 40 GB für das Bootlaufwerk wählen.
Für die Installation der Treiber haben Sie zwei Möglichkeiten:
Wenn Sie GPUs für hardwarebeschleunigte 3D-Grafiken wie Remote-Desktop oder Gaming benötigen, lesen Sie den Abschnitt Treiber für NVIDIA RTX Virtual Workstations (vWS) installieren.
Für andere Arbeitslasten sollten Sie der Anleitung in diesem Dokument folgen, um den NVIDIA-Treiber zu installieren.
NVIDIA-Treiber, CUDA-Toolkit und CUDA-Laufzeitversionen
Es gibt verschiedene versionierte Komponenten von Treibern und Laufzeitumgebung, die in Ihrer Umgebung erforderlich sein können. Dazu gehören die folgenden Komponenten:
- NVIDIA-Treiber
- CUDA-Toolkit
- CUDA-Laufzeit
Bei der Installation dieser Komponenten haben Sie die Möglichkeit, Ihre Umgebung entsprechend Ihren Anforderungen zu konfigurieren. Wenn Sie beispielsweise eine frühere Version von Tensorflow haben, die mit einer früheren Version des CUDA-Toolkits am besten funktioniert, aber die verwendete GPU eine spätere Version des NVIDIA-Treibers erfordert, dann Sie können eine frühere Version eines CUDA-Toolkits zusammen mit einer späteren Version des NVIDIA-Treibers installieren.
Die NVIDIA-Treiber- und CUDA-Toolkitversionen müssen jedoch kompatibel sein. Informationen zum CUDA-Toolkit und zur NVIDIA-Treiberkompatibilität finden Sie in der NVIDIA-Dokumentation zur CUDA-Kompatibilität.
Erforderliche NVIDIA-Treiberversionen
Für NVIDIA-GPUs, die auf Compute Engine ausgeführt werden, werden die folgenden NVIDIA-Treiberversionen empfohlen:
Maschinenserie | NVIDIA-GPU-Modell | Für Linux empfohlener Treiber | Mindesttreiber für Linux | Für Windows empfohlener Treiber |
---|---|---|---|---|
A4X | B200 | neueste 570 | 570.133.20 | – |
A4 | B200 | neueste 570 | 570.124.06 | – |
A3 Ultra | H200 | neueste 570 | 550.90.076 | – |
A3 Mega, High, Edge | H100 | aktuelles 550 | 550.90.07 | – |
G2 | L4 | aktuelles 550 | 550.90.07 | 538.67 |
A2 | A100 | aktuelles 550 | 550.90.07 | 538.67 |
N1 | T4, P4, P100 und V100 | aktuelles 535 | 535.183.01 | 538.67 |
GPU-Treiber mithilfe von NVIDIA-Anleitungen auf VMs installieren
Eine Möglichkeit zur Installation des NVIDIA-Treibers auf den meisten VMs ist die Installation des NVIDIA CUDA-Toolkits.
Führen Sie die folgenden Schritte aus, um das NVIDIA-Toolkit zu installieren:
Wählen Sie ein CUDA-Toolkit mit dem für den erforderlichen Mindesttreiber aus.
Stellen Sie eine Verbindung zur VM her, auf der Sie den Treiber installieren möchten.
Laden Sie das CUDA-Toolkit auf Ihre VM herunter und installieren Sie es. Das Installationspaket und die Anleitung für das empfohlene Mindest-Toolkit finden Sie in der folgenden Tabelle. Bevor Sie das Toolkit installieren, müssen Sie die in der Installationsanleitung beschriebenen Installationsschritte ausführen.
Maschinenserie NVIDIA-GPU-Modell Für Linux empfohlenes CUDA-Toolkit Für Windows empfohlenes CUDA-Toolkit A4X GB200 - Downloadlink: CUDA Toolkit 12.8 Update 1
- Installationsanleitung: Installationsanleitung für CUDA 12.8
– A4 B200 - Downloadlink: CUDA Toolkit 12.8 Update 1
- Installationsanleitung: Installationsanleitung für CUDA 12.8
– A3 H200, H100 - Downloadlink: CUDA Toolkit 12.4 Update 1
- Installationsanleitung: Installationsanleitung für CUDA 12.4
– G2 L4 - Downloadlink: CUDA Toolkit 12.4 Update 1
- Installationsanleitung: Installationsanleitung für CUDA 12.4
- Downloadlink: CUDA Toolkit 12.2 Update 2
- Installationsanleitung: Installationsanleitung für CUDA 12.2
A2 A100 N1 - T4
- V100
- P100
- P4
- Downloadlink: CUDA Toolkit 12.2
- Installationsanleitung: Installationsanleitung für CUDA 12.2
- Downloadlink: CUDA Toolkit 12.2
- Installationsanleitung: Installationsanleitung für CUDA 12.2
GPU-Treiber mithilfe eines Installationsskripts auf VMs installieren
Mit den folgenden Skripts können Sie den Installationsvorgang automatisieren. Informationen zu diesen Skripts finden Sie im GitHub-Repository.
Linux
Folgen Sie dieser Anleitung, um GPU-Treiber auf einer laufenden VM zu installieren.
Unterstützte Betriebssysteme
Das Linux-Installationsskript wurde unter den folgenden Betriebssystemen getestet:
- Debian 11 und 12
- Red Hat Enterprise Linux (RHEL) 8 und 9
- Rocky Linux 8 und 9
- Ubuntu 20, 22 und 24
Wenn Sie dieses Script auf anderen Betriebssystemen verwenden, schlägt die Installation möglicherweise fehl. Mit diesem Script können Sie sowohl den NVIDIA-Treiber als auch das CUDA-Toolkit installieren. So installieren Sie die GPU-Treiber und das CUDA-Toolkit:
Wenn Sie den Ops-Agent haben, der GPU-Messwerte auf Ihrer VM erfasst, Version 2.38.0 oder höher, müssen Sie den Agent beenden, bevor Sie Ihre GPU-Treiber mit diesem Installationsscript installieren oder aktualisieren können.
Nachdem Sie die Installation oder das Upgrade des GPU-Treibers abgeschlossen haben, müssen Sie die VM neu starten.
Führen Sie den folgenden Befehl aus, um den Ops-Agent zu beenden:
sudo systemctl stop google-cloud-ops-agent
Prüfen Sie, ob Python 3 unter Ihrem Betriebssystem installiert ist.
Laden Sie das Installationsskript herunter.
curl -L https://storage.googleapis.com/compute-gpu-installation-us/installer/latest/cuda_installer.pyz --output cuda_installer.pyz
Führen Sie das Installationsskript aus.
sudo python3 cuda_installer.pyz install_driver
Die Ausführung des Skripts dauert einige Zeit. Ihre VM wird neu gestartet. Wenn die VM neu gestartet wird, führen Sie das Skript noch einmal aus, um die Installation fortzusetzen.
Prüfen Sie die Installation. Weitere Informationen finden Sie unter Installieren des GPU-Treibers prüfen.
Mit diesem Tool können Sie auch das CUDA-Toolkit installieren. Führen Sie den folgenden Befehl aus, um das CUDA-Toolkit zu installieren:
sudo python3 cuda_installer.pyz install_cuda
Die Ausführung dieses Scripts kann mindestens 30 Minuten dauern. Ihre VM wird neu gestartet. Wenn die VM neu gestartet wird, führen Sie das Skript noch einmal aus, um die Installation fortzusetzen.
Prüfen Sie die Installation des CUDA-Toolkits.
python3 cuda_installer.pyz verify_cuda
Linux (Startskript)
Folgen Sie dieser Anleitung, um GPU-Treiber während des Starts einer VM zu installieren.
Unterstützte Betriebssysteme
Das Linux-Installationsskript wurde unter den folgenden Betriebssystemen getestet:
- Debian 11 und 12
- Red Hat Enterprise Linux (RHEL) 8 und 9
- Rocky Linux 8 und 9
- Ubuntu 20, 22 und 24
Wenn Sie dieses Script auf anderen Betriebssystemen verwenden, schlägt die Installation möglicherweise fehl. Mit diesem Script können Sie sowohl den NVIDIA-Treiber als auch das CUDA-Toolkit installieren.
Mit dem folgenden Startskript können Sie die Installation des Treibers und des CUDA-Toolkits automatisieren:
Windows
Dieses Installationsskript kann auf VMs verwendet werden, für die Secure Boot aktiviert ist.
- Bei Windows-VMs, die eine G2-Maschinenserie verwenden, installiert dieses Script nur den NVIDIA-Treiber.
- Bei anderen Maschinentypen installiert das Script den NVIDIA-Treiber und das CUDA-Toolkit.
Öffnen Sie ein PowerShell-Terminal als Administrator und führen Sie dann die folgenden Schritte aus:
Wenn Sie Windows Server 2016 verwenden, legen Sie die Transport Layer Security-Version (TLS) auf 1.2 fest.
[Net.ServicePointManager]::SecurityProtocol = 'Tls12'
Laden Sie das Skript herunter.
Invoke-WebRequest https://github.com/GoogleCloudPlatform/compute-gpu-installation/raw/main/windows/install_gpu_driver.ps1 -OutFile C:\install_gpu_driver.ps1
Führen Sie das Skript aus.
C:\install_gpu_driver.ps1
Die Ausführung des Skripts dauert einige Zeit. Während der Installation werden keine Eingabeaufforderungen angezeigt. Sobald das Skript beendet ist, wird der Treiber installiert.
Mit diesem Script werden die Treiber am Standardspeicherort auf Ihrer VM installiert:
C:\Program Files\NVIDIA Corporation\
.Prüfen Sie die Installation. Weitere Informationen finden Sie unter Installieren des GPU-Treibers prüfen.
GPU-Treiber installieren (Secure Boot-VMs)
Diese Anleitung beschreibt die Installation von GPU-Treibern auf Linux-VMs, die Secure Boot verwenden.
GPU-Unterstützung
Die Verfahren in diesem Abschnitt unterstützen alle GPU-Modelle, die in Compute Engine verfügbar sind.
Sie können diese Verfahren nicht verwenden, um Treiber auf Secure Boot-Instanzen zu installieren, an die NVIDIA RTX Virtual Workstations (vWS)-Versionen unserer GPUs angehängt sind.
Wenn Sie eine Windows-VM oder eine Linux-VM ohne Secure Boot verwenden, lesen Sie stattdessen eine der folgenden Anleitungen:
Die Installation des Treibers auf einer Secure Boot-VM unterscheidet sich für Linux-VMs, da für diese VMs alle Kernel-Module eine vertrauenswürdige Zertifikatsignatur benötigen.
Installation
Sie haben folgende Möglichkeiten, Treiber mit vertrauenswürdigen Zertifikaten zu installieren:
- Erstellen Sie ein vertrauenswürdiges Zertifikat für Ihre Treiber. Wählen Sie für diese Option eine der folgenden Möglichkeiten aus:
- Automatisierte Methode: Verwenden Sie ein Tool zum Erstellen von Images, um Boot-Images zu erstellen, in denen vertrauenswürdige Zertifikate für Ihre Treiber installiert sind.
- Manuelle Methode: Generieren Sie Ihr eigenes Zertifikat und verwenden Sie es zum Signieren der Kernelmodule des GPU-Treibers.
Verwenden Sie vorab signierte Treiber mit einem vorhandenen vertrauenswürdigen Zertifikat. Diese Methode wird nur unter Ubuntu unterstützt.
Selbstsignierung (automatisiert)
Unterstützte Betriebssysteme:
Diese automatisierte Methode zur Selbstsignierung wurde auf den folgenden Betriebssystemen getestet:
- Debian 12
- Red Hat Enterprise Linux (RHEL) 8 und 9
- Rocky Linux 8 und 9
- Ubuntu 22 und 24
Vorgehensweise
So erstellen Sie ein Betriebssystem-Image mit selbst signierten Zertifikaten:
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
-
Laden Sie das cuda_installer-Tool herunter. Führen Sie den folgenden Befehl aus, um die neueste Version des Skripts herunterzuladen:
curl -L https://storage.googleapis.com/compute-gpu-installation-us/installer/latest/cuda_installer.pyz --output cuda_installer.pyz
Erstellen Sie ein Image, für das Secure Boot aktiviert ist, indem Sie den folgenden Befehl ausführen. Die Erstellung des Images kann bis zu 20 Minuten dauern.
PROJECT=PROJECT_ID ZONE=ZONE BASE_IMAGE=BASE_IMAGE_NAME SECURE_BOOT_IMAGE=IMAGE_NAME python3 cuda_installer.pyz build_image \ --project $PROJECT \ --vm-zone $ZONE \ --base-image $BASE_IMAGE $SECURE_BOOT_IMAGE
Ersetzen Sie Folgendes:
PROJECT_ID
: ID des Projekts, in dem das Image erstellt werden sollZONE
: Zone, in der eine temporäre VM erstellt wird. Beispiel:us-west4-a
.IMAGE_NAME
: Name des Images, das erstellt wird.BASE_IMAGE_NAME
: Wählen Sie eine der folgenden Optionen aus:debian-12
rhel-8
oderrhel-9
rocky-8
oderrocky-9
ubuntu-22
oderubuntu-24
Sie können auch das Flag
--family NAME
hinzufügen, um das neue Image einer Image-Familie hinzuzufügen.Wenn Sie alle Anpassungsoptionen für das Image sehen möchten, führen Sie
python3 cuda_installer.pyz build_image --help
aus. Sie können sich auch die Dokumentation fürcuda_installer
auf GitHub ansehen.Prüfen Sie das Bild. Führen Sie die folgenden Schritte aus, um zu prüfen, ob für das Image Secure Boot aktiviert ist und ob GPU-Instanzen mit installierten NVIDIA-Treibern erstellt werden können.
Erstellen Sie eine Test-VM-Instanz, um zu prüfen, ob Ihr Image richtig konfiguriert ist und die GPU-Treiber erfolgreich geladen werden. Im folgenden Beispiel wird ein N1-Maschinentyp mit einem einzelnen angehängten NVIDIA T4-Beschleuniger erstellt. Sie können jedoch einen beliebigen unterstützten GPU-Maschinentyp verwenden.
TEST_INSTANCE_NAME=TEST_INSTANCE_NAME ZONE=ZONE gcloud compute instances create $TEST_INSTANCE_NAME \ --project=$PROJECT \ --zone=$ZONE \ --machine-type=n1-standard-4 \ --accelerator=count=1,type=nvidia-tesla-t4 \ --create-disk=auto-delete=yes,boot=yes,device-name=$TEST_INSTANCE_NAME,image=projects/$PROJECT/global/images/$SECURE_BOOT_IMAGE,mode=rw,size=100,type=pd-balanced \ --shielded-secure-boot \ --shielded-vtpm \ --shielded-integrity-monitoring \ --maintenance-policy=TERMINATE
Ersetzen Sie Folgendes:
TEST_INSTANCE_NAME
: ein Name für die Test-VM-Instanz.ZONE
: eine Zone mit T4-GPUs oder der GPU Ihrer Wahl. Weitere Informationen finden Sie unter GPU-Regionen und ‑Zonen.
Prüfen Sie, ob Secure Boot aktiviert ist. Führen Sie dazu den Befehl
mokutil --sb-state
auf der Test-VM mitgcloud compute ssh
aus.gcloud compute ssh --project=$PROJECT --zone=$ZONE $TEST_INSTANCE_NAME --command "mokutil --sb-state"
Prüfen Sie mit dem Befehl
nvidia-smi
auf der Test-VM übergcloud compute ssh
, ob der Treiber installiert ist.gcloud compute ssh --project=$PROJECT --zone=$ZONE $TEST_INSTANCE_NAME --command "nvidia-smi"
Wenn Sie das CUDA-Toolkit installiert haben, können Sie die Installation mit dem Tool
cuda_installer
so prüfen:gcloud compute ssh --project=$PROJECT --zone=$ZONE $TEST_INSTANCE_NAME --command "python3 cuda_installer.pyz verify_cuda"
Bereinigen Nachdem Sie bestätigt haben, dass das benutzerdefinierte Image funktioniert, müssen Sie die VM zur Überprüfung nicht mehr behalten. Führen Sie den folgenden Befehl aus, um die VM zu löschen:
gcloud compute instances delete --zone=$ZONE --project=$PROJECT $TEST_INSTANCE_NAME
Optional: Führen Sie den folgenden Befehl aus, um das erstellte Laufwerk-Image zu löschen:
gcloud compute images delete --project=$PROJECT $SECURE_BOOT_IMAGE
Selbstsignierung (manuell)
Unterstützte Betriebssysteme
Diese manuelle Methode zum Selbstsignieren wurde unter den folgenden Betriebssystemen getestet:
- Debian 12
- Red Hat Enterprise Linux (RHEL) 8 und 9
- Rocky Linux 8 und 9
- Ubuntu 22 und 24
Übersicht
So werden die Installation, die Signierung und die Image-Erstellung durchgeführt:
- Generieren Sie ein eigenes Zertifikat zum Signieren des Treibers.
- Erstellen Sie eine VM, um den GPU-Treiber zu installieren und zu signieren. Sie können zum Erstellen der VM das Betriebssystem Ihrer Wahl verwenden. Beim Erstellen der VM müssen Sie den sicheren Start deaktivieren. Sie müssen der VM keine GPUs zuweisen.
- Installieren und signieren Sie den GPU-Treiber und optional das CUDA Toolkit.
- Erstellen Sie ein Laufwerk-Image basierend auf dem Computer mit einem selbstsignierten Treiber und fügen Sie Ihr Zertifikat der Liste der vertrauenswürdigen Zertifikate hinzu.
- Verwenden Sie das Image, um GPU-VMs mit aktiviertem Secure Boot zu erstellen.
Bilder erstellen
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
-
Generieren Sie Ihr eigenes Zertifikat mit OpenSSL. Mit OpenSSL erfolgt die Signierung und Überprüfung für Secure Boot mit den regulären Distinguished Encoding Rules (DER)-codierten X.509-Zertifikaten. Führen Sie den folgenden Befehl aus, um ein neues selbstsigniertes X.509-Zertifikat und eine private RSA-Schlüsseldatei zu generieren.
openssl req -new -x509 -newkey rsa:2048 -keyout private.key -outform DER -out public.der -noenc -days 36500 -subj "/CN=Graphics Drivers Secure Boot Signing"
Erstellen Sie eine VM, um den selbst signierten Treiber zu installieren. Wenn Sie die VM erstellen, müssen Sie keine GPUs anhängen oder Secure Boot aktivieren. Sie können einen Standard-E2-Maschinentyp mit mindestens 40 GB verfügbarem Speicherplatz verwenden, damit die Installation erfolgreich abgeschlossen werden kann.
INSTANCE_NAME=BUILD_INSTANCE_NAME DISK_NAME=IMAGE_NAME ZONE=ZONE PROJECT=PROJECT_ID OS_IMAGE=IMAGE_DETAILS # Create the build VM gcloud compute instances create $INSTANCE_NAME \ --zone=$ZONE \ --project=$PROJECT \ --machine-type=e2-standard-4 \ --create-disk=auto-delete=yes,boot=yes,name=$DISK_NAME,$OS_IMAGE,mode=rw,size=100,type=pd-balanced \ --no-shielded-secure-boot
Ersetzen Sie Folgendes:
BUILD_INSTANCE_NAME
: Name der VM-Instanz, die zum Erstellen des Images verwendet wird.IMAGE_NAME
: Name des Laufwerk-Image.ZONE
ist die Zone, in der die VM erstellt werden soll.PROJECT_ID
: ID des Projekts, das Sie zum Erstellen des neuen Speicherabbilds verwenden möchten.IMAGE_DETAILS
: die Image-Familie und das Projekt für das ausgewählte Basis-Betriebssystem-Image:- Debian 12:
"image-family=debian-12,image-project=debian-cloud"
- RHEL 8:
"image-family=rhel-8,image-project=rhel-cloud"
- RHEL 9:
"image-family=rhel-9,image-project=rhel-cloud"
- Rocky Linux 8:
"image-family=rocky-linux-8,image-project=rocky-linux-cloud"
- Rocky Linux 9:
"image-family=rocky-linux-9,image-project=rocky-linux-cloud"
- Ubuntu 22:
"image-family=ubuntu-2204-lts-amd64,image-project=ubuntu-os-cloud"
- Ubuntu 24:
"image-family=ubuntu-2404-lts-amd64,image-project=ubuntu-os-cloud"
- Debian 12:
Kopieren Sie die generierte Datei mit dem privaten Schlüssel auf die VM. Um die Treiberdatei zu signieren, muss das neu generierte Schlüsselpaar auf der VM verfügbar sein.
gcloud compute scp --zone $ZONE --project $PROJECT private.key $INSTANCE_NAME:~/private.key gcloud compute scp --zone $ZONE --project $PROJECT public.der $INSTANCE_NAME:~/public.der
Installieren und signieren Sie den Treiber. Die Installation und Signierung des Treibers und des CUDA-Toolkits werden vom Installationsskript übernommen, das auch für Installationen ohne Secure Boot verwendet wird. So installieren und signieren Sie den Treiber:
Stellen Sie eine SSH-Verbindung zur VM her:
gcloud compute ssh --zone $ZONE --project $PROJECT $INSTANCE_NAME
Prüfen Sie, ob die privaten und öffentlichen Schlüssel richtig kopiert wurden:
ls private.key public.der
Treiberinstallationsskript herunterladen:
curl -L https://storage.googleapis.com/compute-gpu-installation-us/installer/latest/cuda_installer.pyz --output cuda_installer.pyz
Prüfen Sie, ob die Treiberinstallation mit aktivierter Signierung eingerichtet ist. Der Build-Computer wird während der Einrichtung neu gestartet. Nachdem der Build-Computer neu gestartet wurde, stellen Sie mit SSH eine Verbindung zur VM her und führen Sie das Skript noch einmal aus, um die Installation fortzusetzen.
sudo python3 cuda_installer.pyz install_driver --secure-boot-pub-key=public.der --secure-boot-priv-key=private.key --ignore-no-gpu
Wenn Sie das CUDA-Toolkit gleichzeitig installieren möchten, können Sie dies mit dem folgenden Befehl tun.
sudo python3 cuda_installer.pyz install_cuda --ignore-no-gpu
Möglicherweise werden einige Fehler- oder Warnmeldungen angezeigt. Diese Ergebnisse sind darauf zurückzuführen, dass keine GPU erkannt wurde, und sind daher zu erwarten. Das System wird nach Abschluss der CUDA Toolkit-Installation neu gestartet. Nach dem Wiederverbinden können Sie mit den nächsten Schritten fortfahren.
Entfernen Sie die Zertifikatsdateien, da sie auf dem temporären Computer nicht mehr benötigt werden. Verwenden Sie für mehr Sicherheit
shred
anstelle des Befehlsrm
. Schlüssel sollten nicht im endgültigen Speicherabbild vorhanden sein.shred -uz private.key public.der
Fahren Sie die VM herunter, damit Sie ihr Laufwerk zum Erstellen des neuen Images verwenden können.
sudo shutdown now
Bereiten Sie das Basis-Laufwerk-Image vor. Wenn Sie ein neues Laufwerk-Image erstellen möchten, mit dem Instanzen mit aktiviertem Secure Boot erstellt werden können, müssen Sie das Image so konfigurieren, dass es Ihrem neu generierten Schlüssel vertraut. Das neue Laufwerk-Image akzeptiert weiterhin die vom Betriebssystem verwendeten Standardzertifikate. Führen Sie die folgenden Schritte aus, um das Basis-Image vorzubereiten.
Laden Sie die Standardzertifikate herunter. Verwenden Sie die folgenden Befehle, um die Zertifikate MicWinProPCA2011_2011-10-19.crt und MicCorUEFCA2011_2011-06-27.crt herunterzuladen:
curl -L https://storage.googleapis.com/compute-gpu-installation-us/certificates/MicCorUEFCA2011_2011-06-27.crt --output MicCorUEFCA2011_2011-06-27.crt curl -L https://storage.googleapis.com/compute-gpu-installation-us/certificates/MicWinProPCA2011_2011-10-19.crt --output MicWinProPCA2011_2011-10-19.crt
Zertifikate prüfen:
cat <<EOF >>check.sha1 46def63b5ce61cf8ba0de2e6639c1019d0ed14f3 MicCorUEFCA2011_2011-06-27.crt 580a6f4cc4e4b669b9ebdc1b2b3e087b80d0678d MicWinProPCA2011_2011-10-19.crt EOF sha1sum -c check.sha1
Erstellen Sie ein Image auf der Grundlage des Laufwerks der temporären VM. Sie können
--family=IMAGE_FAMILY_NAME
als Option hinzufügen, damit das Image als das neueste Image in einer bestimmten Image-Familie festgelegt wird. Das Erstellen des neuen Bildes kann einige Minuten dauern.Führen Sie den folgenden Befehl in dem Verzeichnis aus, in dem sich die Datei
public.der
und die heruntergeladenen Zertifikate befinden.SECURE_BOOT_IMAGE=IMAGE_NAME gcloud compute images create $SECURE_BOOT_IMAGE \ --source-disk=$DISK_NAME \ --source-disk-zone=$ZONE \ --project=$PROJECT \ --signature-database-file=MicWinProPCA2011_2011-10-19.crt,MicCorUEFCA2011_2011-06-27.crt,public.der \ --guest-os-features="UEFI_COMPATIBLE"
Mit dem folgenden Befehl können Sie prüfen, ob der öffentliche Schlüssel Ihres Zertifikats an dieses neue Image angehängt ist:
gcloud compute images describe --project=$PROJECT $SECURE_BOOT_IMAGE
Prüfen Sie das neue Bild. Sie können eine GPU-VM mit dem neuen Laufwerk-Image erstellen. Für diesen Schritt empfehlen wir einen N1-Maschinentyp mit einem einzelnen T4-Beschleuniger, für den Secure Boot aktiviert ist. Das Image unterstützt jedoch auch andere Arten von GPUs und Maschinentypen.
Test-GPU-VM erstellen:
TEST_GPU_INSTANCE=TEST_GPU_INSTANCE_NAME ZONE=ZONE gcloud compute instances create $TEST_GPU_INSTANCE \ --project=$PROJECT \ --zone=$ZONE \ --machine-type=n1-standard-4 \ --accelerator=count=1,type=nvidia-tesla-t4 \ --create-disk=auto-delete=yes,boot=yes,device-name=$TEST_GPU_INSTANCE,image=projects/$PROJECT/global/images/$SECURE_BOOT_IMAGE,mode=rw,size=100,type=pd-balanced \ --shielded-secure-boot \ --shielded-vtpm \ --shielded-integrity-monitoring \ --maintenance-policy=TERMINATE
Ersetzen Sie Folgendes:
TEST_GPU_INSTANCE_NAME
: Name der GPU-VM-Instanz
, die Sie zum Testen des neuen Images erstellen.ZONE
: Zone mit T4-GPUs oder anderen GPUs Ihrer Wahl. Weitere Informationen finden Sie unter GPU-Regionen und ‑Zonen.
Prüfen Sie, ob Secure Boot aktiviert ist. Führen Sie dazu den Befehl
mokutil --sb-state
auf der Test-VM mitgcloud compute ssh
aus.gcloud compute ssh --project=$PROJECT --zone=$ZONE $TEST_GPU_INSTANCE --command "mokutil --sb-state"
Prüfen Sie, ob der Treiber installiert ist, indem Sie den Befehl
nvidia-smi
auf der Test-VM mitgcloud compute ssh
ausführen.gcloud compute ssh --project=$PROJECT --zone=$ZONE $TEST_GPU_INSTANCE --command "nvidia-smi"
Wenn Sie das CUDA-Toolkit installiert haben, können Sie die Installation mit dem Tool
cuda_installer
so prüfen:gcloud compute ssh --project=$PROJECT --zone=$ZONE $TEST_GPU_INSTANCE --command "python3 cuda_installer.pyz verify_cuda"
Bereinigen Nachdem Sie bestätigt haben, dass das neue Image funktioniert, müssen Sie die temporäre VM oder die Prüf-VM nicht mehr behalten. Das von Ihnen erstellte Laufwerk-Image ist in keiner Weise von ihnen abhängig. Sie können sie mit dem folgenden Befehl löschen:
gcloud compute instances delete --zone=$ZONE --project=$PROJECT $INSTANCE_NAME gcloud compute instances delete --zone=$ZONE --project=$PROJECT $TEST_GPU_INSTANCE
Wir raten davon ab, Ihr Secure Boot-Signaturzertifikat unverschlüsselt auf Ihrer Festplatte zu speichern. Wenn Sie die Schlüssel sicher speichern und mit anderen teilen möchten, können Sie Secret Manager verwenden, um Ihre Daten zu schützen.
Wenn Sie die Dateien auf Ihrer Festplatte nicht mehr benötigen, sollten Sie sie am besten mit dem Tool
shred
sicher entfernen. Führen Sie dazu diesen Befehl aus:# Safely delete the key pair from your system shred -uz private.key public.der
Vorab signiert (nur Ubuntu)
Diese Anleitung ist nur für Linux-VMs mit Secure Boot verfügbar, die auf Ubuntu 18.04, 20.04 und 22.04 ausgeführt werden. In Zukunft werden weitere Linux-Betriebssysteme unterstützt.
So installieren Sie GPU-Treiber auf Ihren Ubuntu-VMs, die Secure Boot verwenden:
Stellen Sie eine Verbindung zur VM her, auf der Sie den Treiber installieren möchten.
Aktualisieren Sie das Repository.
sudo apt-get update
Suchen Sie nach dem neuesten Paket des NVIDIA-Kernels oder der gewünschten Version. Dieses Paket enthält NVIDIA-Kernel-Module, die vom Ubuntu-Schlüssel signiert wurden. Wenn Sie eine frühere Version suchen, ändern Sie die Zahl für den Parameter „tail”, um eine ältere Version zu erhalten. Geben Sie beispielsweise
tail -n 2
an:Ubuntu PRO und LTS
Führen Sie für Ubuntu PRO und LTS den folgenden Befehl aus:
NVIDIA_DRIVER_VERSION=$(sudo apt-cache search 'linux-modules-nvidia-[0-9]+-gcp$' | awk '{print $1}' | sort | tail -n 1 | head -n 1 | awk -F"-" '{print $4}')
Ubuntu PRO FIPS
Führen Sie für Ubuntu PRO FIPS die folgenden Befehle aus:
Ubuntu FIPS-Updates aktivieren
sudo ua enable fips-updates
Herunterfahren und neu starten
sudo shutdown -r now
Laden Sie das aktuelle Paket herunter.
NVIDIA_DRIVER_VERSION=$(sudo apt-cache search 'linux-modules-nvidia-[0-9]+-gcp-fips$' | awk '{print $1}' | sort | tail -n 1 | head -n 1 | awk -F"-" '{print $4}')
Sie können die ausgewählte Treiberversion mit dem Befehl
echo $NVIDIA_DRIVER_VERSION
prüfen. Die Ausgabe ist ein Versionsstring wie455
.Installieren Sie das Kernel-Modulpaket und den entsprechenden NVIDIA-Treiber.
sudo apt install linux-modules-nvidia-${NVIDIA_DRIVER_VERSION}-gcp nvidia-driver-${NVIDIA_DRIVER_VERSION}
Wenn der Befehl mit dem Fehler
package not found error
fehlschlägt, fehlt möglicherweise der neueste NVIDIA-Treiber aus dem Repository. Wiederholen Sie den vorherigen Schritt und wählen Sie eine frühere Treiberversion aus, indem Sie die tail-Zahl ändern.Überprüfen Sie, ob der NVIDIA-Treiber installiert ist. Möglicherweise müssen Sie die VM neu starten.
Wenn Sie das System neu gestartet haben, um die NVIDIA-Version zu prüfen. Nach dem Neustart müssen Sie die Variable
NVIDIA_DRIVER_VERSION
zurücksetzen. Führen Sie dazu den Befehl, den Sie in Schritt 3 verwendet haben, noch einmal aus.Konfigurieren Sie APT für die Verwendung des NVIDIA-Paket-Repositories.
Damit APT bei der Auswahl der richtigen Abhängigkeit hilft, können Sie die Repositories so anpinnen:
sudo tee /etc/apt/preferences.d/cuda-repository-pin-600 > /dev/null <<EOL Package: nsight-compute Pin: origin *ubuntu.com* Pin-Priority: -1
Package: nsight-systems Pin: origin *ubuntu.com* Pin-Priority: -1
Package: nvidia-modprobe Pin: release l=NVIDIA CUDA Pin-Priority: 600
Package: nvidia-settings Pin: release l=NVIDIA CUDA Pin-Priority: 600
Package: * Pin: release l=NVIDIA CUDA Pin-Priority: 100 EOLInstallieren Sie
software-properties-common
. Dies ist erforderlich, wenn Sie minimale Ubuntu-Images verwenden.sudo apt install software-properties-common
Legen Sie die Ubuntu-Version fest.
Ubuntu 18.04
Führen Sie für Ubuntu 18.04 den folgenden Befehl aus:
export UBUNTU_VERSION=ubuntu1804/x86_64
Ubuntu 20.04
Führen Sie für Ubuntu 20.04 den folgenden Befehl aus:
export UBUNTU_VERSION=ubuntu2004/x86_64
Ubuntu 22.04
Führen Sie für Ubuntu 22.04 den folgenden Befehl aus:
export UBUNTU_VERSION=ubuntu2204/x86_64
Laden Sie das Paket
cuda-keyring
herunter:wget https://developer.download.nvidia.com/compute/cuda/repos/$UBUNTU_VERSION/cuda-keyring_1.0-1_all.deb
Installieren Sie das Paket
cuda-keyring
:sudo dpkg -i cuda-keyring_1.0-1_all.deb
Fügen Sie das NVIDIA-Repository hinzu.
sudo add-apt-repository "deb https://developer.download.nvidia.com/compute/cuda/repos/$UBUNTU_VERSION/ /"
Wählen Sie die Standardaktion aus, um die aktuelle Version beizubehalten, wenn Sie dazu aufgefordert werden.
Suchen Sie nach der kompatiblen CUDA-Treiberversion.
Das folgende Skript bestimmt die neueste CUDA-Treiberversion, die mit dem soeben installierten NVIDIA-Treiber kompatibel ist:
CUDA_DRIVER_VERSION=$(apt-cache madison cuda-drivers | awk '{print $3}' | sort -r | while read line; do if dpkg --compare-versions $(dpkg-query -f='${Version}\n' -W nvidia-driver-${NVIDIA_DRIVER_VERSION}) ge $line ; then echo "$line" break fi done)
Sie können die CUDA-Treiberversion mit dem Befehl
echo $CUDA_DRIVER_VERSION
prüfen. Die Ausgabe ist ein Versionsstring wie455.32.00-1
.Installieren Sie CUDA-Treiber mit der im vorherigen Schritt identifizierten Version.
sudo apt install cuda-drivers-${NVIDIA_DRIVER_VERSION}=${CUDA_DRIVER_VERSION} cuda-drivers=${CUDA_DRIVER_VERSION}
Optional: Setzen Sie
dkms
-Pakete auf „Hold”.Nachdem Sie Secure Boot aktiviert haben, müssen alle Kernel-Module signiert werden, damit sie geladen werden können. Von
dkms
erstellte Kernel-Module funktionieren auf der VM nicht, da sie standardmäßig nicht ordnungsgemäß signiert sind. Dies ist ein optionaler Schritt. Er kann jedoch verhindern, dass Sie versehentlich anderedkms
-Pakete installieren.Führen Sie den folgenden Befehl aus, um
dkms
-Pakete auf „Hold” zu setzen.sudo apt-get remove dkms && sudo apt-mark hold dkms
Installieren Sie das CUDA-Toolkit und die Laufzeit.
Wählen Sie die entsprechende CUDA-Version aus. Das folgende Skript bestimmt die neueste CUDA-Version, die mit dem soeben installierten CUDA-Treiber kompatibel ist:
CUDA_VERSION=$(apt-cache showpkg cuda-drivers | grep -o 'cuda-runtime-[0-9][0-9]-[0-9],cuda-drivers [0-9\\.]*' | while read line; do if dpkg --compare-versions ${CUDA_DRIVER_VERSION} ge $(echo $line | grep -Eo '[[:digit:]]+\.[[:digit:]]+') ; then echo $(echo $line | grep -Eo '[[:digit:]]+-[[:digit:]]') break fi done)
Sie können die CUDA-Version prüfen, indem Sie
echo $CUDA_VERSION
ausführen. Die Ausgabe ist ein Versionsstring wie11-1
.Installieren Sie das CUDA-Paket.
sudo apt install cuda-${CUDA_VERSION}
Prüfen Sie die CUDA-Installation.
sudo nvidia-smi
/usr/local/cuda/bin/nvcc --version
Der erste Befehl gibt die GPU-Informationen aus. Der zweite Befehl gibt die installierte CUDA-Compiler-Version aus.
Installation des GPU-Treibers prüfen
Prüfen Sie nach Abschluss der Treiberinstallationsschritte, ob der Treiber ordnungsgemäß installiert und initialisiert wurde.
Linux
Stellen Sie eine Verbindung zur Linux-Instanz her und prüfen Sie mit dem Befehl nvidia-smi
, ob der Treiber korrekt ausgeführt wird.
sudo nvidia-smi
Die Ausgabe sieht in etwa so aus:
Tue Mar 21 19:50:15 2023 +-----------------------------------------------------------------------------------------+ | NVIDIA-SMI 550.90.07 Driver Version: 550.90.07 CUDA Version: 12.4 | |-----------------------------------------+------------------------+----------------------+ | 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 Tesla T4 On | 00000000:00:04.0 Off | 0 | | N/A 50C P8 16W / 70W | 1MiB / 15360MiB | 0% Default | | | | N/A | +-----------------------------------------+------------------------+----------------------+ +-----------------------------------------------------------------------------------------+ | Processes: | | GPU GI CI PID Type Process name GPU Memory | | ID ID Usage | |=========================================================================================| | No running processes found | +-----------------------------------------------------------------------------------------+
Wenn dieser Befehl fehlschlägt, prüfen Sie Folgendes:
Prüfen Sie, ob der VM GPUs zugeordnet sind. Suchen Sie mit dem folgenden Befehl nach allen NVIDIA PCI-Geräten:
sudo lspci | grep -i "nvidia"
Prüfen Sie, ob die Treiber-Kernel-Version und die VM-Kernel-Version identisch sind.
Führen Sie den folgenden Befehl aus, um die VM-Kernel-Version zu prüfen:
uname -r
Führen Sie den folgenden Befehl aus, um die Kernel-Version des Treibers zu prüfen:
sudo apt-cache show linux-modules-nvidia-NVIDIA_DRIVER_VERSION-gcp
Wenn die Versionen nicht übereinstimmen, starten Sie die VM auf der neuen Kernel-Version neu.
Windows Server
Stellen Sie eine Verbindung zur Windows Server-Instanz her. Öffnen Sie ein PowerShell-Terminal und führen Sie den folgenden Befehl aus, um zu prüfen, ob der Treiber ordnungsgemäß ausgeführt wird.
nvidia-smi
Die Ausgabe sieht in etwa so aus:
+---------------------------------------------------------------------------------------+ | NVIDIA-SMI 538.67 Driver Version: 538.67 CUDA Version: 12.2 | |-----------------------------------------+----------------------+----------------------+ | GPU Name TCC/WDDM | Bus-Id Disp.A | Volatile Uncorr. ECC | | Fan Temp Perf Pwr:Usage/Cap | Memory-Usage | GPU-Util Compute M. | | | | MIG M. | |=========================================+======================+======================| | 0 NVIDIA L4 WDDM | 00000000:00:03.0 Off | 0 | | N/A 66C P8 17W / 72W | 128MiB / 23034MiB | 0% Default | | | | N/A | +-----------------------------------------+----------------------+----------------------+ +---------------------------------------------------------------------------------------+ | Processes: | | GPU GI CI PID Type Process name GPU Memory | | ID ID Usage | |=======================================================================================| | 0 N/A N/A 4888 C+G ...CBS_cw5n1h2txyewy\TextInputHost.exe N/A | | 0 N/A N/A 5180 C+G ....Search_cw5n1h2txyewy\SearchApp.exe N/A | +---------------------------------------------------------------------------------------+
Nächste Schritte
- Informationen zum Beobachten der GPU-Leistung finden Sie unter GPU-Leistung beobachten.
- Informationen zur Handhabung der GPU-Hostwartung finden Sie unter GPU-Hostwartungen.
- Informationen zum Verbessern der Netzwerkleistung finden Sie unter Höhere Netzwerkbandbreite verwenden.
- Informationen zur Fehlerbehebung bei GPU-VMs finden Sie unter Fehlerbehebung bei GPU-VMs.