Para permitir que los desarrolladores implementen cargas de trabajo de AI/ML en clústeres de TKG, como operador de clúster, configure el entorno de Kubernetes para que admita operaciones de NVIDIA vGPU.

Paso 1 del operador: verificar los requisitos previos

En estas instrucciones se supone que el administrador de vSphere configuró el entorno para NVIDIA vGPU. Consulte Flujo de trabajo del administrador de vSphere para implementar cargas de trabajo de AI/ML en clústeres de TKG en Supervisor.

En estas instrucciones se supone que va a instalar la edición NVIDIA AI Enterprise (NVAIE) del operador de GPU, la cual está preconfigurada y optimizada para usarla con vSphere with Tanzu. El operador de GPU de NVAIE es diferente del operador de GPU que está disponible en el catálogo público de NGC. Consulte NVIDIA AI Enterprise para obtener más información.

En estas instrucciones se supone que está utilizando una versión del operador de GPU NVAIE y el controlador de vGPU que tiene un VIB correspondiente para ESXi. Consulte Versiones del operador de GPU de NVIDIA para obtener más información.

Al aprovisionar el clúster de TKG, debe utilizar la edición de Ubuntu de la TKR. Con TKG en Supervisor de vSphere 8, la edición de Ubuntu se especifica en el YAML del clúster mediante la anotación.

Paso 2 del operador: Aprovisionar un clúster de TKG para vGPU

Para aprovisionar un clúster de TKG 2 para que aloje cargas de trabajo de vGPU, realice los siguientes pasos.
  1. Instale Herramientas de la CLI de Kubernetes para vSphere.

    Consulte Instalar el Herramientas de la CLI de Kubernetes para vSphere.

  2. Si utiliza el complemento de vSphere para kubectl, autentíquese en el Supervisor.
    kubectl vsphere login --server=IP-ADDRESS --vsphere-username USERNAME
  3. Con kubectl, cambie el contexto al espacio de nombres de vSphere que creó el administrador de vSphere para el clúster de GPU TKG.
    kubectl config get-contexts
    kubectl config use-context TKG-GPU-CLUSTER-NAMESPACE
  4. Obtenga el nombre de la clase de máquina virtual personalizada con el perfil de vGPU que creó el administrador de vSphere.
    kubectl get virtualmachineclassbindings
    Nota: La clase de máquina virtual debe estar enlazada al espacio de nombres de vSphere de destino.
  5. Obtenga el TKR NAME de la versión de Tanzu Kubernetes de Ubuntu que sincronizó el administrador de vSphere desde la biblioteca de contenido y agregó al espacio de nombres de vSphere.
    kubectl get tkr
  6. Cree el YAML para aprovisionar el clúster de TKG habilitado para vGPU.

    Comience con el ejemplo proporcionado aquí: Ejemplo de v1alpha3: TKC con Ubuntu TKR. Utilice la información que recopiló entre los resultados de los comandos anteriores para personalizar la especificación del clúster.

  7. Ejecute el siguiente comando kubectl para aprovisionar el clúster.
    kubectl apply -f CLUSTER-NAME.yaml
    Por ejemplo:
    kubectl apply -f tkg-gpu-cluster-1.yaml
  8. Compruebe el aprovisionamiento del clúster.
    Supervise la implementación de nodos del clúster mediante kubectl.
    kubectl get tanzukubernetesclusters -n NAMESPACE
  9. Inicie sesión en el clúster de TKG con el complemento de vSphere para kubectl.
    kubectl vsphere login --server=IP-ADDRESS --vsphere-username USERNAME \
    --tanzu-kubernetes-cluster-name CLUSTER-NAME --tanzu-kubernetes-cluster-namespace NAMESPACE-NAME
  10. Compruebe el clúster.
    Con los comandos siguientes, compruebe el clúster:
    kubectl cluster-info
    kubectl get nodes
    kubectl get namespaces
    kubectl api-resources

Paso 3 del operador: instalar el operador de GPU con NVIDIA AI Enterprise

NVIDIA proporciona un operador de GPU preconfigurado para los clientes de NVIDIA AI Enterprise. En estas instrucciones se supone que está utilizando esta versión preconfigurada del operador de GPU. Estas instrucciones se basan en las instrucciones que proporciona NVIDIA para instalar el operador de GPU, pero que se actualizaron para TKG en vSphere 8.

Complete los siguientes pasos para instalar el operador de GPU NVIDIA AI Enterprise en el clúster de TKG que aprovisionó.
  1. Para instalar Helm, consulte la documentación de Helm.
  2. Cree el espacio de nombres de Kubernetes gpu-operator.
    kubectl create namespace gpu-operator
  3. Cree un archivo de configuración de licencia de vGPU vacío.
    sudo touch gridd.conf
  4. Genere y descargue un token de licencia de cliente NLS.

    Consulte la Sección 4.6. Generar un token de configuración de cliente de la Guía de usuario del sistema de licencias de NVIDIA.

  5. Cambie el nombre del token de licencia de cliente NLS que descargó en client_configuration_token.tok.
  6. Cree el objeto licensing-config de ConfigMap en el espacio de nombres gpu-operator.
    Incluya el archivo de configuración de licencia de vGPU ( gridd.conf) y el token de licencia de cliente NLS ( *.tok) en este ConfigMap
    kubectl create configmap licensing-config \
        -n gpu-operator --from-file=gridd.conf --from-file=<path>/client_configuration_token.tok
  7. Cree un secreto de extracción de imágenes para el registro privado que contenga el controlador de gráficos de software vGPU NVIDIA en contenedor para Linux para usarlo con el operador de GPU NVIDIA.
    Cree el secreto de extracción de imágenes en el espacio de nombres gpu-operator con el nombre del secreto de registro ngc-secret y el nombre del registro privado nvcr.io/nvaie. Incluya la clave de API de NGC y la dirección de correo electrónico en los campos que se indican.
    kubectl create secret docker-registry ngc-secret \
    --docker-server=‘nvcr.io/nvaie’ \
    --docker-username=‘$oauthtoken’ \
    --docker-password=<YOUR_NGC_API_KEY> \
    --docker-email=<YOUR_EMAIL_ADDRESS> \
    -n gpu-operator
  8. Descargue el gráfico de Helm para la versión 2.2 del operador de GPU NVAIE.
    Reemplace YOUR API KEY.
    helm fetchhttps://helm.ngc.nvidia.com/nvaie/charts/gpu-operator-2-2-v1.11.1.tgz--username=‘$oauthtoken’ \
    --password=<YOUR API KEY>
  9. Instale la versión 2.2 del operador de GPU NVAIE en el clúster de TKG.
    helm install gpu-operator ./gpu-operator-2-2-v1.11.1.tgz -n gpu-operator

Paso 4 del operador: implementar una carga de trabajo de AI/ML

El catálogo de NVIDIA GPU Cloud ofrece varias imágenes de contenedor que se encuentran disponibles para ejecutar cargas de trabajo de AI/ML en los clústeres de Tanzu Kubernetes habilitados para vGPU. Para obtener más información sobre las imágenes disponibles, consulte la documentación de NGC.