Créer un poste de travail virtuel Linux accéléré par GPU


Ce tutoriel explique comment créer un poste de travail virtuel sous Linux exécutant Ubuntu 22.04 avec un GPU disposant de fonctionnalités d'affichage. Google Cloud propose quatre GPU disposant de fonctions d'affichage : NVIDIA L4, NVIDIA T4, NVIDIA P4 et NVIDIA P100.

Pour créer un poste de travail sous Windows, consultez le tutoriel Créer un poste de travail virtuel Windows accéléré par GPU.

Après avoir créé le poste de travail virtuel, vous apprendrez à y accéder à distance à l'aide de HP Anyware (anciennement Teradici CAS) à l'aide de PC-over-IP (PCoIP®). PCoIP est un protocole de bureau à distance largement utilisé dans les secteurs des médias et du divertissement, du développement de jeux, de l'architecture et de l'ingénierie. Le protocole PCoIP offre des fonctionnalités essentielles à ces types de charges de travail, telles que la justesse des couleurs, la prise en charge de plusieurs écrans, l'affichage sans perte et la sensibilité de la pression sur la tablette.

Dans ce tutoriel, nous partons du principe que vous connaissez la ligne de commande Linux.

Objectifs

  • Créer une instance Compute Engine à l'aide d'un GPU. Cette instance sert de base au poste de travail virtuel.
  • Installer les pilotes NVIDIA sur le poste de travail virtuel.
  • Installer le logiciel HP Anyware sur le poste de travail virtuel
  • Connectez-vous au poste de travail virtuel à l'aide d'un client logiciel PCoIP.

Coûts

Ce tutoriel utilise le composant facturable suivant de Google Cloud :

Vous pouvez utiliser le simulateur de coût pour générer une estimation des coûts en fonction de l'utilisation prévue.

Les ressources qui composent le poste de travail virtuel et les facteurs qui influent sur les coûts de ce tutoriel sont les suivants :

Le transfert de données Internet représente les données qui transitent de votre poste de travail virtuel vers votre client d'affichage local et auxquelles s'appliquent les coûts liés au transfert de données sortantes Internet. Les variables qui influent sur le transfert de données pendant une session PCoIP sont la bande passante, la résolution d'écran, le nombre d'écrans, les applications utilisées et le type d'activité effectuée sur chaque moniteur. Le guide de planification des sessions HP Anyware peut vous aider à comprendre les différentes exigences liées aux charges de travail.

Avant de commencer

Ce tutoriel utilise Google Cloud CLI, que vous pouvez exécuter à partir d'une instance Cloud Shell lancée depuis la console Google Cloud. Si vous souhaitez utiliser la gcloud CLI sur votre poste de travail local, installez Google Cloud CLI. Ce tutoriel vous indique comment exécuter des commandes dans Cloud Shell. Adaptez les instructions si vous utilisez gcloud CLI sur votre poste de travail.

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. Enable the Compute Engine API.

    Enable the API

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  6. Make sure that billing is enabled for your Google Cloud project.

  7. Enable the Compute Engine API.

    Enable the API

Assurez-vous également de disposer des éléments suivants :

  • Un projet Google Cloud avec quota pour les GPU de poste de travail virtuel NVIDIA L4 dans la zone sélectionnée. Vous pouvez obtenir une liste des zones dans lesquelles les GPU sont disponibles en exécutant la commande gcloud compute accelerator-types list.
  • Un navigateur Google Chrome pour accéder à la console Google Cloud
  • La dernière version du logiciel client PCoIP pour Windows, Mac ou Linux, afin d'accéder au poste de travail virtuel.
  • Un compte sur help.teradici.com pour télécharger le logiciel HP Anyware. L'enregistrement du compte est gratuit.
  • Une licence logicielle HP Anyware. Vous pouvez demander une licence d'essai ou contacter votre représentant HP pour demander un code d'enregistrement d'essai à utiliser pour ce poste de travail virtuel.

Architecture

Le schéma suivant présente les composants utilisés dans ce tutoriel pour déployer un poste de travail virtuel unique. Les composants facultatifs présentés dans le schéma offrent différentes manières de se connecter au poste de travail virtuel, un stockage partagé, une instance supplémentaire pour diffuser des licences tierces et une infrastructure supplémentaire représentant un environnement de rendu ou une ferme de calcul.

Architecture de poste de travail virtuel.

Sélectionner une région

Un facteur important à prendre en compte lorsque vous déployez un poste de travail virtuel est la latence entre votre emplacement et l'instance que vous créez. Plus la latence est basse, meilleure est l'expérience. Par conséquent, privilégiez une utilisation dans une région géographiquement proche de vous. Pour en savoir plus sur l'emplacement des différents GPU, consultez la page Disponibilité des GPU dans les régions et zones.

  1. Ouvrez Cloud Shell. (Si vous utilisez gcloud CLI , ouvrez une fenêtre de terminal sur votre ordinateur.)

    Accéder à Cloud Shell

  2. Obtenez une liste des zones dans lesquelles les GPU sont disponibles :

    gcloud compute accelerator-types list

    Prenez note de la région et de la zone les plus proches de vous.

  3. Définissez la zone que vous souhaitez utiliser.

    gcloud config set compute/zone ZONE

    Remplacez ZONE par le nom de la zone choisie, par exemple us-west1-b.

Choisir un type de machine

Les GPU NVIDIA L4 sont associés au type de machine G2. Les machines virtuelles avec un ou plusieurs GPU possèdent un nombre maximal de processeurs virtuels pour chaque GPU que vous ajoutez à l'instance. Par exemple, chaque GPU NVIDIA L4 vous permet de bénéficier d'un maximum de 32 vCPU et de 128 Go de mémoire dans le type de machine de votre instance. Pour afficher les processeurs virtuels et plages de mémoire disponibles pour différentes configurations de GPU, consultez la liste des GPU.

L'exemple décrit dans ce tutoriel utilise un poste de travail virtuel G2 à 8 vCPU, ce qui est bien inférieur à la limite de 32 processeurs virtuels pour une seule GPU NVIDIA L4.

Créer le poste de travail virtuel

  1. Dans Cloud Shell, créez l'instance de poste de travail virtuel Compute Engine :

    gcloud compute instances create VM_NAME \
        --zone=ZONE \
        --machine-type=MACHINE_TYPE \
        --accelerator=type=ACCELERATOR,count=NUM-GPUS \
        --maintenance-policy="TERMINATE" \
        --image-project=ubuntu-os-cloud \
        --image-family=ubuntu-2204-lts \
        --boot-disk-size=SIZE \
        --boot-disk-type=TYPE \
        --network=NETWORK
    

    Remplacez les éléments suivants :

    • VM_NAME est le nom de votre poste de travail.
    • ZONE est la zone dans laquelle vous souhaitez créer la VM.
    • MACHINE_TYPE est la configuration de la machine prédéfinie ou personnalisée.
    • ACCELERATOR est le type de GPU que vous souhaitez associer, par exemple nvidia-l4-vws.
    • NUM-GPUS est le nombre de GPU à associer à la VM.
    • SIZE est la taille du disque de démarrage en Go.
    • TYPE est le type de disque de démarrage. Pour obtenir la liste des types de disques disponibles, exécutez la commande gcloud compute disk-types list.
    • NETWORK est le réseau sur lequel créer la VM.

    Exemple :

    gcloud compute instances create test-workstation \
        --zone=us-west1-b \
        --machine-type=g2-standard-8 \
        --accelerator=type=nvidia-l4-vws,count=1 \
        --maintenance-policy="TERMINATE" \
        --image-project=ubuntu-os-cloud \
        --image-family=ubuntu-2204-lts \
        --boot-disk-size=100 \
        --boot-disk-type=pd-ssd \
        --network=default
    

    Une fois le poste de travail virtuel créé, l'état de l'ordinateur s'affiche. La sortie ressemble à ceci :

    NAME: test-workstation
    ZONE: us-west1-b
    MACHINE_TYPE: g2-standard-8
    PREEMPTIBLE:
    INTERNAL_IP: 10.138.XX.XXX
    EXTERNAL_IP: XX.XXX.XXX.XXX
    STATUS: RUNNING
    

    Notez l'adresse IP externe du poste de travail virtuel. Vous en aurez besoin dans la suite de ce tutoriel.

    Vous pouvez récupérer cette adresse IP externe à tout moment à partir de la console Google Cloud.

Se connecter au poste de travail virtuel

Après avoir créé le poste de travail virtuel, connectez-vous à ce dernier pour pouvoir le configurer.

  1. Dans Cloud Shell, connectez-vous au nouveau poste de travail virtuel :

    gcloud compute ssh VM_NAME
  2. Définissez le mot de passe de votre compte. Pour vous connecter à un poste de travail virtuel à l'aide du client logiciel PCoIP, vous devez définir un mot de passe utilisateur.

    sudo passwd `whoami`

    Lorsque vous y êtes invité, saisissez un mot de passe. Vous l'utiliserez dans la suite de ce tutoriel pour vous connecter à votre poste de travail virtuel à l'aide du client PCoIP HP Anyware.

Installer les bibliothèques de base

L'image Google Cloud Ubuntu 22.04 par défaut correspond à une installation minimale d'Ubuntu. L'étape suivante consiste à installer les bibliothèques nécessaires à l'exécution de votre poste de travail virtuel en tant que poste de travail graphique.

  1. Mettez à jour les dépôts du logiciel :

    sudo apt update
  2. Installez les composants de base:

    sudo apt install -y build-essential
    sudo apt install -y libvulkan1
    
  3. Mettez à jour la version gcc pour le pilote NVIDIA:

    sudo apt install -y gcc-12
    sudo apt install -y linux-headers-$(uname -r)
    sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-12 12
    sudo update-alternatives --config gcc
    

Installer le pilote NVIDIA

Les GPU NVIDIA L4, NVIDIA T4, NVIDIA P4 et NVIDIA P100 ne fonctionnent sur Google Cloud qu'avec des pilotes NVIDIA RTX Virtual Workstations pour les charges de travail de visualisation. Ces pilotes peuvent être téléchargés à partir d'un bucket de stockage Google Cloud public.

  1. Pour installer le dernier pilote de poste de travail virtuel NVIDIA RTX, suivez les instructions (étapes 3 et 4 uniquement).

  2. Redémarrez le poste de travail :

    sudo reboot

Installer l'environnement de bureau

Un environnement de bureau est nécessaire pour exécuter votre poste de travail virtuel en tant que poste de travail graphique. Pour ce tutoriel, vous allez installer le bureau KDE Plasma.

  1. Installez l'environnement de bureau:

    sudo apt update
    sudo apt -y install kubuntu-desktop
    sudo apt -y install dialog
    
  2. Redémarrez le poste de travail :

    sudo reboot

Installer le logiciel HP Anyware

Le logiciel HP Anyware fournit un agent graphique qui s'exécute sur le poste de travail virtuel, et qui diffuse le bureau à destination de votre client matériel ou logiciel.

  1. Une fois le poste de travail virtuel redémarré, accédez à Cloud Shell, puis reconnectez-vous au poste de travail virtuel :

    gcloud compute ssh VM_NAME
  2. Ajoutez le dépôt logiciel Teradici :

    curl -1sLf \
        https://dl.anyware.hp.com/TOKEN/pcoip-agent/cfg/setup/bash.deb.sh \
        | sudo -E distro=ubuntu codename=jammy bash
    

    Remplacez les éléments suivants :

  3. Mettez à jour les dépôts du logiciel :

    sudo apt update
  4. Facultatif : installez des dépendances USB si vous devez prendre en charge des appareils USB autres que les claviers, les souris et les dispositifs de pointage.

    sudo apt -y install usb-vhci-dkms
  5. Installez le logiciel HP Anyware :

    sudo apt -y install pcoip-agent-graphics

Enregistrer l'agent graphique Anyware

Pour utiliser l'agent graphique Anyware, vous devez disposer d'une licence HP Anyware.

  1. Dans Cloud Shell, activez votre licence logicielle HP Anyware :

    pcoip-register-host --registration-code=REGISTRATION-CODE

    Remplacez REGISTRATION-CODE par le code qui vous a été fourni par HP Teradici au format ABCDEFGHIJKL@0123-4567-89AB-CDEF.

  2. Redémarrez le poste de travail virtuel :

    sudo reboot

Créer une règle de pare-feu

Le client PCoIP communique avec votre poste de travail virtuel via plusieurs ports. Vous devez définir des règles de pare-feu autorisant le trafic vers votre poste de travail virtuel.

  • Lancez Cloud Shell sur l'ordinateur local (et non sur le poste de travail virtuel), puis créez une règle de pare-feu qui ouvre les ports requis:

    gcloud compute firewall-rules create allow-pcoip \
        --action=ALLOW \
        --rules=tcp:443,tcp:4172,udp:4172 \
        --source-ranges=0.0.0.0/0
    

Se connecter au poste de travail virtuel à l'aide du client PCoIP

  1. Sur l'ordinateur local, accédez à la section Clients PCoIP sur la page d'assistance de HP Anyware, puis téléchargez, installez et lancez l'application cliente PCoIP correspondant à votre système d'exploitation.

  2. Dans le champ Adresse de l'hôte ou Code d'enregistrement, saisissez l'adresse IP externe du poste de travail virtuel. Si vous le souhaitez, vous pouvez nommer la connexion.

  3. Lorsque vous êtes connecté, authentifiez-vous en saisissant le nom d'utilisateur et le mot de passe créés précédemment pour le poste de travail virtuel.

    Après quelques secondes, votre bureau Linux s'affiche.

Tester le poste de travail virtuel

Après avoir déployé votre poste de travail virtuel, vous pouvez tester ses performances et son interactivité à l'aide de nombreux outils :

  • Exécutez des outils de test de performances GPU, tels que glxgears, glmark2 ou UNIGINE, qui sont des programmes permettant de tester les performances graphiques d'un poste de travail Linux.
  • Installez Unreal Engine, Unity Editor, Blender ou toute application de création de contenu.
  • Exécutez des outils d'analyse de rendu pour des moteurs de rendu populaires, tels que V-Ray, Octane ou Maxon.
  • Utilisez Google Chrome pour parcourir vos sites préférés ou regarder des vidéos YouTube.

Vous pouvez également obtenir plus d'informations sur l'optimisation des performances PCoIP en fonction de votre charge de travail.

Effectuer un nettoyage

Pour éviter que les ressources utilisées lors de ce tutoriel soient facturées sur votre compte Google Cloud, supprimez le projet contenant les ressources, ou conservez le projet et supprimez les ressources individuelles.

Une fois que vous avez terminé le tutoriel, nettoyez les ressources que vous avez créées sur Google Cloud pour qu'elles ne vous soient plus facturées à l'avenir.

Arrêter votre poste de travail virtuel

Les postes de travail virtuels à l'arrêt entraînent des coûts relatifs au disque persistant, mais ils peuvent être redémarrés à tout moment. Pour arrêter votre poste de travail virtuel, exécutez la commande suivante dans Cloud Shell :

gcloud compute instances stop VM_NAME

Supprimer tous les composants

  1. Supprimez le poste de travail virtuel.
  2. Supprimez la règle de pare-feu.

Supprimer le projet

  1. In the Google Cloud console, go to the Manage resources page.

    Go to Manage resources

  2. In the project list, select the project that you want to delete, and then click Delete.
  3. In the dialog, type the project ID, and then click Shut down to delete the project.

Étape suivante