Cómo crear una estación de trabajo virtual acelerada con GPU

En este instructivo, se muestra cómo crear una estación de trabajo virtual de Windows que ejecute Windows Server 2016 con una GPU adjunta con capacidad de visualización. Para crear una estación de trabajo de Linux, consulta el instructivo Crea una estación de trabajo virtual de Linux acelerada mediante GPU. Google Cloud ofrece tres GPU con capacidad de visualización: NVIDIA T4, NVIDIA Tesla P4 y NVIDIA Tesla P100.

Luego de crear la estación de trabajo virtual, aprenderás cómo acceder a ella de forma remota mediante PC-over-IP (PCoIP) de Teradici, un protocolo de escritorio remoto muy usado en los medios de comunicación y la industria del entretenimiento. PCoIP ofrece características esenciales para las cargas de trabajo de producción de medios de comunicación, como la precisión del color y asistencia en la visualización de imágenes sin pérdidas.

Objetivos

  • Crear una instancia de Compute Engine con una GPU. Esta instancia funciona como el cimiento de la estación de trabajo virtual
  • Instalar los controladores de NVIDIA en la estación de trabajo virtual
  • Instalar Cloud Access Software de Teradici en la estación de trabajo virtual
  • Conectarse a la estación de trabajo virtual mediante un cliente de software PCoIP o Zero Client, un tipo de extremo de hardware

Costos

En este instructivo, se usan los siguientes componentes facturables de Google Cloud:

Puedes usar la calculadora de precios para generar una estimación de costos según el uso previsto. En el momento en que se escribe este instructivo, el costo aproximado de la configuración de una estación de trabajo de medios típica es de $2.26 por hora.

A continuación, se detallan los recursos que componen la estación de trabajo virtual y los factores que influyen en los costos de este instructivo:

La salida de Internet representa los datos que se transmiten desde tu estación de trabajo virtual hacia tu cliente de visualización local y se factura según las tarifas de salida de Internet. Las variables que influyen sobre la salida de datos durante una sesión de PCoIP son el ancho de banda, la resolución de pantalla, la cantidad de monitores de visualización, las aplicaciones que se usan y el tipo de actividad en cada monitor. El costo del ejemplo se basa en un uso promedio de 10 Mbps. En la guía de planificación de flujos de trabajo de Teradici, encontrarás información sobre los diferentes requisitos de las cargas de trabajo.

Antes de comenzar

En este instructivo, se usan los comandos de gcloudgsutil, que puedes ejecutar desde una instancia de Cloud Shell desde Cloud Console. Si deseas usar gcloudgsutil en la estación de trabajo local, instala el SDK de Cloud. En el instructivo, se muestra cómo ejecutar comandos en Cloud Shell. Si usas el SDK de Cloud en la estación de trabajo, ajusta las instrucciones según corresponda.

  1. Accede a tu cuenta de Google Cloud. Si eres nuevo en Google Cloud, crea una cuenta para evaluar el rendimiento de nuestros productos en situaciones reales. Los clientes nuevos también obtienen $300 en créditos gratuitos para ejecutar, probar y, además, implementar cargas de trabajo.
  2. En la página del selector de proyectos de Google Cloud Console, selecciona o crea un proyecto de Google Cloud.

    Ir al selector de proyectos

  3. Comprueba que la facturación esté habilitada en tu proyecto.

    Descubre cómo puedes habilitar la facturación

  4. Habilita la API Compute Engine.

    Habilita la API

  5. En la página del selector de proyectos de Google Cloud Console, selecciona o crea un proyecto de Google Cloud.

    Ir al selector de proyectos

  6. Comprueba que la facturación esté habilitada en tu proyecto.

    Descubre cómo puedes habilitar la facturación

  7. Habilita la API Compute Engine.

    Habilita la API

Además, asegúrate de que cuentas con los siguientes elementos:

  • Un proyecto de Google Cloud con cuota para GPU de estaciones de trabajo virtuales en la zona seleccionada Puedes obtener una lista de disponibilidad de GPU mediante el comando gcloud compute accelerator-types list
  • Un navegador de Google Chrome para acceder a Cloud Console
  • La extensión de RDP de Chrome para Google Cloud para el acceso inicial a la estación de trabajo virtual
  • Un Zero Client de Teradici o el cliente de software de Teradici más reciente para Windows, Mac o Linux, a fin de acceder a la estación de trabajo virtual
  • Una licencia de Cloud Access Software de Teradici. Puedes registrarte para obtener una licencia de prueba o comunicarte con un representante de Teradici. Obtendrás un código de registro de prueba de 30 días para usar en esta estación de trabajo virtual.

Información sobre la arquitectura

En el siguiente diagrama, se muestran los componentes usados en este instructivo para implementar una única estación de trabajo virtual. Entre los componentes opcionales que se muestran en el diagrama, se incluyen diferentes formas de conectarte a la estación de trabajo virtual, el almacenamiento de objetos, el almacenamiento compartido y una instancia adicional para entregar licencias de terceros.

Arquitectura de la estación de trabajo virtual

Elige un acelerador

Un factor importante para implementar una estación de trabajo virtual es la latencia entre tu ubicación y la instancia creada. Mientras menor sea la latencia, mejor será la experiencia. Por lo tanto, es preferible que trabajes en una zona que se encuentre lo más cerca posible a ti geográficamente. Para obtener más información sobre las regiones y las zonas, consulta Geografía y regiones.

  1. Abre Cloud Shell (si usas el SDK de Cloud, abre una ventana de terminal en tu computadora).

    Ir a Cloud Shell

  2. Obtén una lista de las zonas en las que las GPU se encuentran disponibles:

    gcloud compute accelerator-types list
    

    Toma nota de la zona que se encuentra físicamente más cerca de ti.

  3. Establece la zona con la que quieres trabajar:

    gcloud config set compute/zone zone

    Reemplaza zone por el nombre de la zona que usas, como us-west2-b.

Selecciona un tipo de máquina

Puedes adjuntar las GPU P4 a cualquier tipo de máquina, pero cada GPU que se agregue a una estación de trabajo virtual debe emparejarse con una cantidad mínima de CPU virtuales. Esto evita el exceso de suscripciones a cualquier recurso. En NVIDIA Tesla P4, puedes conectar hasta 24 CPU virtuales a 1 GPU. Para agregar más de 24 CPU virtuales a la estación de trabajo virtual, debes agregar una GPU P4 adicional por cada 24 CPU virtuales adicionales. Por ejemplo, para una estación de trabajo virtual con 48 CPU virtuales, debes conectar 2 GPU P4.

En el ejemplo de este instructivo, se muestra una estación de trabajo virtual de 24 CPU virtuales, que es la cantidad máxima de CPU virtuales que permite la GPU de NVIDIA Tesla P4.

Crea la estación de trabajo virtual

El agente de gráficos de Teradici (que instalarás más adelante en tu estación de trabajo virtual con este instructivo) te solicita que habilites el reenvío de IP y que permitas el tráfico del servidor HTTPS durante la creación de la estación de trabajo virtual.

  1. En Cloud Shell, crea la instancia de estación de trabajo virtual de Compute Engine. Debes proporcionar valores para los marcadores de posición, como name.

    gcloud compute instances create name \
        --machine-type machine-type \
        --accelerator type=accelerator,count=num-gpus \
        --can-ip-forward \
        --maintenance-policy "TERMINATE" \
        --tags "https-server" \
        --image-project windows-cloud \
        --image-family windows-2016 \
        --boot-disk-size size

    Por ejemplo:

    gcloud compute instances create test-vws \
        --machine-type custom-24-32768 \
        --accelerator type=nvidia-tesla-p4-vws,count=1 \
        --can-ip-forward \
        --maintenance-policy "TERMINATE" \
        --tags "https-server" \
        --image-project windows-cloud \
        --image-family windows-2016 \
        --boot-disk-size 100
    

    Luego de crear la estación de trabajo virtual, se mostrará el estado de la máquina. El resultado es similar a este:

    Created [https://www.googleapis.com/compute/v1/projects/project/zones/us-west2-b/instances/test-vws].
    NAME ZONE MACHINE_TYPE PREEMPTIBLE INTERNAL_IP EXTERNAL_IP STATUS test-vws us-west2-b custom (24 vCPU, 32.00 GiB) 10.168.0.3 XX.XXX.XX.XXX RUNNING

    La estación de trabajo virtual se crea en la red de VPC predeterminada del proyecto. Si deseas crear la estación de trabajo virtual en una red de VPC diferente, agrega la siguiente marca al comando:

    --network=network
    

    Reemplaza network por el nombre de la red que usarás.

  2. Toma nota de la dirección IP externa de la estación de trabajo virtual en la lista, La usarás más adelante en el instructivo.

    Puedes recuperar la dirección IP externa de la estación de trabajo virtual en cualquier momento desde Cloud Console.

Crea una contraseña de Windows

Utiliza un protocolo de escritorio remoto (RDP) para acceder a la estación de trabajo virtual de Windows y, luego, instala los controladores de gráficos de NVIDIA. A fin de acceder con un RDP, debes crear una contraseña de Windows para tu usuario.

  1. Ve a la sección Compute Engine en Cloud Console.

    Ir a la página Compute Engine

  2. En la columna Conectar en la instancia de estación de trabajo virtual, selecciona Set Windows password (Configurar contraseña de Windows) en la lista desplegable.

    Configura la contraseña de Windows en Cloud Console.

    Se te solicitará que verifiques el nombre de usuario y verás una advertencia sobre la pérdida de acceso a los datos encriptados si restableces la contraseña. Puedes ignorar esta advertencia, ya que este es un disco nuevo y no existen datos del usuario en tu estación de trabajo virtual.

  3. Cuando se muestre tu contraseña de Windows, cópiala y luego haz clic en Cerrar.

    Toma nota de esta contraseña, ya que vas a necesitarla en el siguiente paso para acceder a tu estación de trabajo virtual a través del cliente RDP. Guarda esta contraseña en una ubicación segura.

Cómo acceder a tu estación de trabajo virtual

Luego de crear la estación de trabajo virtual, debes acceder a la máquina para poder configurarla.

  1. En la sección Compute Engine de Cloud Console, haz clic en el botón RDP junto a la instancia de estación de trabajo virtual.

    Si no instalaste la extensión RDP de Chrome para Google Cloud, se te solicitará que lo hagas. Instala la extensión y vuelve a hacer clic en el botón RDP.

  2. Cuando se te soliciten las credenciales, deja el campo Domain (Dominio) en blanco y, luego, ingresa la contraseña que generaste en el paso anterior.

    Conéctate a la estación de trabajo virtual de Windows y, luego, ingresa una contraseña.

  3. Si ves la siguiente advertencia del certificado, omítela y haz clic en Continue (Continuar).

    Advertencia del certificado de conexión de Windows

Aparecerá el escritorio de la estación de trabajo virtual. Espera que el Administrador del servidor de Windows termine de ejecutarse antes de continuar con el siguiente paso. Cuando el Administrador del servidor esté listo, verás una pantalla como la que se muestra a continuación:

Visualización del Administrador del servidor de Windows en la estación de trabajo virtual

Configura la seguridad mejorada de IE

La imagen predeterminada de Windows Server 2016 contiene una configuración de seguridad predeterminada para evitar que descargues archivos desde Internet. Para descargar el controlador de NVIDIA, debes inhabilitar estas funciones de seguridad.

  1. En Administrador del servidor, haz clic en Servidor local, ubicado a la izquierda.
  2. Haz clic en Activado, al lado de IE Enhanced Security Configuration (Configuración de seguridad mejorada de IE).
  3. En el cuadro de diálogo, desactiva la Enhanced Security (Seguridad mejorada) para Administradores y Usuarios:

    Cuadro de diálogo de Seguridad mejorada

  4. Cierra las ventanas IE Enhanced Security Configuration (Configuración de seguridad mejorada de IE) y Server Manager (Administrador del servidor).

Instala el controlador de NVIDIA

Las GPU de NVIDIA T4, NVIDIA Tesla P4 y NVIDIA Tesla P100 funcionan en Google Cloud solo con controladores calificados de NVIDIA Quadro Virtual Data Center Workstation (vWS) para las cargas de trabajo de procesamiento y visualización. Puedes descargar estos controladores desde un bucket de almacenamiento público.

  1. En el escritorio de Windows de la estación de trabajo virtual, haz doble clic en el ícono de la Shell del SDK de Google Cloud para abrirla.

  2. Obtén un listado de los controladores más recientes:

    gsutil ls gs://nvidia-drivers-us-public/GRID
    

    En este instructivo, se usan los controladores de gráficos más recientes disponibles al momento de escribirlo:

    GRID11.1 Windows driver (452.39_grid_win10_server2016_server2019_64bit_international.exe)

    Puedes encontrar el controlador calificado más reciente en el directorio GRID con el número de versión más alto; si encuentras un controlador más nuevo, utiliza ese.

  3. En el SDK de Google Cloud Shell, descarga y, luego, instala los controladores. Si usas una versión del controlador más reciente que 452.39, cambia el comando según corresponda.

    gsutil -m cp gs://nvidia-drivers-us-public/GRID/GRID11.1/452.39_grid_win10_server2016_server2019_64bit_international.exe %USERPROFILE%/Downloads
    
  4. Abre el Explorador de archivos de Windows y ve al directorio Downloads de tu usuario.

  5. En el directorio, haz clic derecho en el controlador de NVIDIA y selecciona Ejecutar como administrador.

    Sigue las instrucciones para instalar el controlador en la ubicación predeterminada:

    1. Si aceptas los términos de la licencia de NVIDIA, haz clic en Aceptar y continuar.
    2. Selecciona Express (Recomendado) como tipo de instalación.
    3. Una vez finalizada la instalación, cierra el instalador de NVIDIA.
  6. Verifica que el controlador funcione. En la Shell del SDK de Google Cloud, ejecuta este comando (incluidas las comillas dobles):

    "C:\Program Files\NVIDIA Corporation\NVSMI\nvidia-smi.exe"

    El resultado es similar al siguiente:

    +-----------------------------------------------------------------------------+
    | NVIDIA-SMI 452.39       Driver Version: 452.39       CUDA Version: 11.0     |
    |-------------------------------+----------------------+----------------------+
    | 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  Tesla P4           WDDM  | 00000000:00:04.0 Off |                    0 |
    | N/A   37C    P8     8W /  75W |    222MiB /  7680MiB |      7%      Default |
    |                               |                      |                  N/A |
    +-------------------------------+----------------------+----------------------+
    
    +-----------------------------------------------------------------------------+
    | Processes:                                                                  |
    |  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
    |        ID   ID                                                   Usage      |
    |=============================================================================|
    |    0   N/A  N/A         8    C+G   ...dows\System32\LogonUI.exe    N/A      |
    |    0   N/A  N/A      6756    C+G   C:\Windows\System32\dwm.exe     N/A      |
    |    0   N/A  N/A      7544    C+G   C:\Windows\System32\dwm.exe     N/A      |
    +-----------------------------------------------------------------------------+
    

    Si el resultado que ves no es como el anterior, consulta la sección de Solución de problemas que se encuentra más abajo en este instructivo.

Instala Cloud Access Software de Teradici

Cloud Access Software de Teradici proporciona un agente de gráficos que se ejecuta en la estación de trabajo virtual y entrega el escritorio a tu cliente de hardware o software.

  1. En la instancia de Windows, abre Internet Explorer y ve a la sección PCoIP Hosts en la página de asistencia de Teradici.
  2. Descarga Graphics Agent de Teradici para Windows.
  3. Completa el proceso de instalación del agente y elige la opción para ejecutar el ejecutable del agente de gráficos descargado. Sigue las instrucciones para instalar el agente de gráficos en la ubicación predeterminada.

Registra Graphics Agent de Teradici

Una vez finalizado el proceso de instalación, se te solicitará un código de registro.

  1. Ingresa el código de registro que obtuviste con anterioridad.

    Registrar el código de registro de Teradici

  2. Luego de ingresar el código de registro, reinicia la instancia de Windows.

Cómo crear una regla de firewall

El cliente PCoIP se comunica con tu estación de trabajo virtual a través de varios puertos. Debes configurar reglas de firewall para permitir la entrada y salida de tráfico a tu estación de trabajo virtual.

  • Desde Cloud Shell en tu computadora local (no en la estación de trabajo virtual), crea una regla de firewall para abrir los puertos requeridos:

    gcloud compute firewall-rules create allow-teradici \
        --allow tcp:443,tcp:4172,udp:4172,tcp:60443
    

Accede a la estación de trabajo virtual con el cliente PCoIP

  1. En la computadora local, ve a la sección Clientes PCoIP en la página de asistencia de Teradici. Después, descarga, instala y, luego, inicia la aplicación del cliente PCoIP para el sistema operativo.

  2. Selecciona Conexión nueva.

  3. En el campo Dirección de host, ingresa la dirección IP externa de tu estación de trabajo virtual. Si quieres, puedes ingresar un nombre para la conexión.

    Asignar una dirección IP externa a una estación de trabajo virtual

  4. Una vez que estés conectado, ingresa el nombre de usuario y la contraseña que creaste para tu estación de trabajo virtual a fin de autenticarte.

    Ingresa el nombre de usuario y contraseña para acceder a la estación de trabajo virtual.

  5. Selecciona el escritorio que desees ejecutar y haz clic en Connect (Conectar).

    Conectarse a la estación de trabajo virtual

    Luego de unos segundos, verás el escritorio de Windows.

    Visualización del escritorio de Windows en la estación de trabajo virtual

Prueba la estación de trabajo virtual

Luego de implementar tu estación de trabajo virtual, debes probar el rendimiento y la interactividad a través de varias herramientas:

  • Utiliza una de las demostraciones de GPU de NVIDIA para probar el rendimiento de los gráficos en una estación de trabajo de Windows.
  • Instala Blender, un paquete de software 3D de código abierto.
  • Ejecuta herramientas comparativas de procesamiento para procesadores populares, como V-Ray, Octane o Maxon.
  • Instala Google Chrome para navegar por tus sitios favoritos o reproducir videos en YouTube.

Solución de problemas

En esta sección, verás una lista de los problemas que puedes encontrar cuando configuras o te conectas a la estación de trabajo.

El audio no funciona

Problema: no se escucha ningún sonido de la estación de trabajo virtual de Windows.

Solución: Debido a cómo funciona el agente de gráficos de Teradici, es posible que debas habilitar de forma manual el Servicio de audio de Windows en la instancia.

  1. Accede a la instancia de Windows y haz clic en Inicio > Panel de control > Hardware > Sonido para abrir el Panel de control de Sonido.

    Mensaje de error en el que se muestra que el Servicio de audio de Windows no se encuentra habilitado.

  2. Haz clic en Yes (Sí). Windows verificará que el controlador de audio esté funcionando:

    Cuadro de diálogo de sonido de Windows en el que se muestra el controlador de audio virtual de Teradici.

    Si el sonido funciona, oyes el sonido de la estación de trabajo virtual de Windows.

Falló NVIDIA-SMI

Problema: NVIDIA-SMI falló porque no pudo comunicarse con el controlador de NVIDIA.

Solución: Reinstala el controlador y, luego, intenta volver a ejecutar nvidia-smi.

No es posible conectarse a la estación de trabajo virtual

Problema: Usas un Zero Client de PCoIP y no puedes conectarte a la estación de trabajo virtual.

Solución: Asegúrate de que tu Zero Client tenga instalada la versión de firmware 6.1 o superior antes de conectarte a la estación de trabajo virtual. Para obtener más información, contacta a un representante de Teradici.

Limpia

Para evitar que se apliquen cargos a tu cuenta de Google Cloud por los recursos usados en este instructivo, borra el proyecto que contiene los recursos o conserva el proyecto y borra los recursos individuales.

Una vez que completaste el instructivo, borra los recursos que creaste en Google Cloud a fin de que no se te cobre por ellos en el futuro.

Detén tu estación de trabajo virtual

Las estaciones de trabajo virtuales detenidas generan costos por el uso del disco persistente, pero pueden reiniciarse en cualquier momento. Para detener tu estación de trabajo virtual, ejecuta el siguiente comando en Cloud Shell:

gcloud compute instances stop test-vws

Borra el proyecto

  1. En Cloud Console, ve a la página Administrar recursos.

    Ir a Administrar recursos

  2. En la lista de proyectos, elige el proyecto que quieres borrar y haz clic en Borrar.
  3. En el diálogo, escribe el ID del proyecto y, luego, haz clic en Cerrar para borrar el proyecto.

Borra todos los componentes

  1. Borra la estación de trabajo virtual.
  2. Borra la regla de firewall.

Pasos siguientes