Criar uma estação de trabalho virtual do Windows acelerada por GPU


Neste tutorial, mostramos como criar uma estação de trabalho virtual do Windows executando o Windows Server 2022 com uma GPU compatível com exibição. O Google Cloud oferece quatro GPUs com funcionalidade de exibição: NVIDIA L4, NVIDIA T4, NVIDIA P4 e NVIDIA P100.

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

Depois de criar a estação de trabalho virtual, você aprenderá como acessá-la remotamente usando o HP Anyware (antigo Teradici CAS) usando a tecnologia PC via IP (PCoIP®), que é um protocolo de desktop remoto (RDP) 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, incluindo precisão de cores, compatibilidade com vários monitores, tela sem perdas e sensibilidade à pressão do tablet.

Neste tutorial, presumimos que você esteja familiarizado com o Microsoft Windows e a linha de comando do PowerShell.

Objetivos

  • Criar uma instância do Compute Engine com uma GPU. A instância servirá como base para a estação de trabalho virtual.
  • Instalar os drivers da NVIDIA na estação de trabalho virtual.
  • Instale o software HP Anyware na estação de trabalho virtual.
  • Conectar-se à estação de trabalho virtual usando um cliente de software PCoIP.

Custos

Neste tutorial, usamos o seguinte componente faturável do Google Cloud:

Use a calculadora de preços para gerar uma estimativa de custo com base no uso previsto. A partir de outubro de 2023, o custo aproximado da configuração da estação de trabalho mostrada neste tutorial será de US$1,08 por hora.

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 da Internet representa os dados que são transmitidos da sua estação de trabalho virtual para o cliente de exibição local com a cobrança realizada de acordo com os custos de transferência de dados de saída da Internet. As variáveis que afetam a transferência de dados durante uma sessão de PCoIP são largura de banda, resolução de tela, número de monitores de exibição, aplicativos usados e tipo de atividade em cada monitor. O Guia de planejamento de sessão do HP Anyware ajuda 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 em uma instância do Cloud Shell iniciada no console do Google Cloud. Se você quiser usar a CLI gcloud na sua estação de trabalho local, instale a CLI do Google Cloud. No tutorial, mostramos como executar comandos no Cloud Shell. Se você usa a CLI gcloud na estação de trabalho, ajuste as instruções de acordo.

  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, verifique se você tem:

  • Um projeto do Google Cloud com cota para GPUs NVIDIA L4 Virtual Workstation na zona selecionada. É possível conseguir uma lista de disponibilidade da GPU usando o comando gcloud compute accelerator-types list;
  • Um navegador Google Chrome para acessar o console do Google Cloud.
  • Um cliente RDP para se conectar inicialmente à instância do Windows.
  • 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 fazer o download do software HP Anyware. O registro da conta é gratuito.
  • Uma licença de software do HP Anyware. Solicite uma licença de avaliação ou entre em contato com o representante da HP Teradici e solicite um código de registro de avaliação para usar na estação de trabalho virtual.

Arquitetura

O diagrama a seguir mostra os componentes usados neste tutorial para implantar uma única estação de trabalho virtual. Os componentes opcionais mostrados no diagrama incluem maneiras diferentes de se conectar à estação de trabalho virtual, ao armazenamento compartilhado, a uma instância adicional para disponibilizar licenças de terceiros e a 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 for a latência, melhor será a experiência. Portanto, trabalhe em uma região geograficamente mais próxima de onde você está. Para saber mais sobre os locais em que 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 do terminal no computador.

    Acessar o Cloud Shell

  2. Receba a lista das zonas com GPUs disponíveis:

    gcloud compute accelerator-types list

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

  3. Defina a zona com que você quer trabalhar.

    gcloud config set compute/zone ZONE

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

Escolher um tipo de máquina

As GPUs NVIDIA L4 estão conectadas 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 instância. Para ver os intervalos de memória e de vCPU 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 L4.

Criar 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 NAME \
        --zone=ZONE \
        --machine-type=MACHINE_TYPE \
        --accelerator=type=ACCELERATOR,count=NUM-GPUS \
        --maintenance-policy="TERMINATE" \
        --image-project=windows-cloud \
        --image-family=windows-2022 \
        --boot-disk-size=SIZE \
        --boot-disk-type=TYPE \
        --network=NETWORK
    

    Substitua:

    • NAME é o nome da estação de trabalho.
    • ZONE é a zona onde a instância será criada.
    • MACHINE_TYPE é a configuração de máquina predefinida ou personalizada.
    • ACCELERATOR é o tipo de GPU que você quer anexar, como nvidia-tesla-t4-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 ver uma lista de tipos de disco disponíveis, execute gcloud compute disk-types list.
    • NETWORK é a rede em que 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=windows-cloud \
        --image-family=windows-2022 \
        --boot-disk-size=100 \
        --boot-disk-type=pd-ssd \
        --network=default
    

    Depois da criação da estação de trabalho virtual, será exibido um status de máquina. O resultado será assim:

    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
    

    Anote o endereço IP externo da estação de trabalho virtual. Você precisará usá-lo posteriormente neste tutorial.

    É possível recuperar o endereço IP externo da estação de trabalho virtual a qualquer momento usando o console do Google Cloud.

Criar uma senha do Windows

Use o RDP para acessar a estação de trabalho virtual Windows e instalar os drivers gráficos NVIDIA. Para fazer login com o RDP, é necessário criar uma senha do Windows para o usuário.

  1. No Cloud Shell, execute este comando:

    gcloud compute reset-windows-password VM_NAME

    Substitua VM_NAME pelo nome da VM para alterar a senha.

  2. Revise as informações no prompt de confirmação:

    This command creates an account and sets an initial password for the
    user [username] if the account does not already exist.
    If the account already exists, resetting the password can cause the
    LOSS OF ENCRYPTED DATA secured with the current password, including
    files and stored passwords.
    
    For more information, see:
    https://cloud.google.com/compute/docs/operating-systems/windows#reset
    
    Would you like to set or reset the password for [username] (Y/n)?
    
  3. Depois de confirmar o prompt anterior, revise a confirmação das novas credenciais, que aparece da seguinte maneira:

    Resetting and retrieving password for [username] on [instance-name]
    Updated [https://www.googleapis.com/compute/v1/projects/project-name/zones/zone/instances/instance-name].
    ip_address: ip-address
    password:   password
    username:   username
    
  4. Agora é possível conectar-se à instância de VM usando as novas credenciais.

Fazer login na estação de trabalho virtual

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

  1. Na estação de trabalho local, use o cliente RDP para se conectar à estação de trabalho virtual usando o endereço IP externo.
  2. Quando receber uma solicitação para inserir suas credenciais, digite o nome de usuário e a senha que você gerou anteriormente.
  3. Se você vir um aviso de certificado, ignore-o e clique em Continuar.

A área de trabalho da estação de trabalho virtual será exibida. Feche o Windows Server Manager depois que ele for iniciado.

Instalar o Google Chrome

A próxima etapa é instalar o Chrome na instância de VM.

  1. Na sessão RDP, clique no botão Iniciar na barra de tarefas do Windows e digite Windows PowerShell.
  2. Clique com o botão direito do mouse no Windows PowerShell e selecione Executar como administrador.
  3. No prompt do PowerShell, ative as solicitações HTTPS:

    [Net.ServicePointManager]::SecurityProtocol = "tls12, tls11, tls"
    
  4. Faça o download e execute o instalador do Chrome:

    $installer = "$env:TEMP\chrome_installer.exe";
    Write-Host 'Downloading Chrome.'
    Invoke-WebRequest `
    'https://dl.google.com/chrome/install/latest/chrome_installer.exe' `
      -OutFile $installer
    Write-Host 'Installing Chrome.'
    & $installer /silent /install | Out-Default
    Remove-Item $installer
    
  5. Quando o comando for concluído, feche o PowerShell.

Instalar o driver da NVIDIA

As GPUs NVIDIA L4, NVIDIA T4, NVIDIA P4 e NVIDIA P100 funcionam no Google Cloud apenas com drivers de estação de trabalho virtual (vWS) NVIDIA RTX qualificados para cargas de trabalho de computação e exibição.

Faça o download desses drivers em um bucket público do Google Cloud Storage.

  1. Na área de trabalho Windows da estação de trabalho virtual, abra o Windows PowerShell.
  2. Receba a lista dos drivers mais recentes:

    gcloud storage ls gs://nvidia-drivers-us-public/GRID
  3. Acesse os drivers gráficos mais recentes de outubro de 2023:

    vGPU 16.1 Windows driver (537.13_grid_win10_win11_server2019_server2022_dch_64bit_international.exe)

    É possível ver o driver qualificado mais recente no diretório GRID com o número de versão mais elevado. Se você encontrar um driver ainda mais recente, use-o.

  4. No PowerShell, faça o download do driver e instale-o. Se você estiver usando uma versão do driver mais recente do que a 537.13, altere o comando de acordo.

    gcloud storage cp `
    gs://nvidia-drivers-us-public/GRID/vGPU16.1/537.13_grid_win10_win11_server2019_server2022_dch_64bit_international.exe `
    $HOME/Downloads
    
  5. Abra o Explorador de Arquivos do Windows e vá para o diretório Downloads do seu usuário.

  6. No diretório, clique duas vezes no driver NVIDIA para executar o instalador.

    Siga as instruções para instalar o driver no local padrão:

    1. Para aceitar os termos da licença da NVIDIA, clique em AGREE AND CONTINUE.
    2. Selecione o tipo de instalação Express (Recommended).
    3. Quando a instalação terminar, feche o instalador da NVIDIA.
  7. Verifique se o driver está funcionando. No PowerShell, execute o comando:

    nvidia-smi
    

    O resultado será assim:

    +-----------------------------------------------------------------------------+
    | NVIDIA-SMI 537.13       Driver Version: 537.13       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   44C    P8    13W /  72W |     94MiB / 23034MiB |      5%      Default |
    |                               |                      |                  N/A |
    +-------------------------------+----------------------+----------------------+
    
    +-----------------------------------------------------------------------------+
    | Processes:                                                                  |
    |  GPU   GI   CI       PID   Type   Process name                   GPU Memory |
    |        ID   ID                                                   Usage      |
    |=============================================================================|
    |    0   N/A  N/A     6696   C+G   ...CBS_cyewy\TextInputHost.exe    N/A      |
    +-----------------------------------------------------------------------------+
    

Instalar o software HP Anyware

O software HP Anyware fornece um agente gráfico que é executado na estação de trabalho virtual para fornecer a área de trabalho ao cliente de hardware ou software.

  1. Na instância do Windows, abra o Google Chrome e acesse a seção PCoIP Hosts na página de suporte da Teradici.
  2. Faça o download do Graphics Agent for Windows.
  3. Se você ainda não estiver conectado, clique em Fazer login para fazer o download.
  4. Clique em Downloads e scripts.
  5. Conclua o processo de instalação do agente e escolha a opção para executar o agente gráfico baixado. Siga as instruções para instalar o agente gráfico no local padrão.

Registrar o agente de gráficos PCoIP

Quando o processo de instalação estiver concluído, você receberá uma solicitação para fornecer um código de registro.

  1. Na janela Registro da licença, insira o código de registro que você recebeu durante o processo de inscrição no teste.

  2. Depois, reinicialize a instância do Windows.

Criar uma regra de firewall

O cliente PCoIP se comunica com a estação de trabalho virtual usando várias portas. Defina regras de firewall que permitam o tráfego para sua estação de trabalho virtual.

  • No Cloud Shell instalado no computador local (e 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
    

Fazer login na estação de trabalho virtual usando o cliente PCoIP

  1. No computador local, acesse a seção PCoIP Clients na página de suporte do HP Anyware, faça o download, a instalação e a inicialização do software do aplicativo PCoIP Client para o sistema operacional.

  2. No campo Host Address ou Registration Code, insira o endereço IP externo da sua estação de trabalho virtual. Se quiser, insira um nome para a conexão.

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

    Em alguns segundos, a área de trabalho do Windows será exibida.

Ativar áudio na estação de trabalho virtual

Para ativar o áudio na estação de trabalho virtual, ative o Teradici Virtual Audio Driver como o dispositivo de reprodução padrão.

  1. Na VM do Windows, clique no botão "Iniciar" na barra de tarefas do Windows e digite mmsys.cpl para abrir o painel de controle de som e inicializar o driver de áudio virtual Teradici.

  2. Clique em Sim. O Windows confirma se o driver de áudio está funcionando.

Testar a estação de trabalho virtual

Depois de implantar a estação de trabalho virtual, é possível testar o desempenho e a interatividade dela usando várias ferramentas:

Saiba mais sobre a otimização de desempenho do PCoIP com base na carga de trabalho.

Limpar

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

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

    Go to Manage resources

  2. If the project that you plan to delete is attached to an organization, expand the Organization list in the Name column.
  3. In the project list, select the project that you want to delete, and then click Delete.
  4. In the dialog, type the project ID, and then click Shut down to delete the project.

Excluir todos os componentes

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

A seguir