Note:

Migración de nodos de GPU con hardware dedicado a OKE como nodos autogestionados mediante una pila de OCI

Introducción

En este tutorial, analizaremos el proceso de migración de nodos de GPU con hardware dedicado (BM) a nodos autogestionados de Oracle Cloud Infrastructure Kubernetes Engine (OKE) mediante una pila de Oracle Cloud Infrastructure (OCI).

En primer lugar, entendamos qué son los nodos autogestionados y por qué son ideales para ejecutar GPU en OKE.

¿Qué son los nodos autogestionados de OKE?

Como su nombre indica, los nodos autogestionados son totalmente controlados y mantenidos por el cliente. Esto incluye el aprovisionamiento, la ampliación, la configuración, las actualizaciones y las tareas de mantenimiento, como la aplicación de parches del sistema operativo (SO) y la sustitución de nodos. Si bien este enfoque requiere una gestión más manual, proporciona la máxima flexibilidad y control, por lo que es adecuado para cargas de trabajo especializadas como las que se ejecutan en GPU.

Funciones clave de los nodos autogestionados:

En este tutorial se trata un caso de uso en el que las cargas de trabajo de GPU A100 de BM se ejecutan actualmente en un cluster de Slurm en OCI, con el objetivo de migrarlas a un cluster de OKE. Esto se puede lograr mediante la pila de OKE de recursos informáticos de alto rendimiento (HPC) para desplegar un cluster de OKE vacío y, a continuación, agregarle los nodos de GPU existentes.

Objetivos

Requisitos

Tarea 1: Migración de nodos de GPU BM A100 a OKE mediante la pila de OKE de HPC

  1. Conéctese a la consola de OCI y cree las políticas necesarias como se menciona en esta página GitHub: Ejecución de cargas de trabajo de GPU RDMA (acceso directo a memoria remota) en OKE.

  2. Haga clic en Desplegar en Oracle Cloud y revise las condiciones.

    Github Page

  3. Seleccione la región en la que desea desplegar la pila.

  4. En la página Información de pila, introduzca Nombre para la pila.

    Creación de una pila

  5. En la página Configurar variable, introduzca Nombre para la VCN.

    Proporcionar nombre

  6. En la sección Bastion & Operator, introduzca la información de instancia de Bastion y agregue la clave SSH para la instancia de Bastion.

    Proporcionar VCN y bastión

  7. (Opcional) Seleccione Configurar unidad de operador para crear un nodo de operador para supervisar o ejecutar trabajos.

    Unidad de operador

  8. Configure variables de cluster de OKE, nodos de Workers: Operational y nodos de Workers: GPU + RDMA. Asegúrese de seleccionar Flannel CNI para usar en redes de pod.

    Proporcionar conf de cluster de OKE

    Nodo de trabajador para operaciones

    Nodo de trabajador para GPU RDMA

  9. Seleccione Create a RAID 0 array using local NVMe drives y Install Node Problem Detector & Kube Prometheus Stack.

    Crear almacenamiento

  10. Revise la información de pila y haga clic en Crear.

    Revisar antes de hacer clic en Crear

  11. Revise los detalles de pila en Resource Manager y verifique el cluster de OKE en la sección Kubernetes de la consola de OCI.

    comprobar detalles de pila

    Cluster de OKE en ejecución

  12. Conéctese al cluster de OKE mediante el cluster de acceso a través de la consola de OCI y continúe agregando nuevos nodos de GPU.

  13. Siga todos los pasos mencionados aquí: Creación de un grupo dinámico y una política para nodos autogestionados.

  14. Siga los pasos 1 y 2 mencionados aquí: Creación de scripts de Cloud-init para nodos autogestionados.

  15. Ejecute el siguiente script para agregar los nodos de GPU al cluster de OKE.

    sudo rm archive_uri-https_objectstorage_ap-osaka-1_oraclecloud_com_p_ltn5w_61bxynnhz4j9g2drkdic3mwpn7vqce4gznmjwqqzdqjamehhuogyuld5ht_n_hpc_limited_availability_b_oke_node_repo_o_ubuntu-jammy.list
    
    sudo apt install -y oci-oke-node-all*
    
    sudo oke bootstrap --apiserver-host <API SERVER IP> --ca <CA CERT> --manage-gpu-services --crio-extra-args "
    
  16. Ejecute el siguiente comando para verificar que los nodos se hayan agregado correctamente al cluster de OKE.

    kubectl get nodes
    

Agradecimientos

Más recursos de aprendizaje

Explore otros laboratorios en docs.oracle.com/learn o acceda a más contenido de formación gratuita en el canal YouTube de Oracle Learning. Además, visite education.oracle.com/learning-explorer para convertirse en un explorador de Oracle Learning.

Para obtener documentación sobre el producto, visite Oracle Help Center.