Crie uma estação de trabalho Linux virtual acelerada por GPU


Este tutorial mostra como criar uma estação de trabalho Linux virtual executando Ubuntu 22.04 com uma GPU com capacidade de exibição anexada.Google Cloud oferece quatro GPUs com capacidade de exibição: NVIDIA L4, NVIDIA T4, NVIDIA P4 e NVIDIA P100.

Para criar uma estação de trabalho Windows, consulte o tutorial Criando uma estação de trabalho Windows acelerada por GPU virtual .

Depois de criar a estação de trabalho virtual, você aprenderá como acessá-la remotamente usando o HP Anyware (anteriormente Teradici CAS), usando a tecnologia PC-over-IP (PCoIP®) , um protocolo de desktop remoto amplamente utilizado nos setores de mídia e entretenimento, desenvolvimento de jogos, arquitetura e engenharia. O PCoIP oferece recursos essenciais para esses tipos de cargas de trabalho, como precisão de cores, suporte para vários monitores, exibição sem perdas e sensibilidade à pressão do tablet.

Este tutorial pressupõe que você esteja familiarizado com a linha de comando do Linux.

Objetivos

  • Crie uma instância do Compute Engine com uma GPU. Esta instância serve como base para uma estação de trabalho virtual.
  • Instale os drivers NVIDIA na estação de trabalho virtual.
  • Instale o software HP Anyware na estação de trabalho virtual.
  • Conecte-se à estação de trabalho virtual usando um cliente de software PCoIP.

Custos

Este tutorial usa o seguinte componente faturável de Google Cloud:

Você pode usar a calculadora de preços para gerar uma estimativa de custo com base no uso projetado.

Os recursos que compõem a estação de trabalho virtual e os fatores que afetam o custo neste tutorial são:

A transferência de dados pela Internet representa os dados que são transmitidos da sua estação de trabalho virtual para o seu cliente de exibição local e são cobrados pelos custos de transferência de dados de saída pela Internet . As variáveis ​​que afetam a transferência de dados durante uma sessão PCoIP são largura de banda, resolução de tela, número de monitores, aplicativos usados ​​e o tipo de atividade em cada monitor. O Guia de planejamento de sessão do HP Anyware pode ajudá-lo a entender os diferentes requisitos de carga de trabalho.

Antes de começar

Este tutorial usa a CLI do Google Cloud, que pode ser executada a partir de uma instância do Cloud Shell iniciada no Console do Google Cloud . Se você quiser usar a CLI gcloud em sua estação de trabalho local, instale a CLI do Google Cloud . O tutorial mostra como executar comandos no Cloud Shell; se você usar a CLI gcloud em sua estação de trabalho, ajuste as instruções adequadamente.

  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

Além disso, certifique-se de ter o seguinte:

  • UM Google Cloud projeto com cota para GPUs NVIDIA L4 Virtual Workstation na zona selecionada. Você pode obter uma lista de disponibilidade de GPU usando o comando gcloud compute accelerator-types list .
  • Um navegador Google Chrome para acessar o console do Google Cloud.
  • O software cliente PCoIP mais recente para Windows, Mac ou Linux para acessar a estação de trabalho virtual.
  • Uma conta em help.teradici.com para baixar o software HP Anyware. O registro da conta é gratuito.
  • Uma licença de software HP Anyware. Você pode solicitar uma licença de avaliação ou entrar em contato com seu representante HP e solicitar um código de registro de avaliação para usar nesta estação de trabalho virtual.

Arquitetura

O diagrama a seguir mostra os componentes usados ​​neste tutorial para implementar uma única estação de trabalho virtual. Os componentes opcionais mostrados no diagrama incluem diferentes maneiras de se conectar à sua estação de trabalho virtual, armazenamento compartilhado, uma instância adicional para servir licenças de terceiros e infraestrutura adicional que representa um farm de renderização ou computação.

Arquitetura de estação de trabalho virtual.

Escolha uma região

Um fator importante ao implantar uma estação de trabalho virtual é a latência entre seu local e a instância criada. Quanto menor a latência, melhor será a experiência. Portanto, você deseja trabalhar em uma região geograficamente mais próxima de você. Para saber mais sobre onde as diferentes GPUs estão disponíveis, consulte Disponibilidade de regiões e zonas de GPU .

  1. Abra o Cloud Shell. (Se você estiver usando a CLI gcloud, abra uma janela de terminal no seu computador.)

    Acesse o Cloud Shell

  2. Obtenha uma lista das zonas em que as GPUs estão disponíveis:

    gcloud compute accelerator-types list

    Anote a região e zona que está fisicamente mais próxima de você.

  3. Defina a zona com a qual deseja trabalhar:

    gcloud config set compute/zone ZONE

    Substitua ZONE pelo nome da zona que você está usando, como us-west1-b .

Escolha um tipo de máquina

As GPUs NVIDIA L4 são anexadas ao tipo de máquina G2 . As máquinas virtuais com uma ou mais GPUs têm um número máximo de vCPUs para cada GPU adicionada à instância. Por exemplo, cada GPU NVIDIA L4 permite ter até 32 vCPUs e até 128 GB de memória no tipo de máquina da sua instância. Para ver os intervalos de vCPU e memória disponíveis para diferentes configurações de GPU, consulte a lista de GPUs .

O exemplo neste tutorial consiste em uma estação de trabalho virtual G2 de 8 vCPUs, que está bem abaixo do limite de 32 vCPUs para uma única GPU NVIDIA L4.

Crie a estação de trabalho virtual

  1. No Cloud Shell, crie a instância da estação de trabalho virtual do 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
    

    Substitua o seguinte:

    • VM_NAME é o nome da sua estação de trabalho.
    • ZONE é a zona na qual a VM será criada.
    • MACHINE_TYPE é a configuração de máquina predefinida ou personalizada.
    • ACCELERATOR é o tipo de GPU que você deseja conectar, como nvidia-l4-vws .
    • NUM-GPUS é o número de GPUs a serem anexadas à VM.
    • SIZE é o tamanho do disco de inicialização, em gigabytes.
    • TYPE é o tipo de disco de inicialização. Para obter uma lista dos tipos de disco disponíveis, execute gcloud compute disk-types list .
    • NETWORK é a rede na qual a VM será criada.

    Por exemplo:

    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
    

    Depois que a estação de trabalho virtual for criada, o status da máquina será exibido. A saída é semelhante a esta:

    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
    

    Observe o endereço IP externo da estação de trabalho virtual. Você o usará posteriormente no tutorial.

    Você pode recuperar o endereço IP externo da sua estação de trabalho virtual a qualquer momento usando o Google Cloud console .

Faça login na sua estação de trabalho virtual

Depois de criar a estação de trabalho virtual, faça login na máquina para poder configurá-la.

  1. No Cloud Shell, conecte-se à nova estação de trabalho virtual:

    gcloud compute ssh VM_NAME
  2. Defina a senha da sua conta. O login em uma estação de trabalho virtual usando o cliente de software PCoIP requer uma senha de usuário.

    sudo passwd `whoami`

    Quando solicitado, digite uma senha. Você usará essa senha posteriormente no tutorial para fazer logon em sua estação de trabalho virtual com o cliente HP Anyware PCoIP.

Instale as bibliotecas base

O padrão Google Cloud A imagem do Ubuntu 22.04 é uma instalação mínima do Ubuntu. A próxima etapa é instalar as bibliotecas necessárias para executar sua estação de trabalho virtual como uma estação de trabalho gráfica.

  1. Atualize os repositórios de software:

    sudo apt update
  2. Instale os componentes básicos:

    sudo apt install -y build-essential
    sudo apt install -y libvulkan1
    
  3. Atualize a versão gcc para o driver 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
    

Instale o driver NVIDIA

As GPUs NVIDIA L4, NVIDIA T4, NVIDIA P4 e NVIDIA P100 funcionam em Google Cloudsomente com drivers de estação de trabalho virtual NVIDIA RTX qualificados para cargas de trabalho de visualização. Esses drivers podem ser baixados de um site público Google Cloud balde de armazenamento.

  1. Para instalar o driver da estação de trabalho virtual NVIDIA RTX mais recente, siga as instruções (somente etapas 3 e 4) .

  2. Reinicie a estação de trabalho:

    sudo reboot

Instale o ambiente de área de trabalho

Um ambiente de desktop é necessário para executar sua estação de trabalho virtual como uma estação de trabalho gráfica. Para este tutorial, você instala o KDE Plasma Desktop.

  1. Instale o ambiente de área de trabalho:

    sudo apt update
    sudo apt -y install kubuntu-desktop
    sudo apt -y install dialog
    
  2. Reinicie a estação de trabalho:

    sudo reboot

Instale o software HP Anyware

O software HP Anyware fornece um agente gráfico que é executado em sua estação de trabalho virtual, entregando o desktop ao seu cliente de hardware ou software.

  1. Quando a estação de trabalho virtual for reiniciada, no Cloud Shell, reconecte-se à estação de trabalho virtual:

    gcloud compute ssh VM_NAME
  2. Adicione o repositório de software Teradici:

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

    Substitua o seguinte:

  3. Atualize os repositórios de software:

    sudo apt update
  4. Opcional: Instale dependências USB, se precisar dar suporte a dispositivos USB que não sejam teclados, mouses e dispositivos apontadores.

    sudo apt -y install usb-vhci-dkms
  5. Instale o software HP Anyware:

    sudo apt -y install pcoip-agent-graphics

Registre o Agente Anyware Graphics

Para usar o Anyware Graphics Agent, você deve ter uma licença do HP Anyware.

  1. No Cloud Shell, ative sua licença do software HP Anyware:

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

    Substitua REGISTRATION-CODE pelo código fornecido pela HP Teradici no formato ABCDEFGHIJKL@0123-4567-89AB-CDEF .

  2. Reinicie a estação de trabalho virtual:

    sudo reboot

Crie uma regra de firewall

O cliente PCoIP se comunica com sua estação de trabalho virtual usando diversas portas. Você deve definir regras de firewall que permitam o tráfego para sua estação de trabalho virtual.

  • No Cloud Shell (não na estação de trabalho virtual), crie uma regra de firewall que abra as portas necessárias:

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

Faça login na sua estação de trabalho virtual usando o cliente PCoIP

  1. No computador local, acesse a seção Clientes PCoIP na página de suporte do HP Anyware e baixe, instale e inicie o aplicativo PCoIP Software Client para seu sistema operacional.

  2. No campo Endereço do host ou Código de registro , insira o endereço IP externo da sua estação de trabalho virtual. Se desejar, você pode inserir um nome para a conexão.

  3. Quando estiver conectado, autentique-se inserindo o nome de usuário e a senha que você criou anteriormente para a estação de trabalho virtual.

    Em alguns segundos, sua área de trabalho Linux aparecerá.

Teste sua estação de trabalho virtual

Depois de implantar sua estação de trabalho virtual, você poderá testar o desempenho e a interatividade usando diversas ferramentas:

Você também pode aprender mais sobre a otimização do desempenho do PCoIP com base na sua carga de trabalho.

Limpar

Para evitar cobranças na sua conta do Google Cloud pelos recursos usados ​​neste tutorial, exclua o projeto que contém os recursos ou mantenha o projeto e exclua os recursos individuais.

Depois de terminar o tutorial, limpe os recursos que você criou emGoogle Cloud então você não será cobrado por eles no futuro.

Pare sua estação de trabalho virtual

As estações de trabalho virtuais interrompidas incorrem em custos de disco permanente , mas podem ser reiniciadas a qualquer momento. Para interromper sua estação de trabalho virtual, execute o seguinte comando no Cloud Shell:

gcloud compute instances stop VM_NAME

Exclua todos os componentes

  1. Exclua a estação de trabalho virtual .
  2. Exclua a regra de firewall .

Exclua o projeto

  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.

O que vem a seguir