Note :

Migrer des noeuds de GPU sans système d'exploitation vers OKE en tant que noeuds autogérés à l'aide d'une pile OCI

Présentation

Dans ce tutoriel, nous traiterons le processus de migration des noeuds sans système d'exploitation vers des noeuds autogérés Oracle Cloud Infrastructure Kubernetes Engine (OKE) à l'aide d'une pile Oracle Cloud Infrastructure (OCI).

Comprenons d'abord ce que sont les noeuds autogérés et pourquoi ils sont idéaux pour exécuter des GPU sur OKE.

Quels sont les noeuds autogérés OKE?

Comme son nom l'indique, les noeuds autogérés sont entièrement contrôlés et gérés par le client. Cela inclut le provisionnement, l'évolutivité, la configuration, les mises à niveau et les tâches de maintenance, telles que l'application de correctifs au système d'exploitation et le remplacement des noeuds. Bien que cette approche nécessite une gestion plus manuelle, elle offre un maximum de flexibilité et de contrôle, ce qui la rend adaptée aux charges de travail spécialisées telles que celles exécutées sur des processeurs graphiques.

Principales caractéristiques des noeuds autogérés :

Ce tutoriel couvre un cas d'utilisation où des charges de travail de GPU BM A100 sont actuellement exécutées sur une grappe Slurm dans OCI, dans le but de les migrer vers une grappe OKE. Pour ce faire, vous pouvez utiliser la pile OKE de calcul de haute performance pour déployer une grappe OKE vide, puis y ajouter les noeuds GPU existants.

Objectifs

Préalables

Tâche 1 : Migrer des noeuds GPU BM A100 vers OKE à l'aide de la pile OKE de calcul de haute performance

  1. Connectez-vous à la console OCI et créez les politiques nécessaires, comme indiqué dans cette page GitHub : Exécution des charges de travail GPU RDMA (accès direct à la mémoire distante) sur OKE.

  2. Cliquez sur Déployer vers Oracle Cloud et vérifiez les conditions générales.

    Page Github

  3. Sélectionnez la région dans laquelle déployer la pile.

  4. Dans la page Informations sur la pile, entrez Nom de votre pile.

    Créer une pile

  5. Dans la page Configurer la variable, entrez Nom pour votre VCN.

    Indiquer un nom

  6. Dans la section Hôte bastion et opérateur, entrez les informations sur l'instance d'hôte bastion et ajoutez une clé SSH pour l'instance d'hôte bastion.

    Fournir le VCN et l'hôte bastion

  7. (Facultatif) Sélectionnez Configurer la forme de l'opérateur pour créer un noeud d'opérateur pour surveiller ou exécuter des tâches.

    Forme de l'opérateur

  8. Configurez des variables pour les noeuds Grappe OKE, Travailleurs : Opérationnels et Travailleurs : GPU + RDMA. Veillez à sélectionner le CNI Canal à utiliser pour le réseau de pods.

    Fournir une configuration de grappe OKE

    Noeud de travail pour les opérations

    Noeud de travail pour GPU RDMA

  9. Sélectionnez Créer un tableau RAID 0 à l'aide des lecteurs NVMe locaux et Installer le détecteur de problèmes de noeud et la pile Kube Prometheus.

    Créer un stockage

  10. Vérifiez les informations de la pile et cliquez sur Créer.

    Réviser avant de cliquer sur Créer

  11. Consultez les détails de la pile dans le gestionnaire de ressources et vérifiez la grappe OKE dans la section Kubernetes de la console OCI.

    vérifier les détails de la pile

    Grappe OKE en cours d'exécution

  12. Connectez-vous à la grappe OKE à l'aide de la grappe d'accès au moyen de la console OCI et ajoutez-y de nouveaux noeuds GPU.

  13. Suivez toutes les étapes mentionnées ici : Création d'un groupe dynamique et d'une politique pour les noeuds autonomes.

  14. Suivez les étapes 1 et 2 mentionnées ici : Création de scripts Cloud-init pour les noeuds autogérés.

  15. Exécutez le script suivant pour ajouter les noeuds GPU à la grappe 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. Exécutez la commande suivante pour vérifier que les noeuds ont bien été ajoutés à la grappe OKE.

    kubectl get nodes
    

Remerciements

Autres ressources d'apprentissage

Explorez d'autres laboratoires sur le site docs.oracle.com/learn ou accédez à plus de contenu d'apprentissage gratuit sur le canal Oracle Learning YouTube. De plus, visitez education.oracle.com/learning-explorer pour devenir un explorateur Oracle Learning.

Pour obtenir la documentation sur le produit, visitez Oracle Help Center.