View a markdown version of this page

Installazione di pacchetti sul cluster Amazon EKS con Helm - Amazon SageMaker AI

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Installazione di pacchetti sul cluster Amazon EKS con Helm

Prima di creare un SageMaker HyperPod cluster e collegarlo a un cluster Amazon EKS, è necessario installare i pacchetti utilizzando Helm, un gestore di pacchetti per Kubernetes. Helm è uno strumento open source che consente di configurare un processo di installazione per i cluster Kubernetes. Consente l'automazione e la semplificazione delle installazioni di dipendenze e semplifica le varie configurazioni necessarie per preparare il cluster Amazon EKS come orchestratore (piano di controllo) per un cluster. SageMaker HyperPod

Il team SageMaker HyperPod di assistenza fornisce un pacchetto grafico Helm, che raggruppa dipendenze chiave come device/EFA plug-in, plug-in, Kubeflow Training Operator e le configurazioni di autorizzazione associate. https://www.kubeflow.org/docs/components/training/

Importante

Questa fase di installazione di Helm è obbligatoria. Se configuri il cluster Amazon EKS utilizzando Console di gestione AWS o CloudFormation, puoi saltare questa fase perché l’installazione viene gestita automaticamente durante il processo di configurazione. Se configuri il cluster direttamente con le API, utilizza il grafico Helm fornito per configurare il cluster Amazon EKS. La mancata configurazione del cluster Amazon EKS utilizzando il diagramma Helm fornito potrebbe causare il malfunzionamento del cluster o il fallimento totale del SageMaker HyperPod processo di creazione. Il nome del namespace aws-hyperpod non può essere modificato.

  1. Installa Helm sul computer locale.

  2. Scarica i grafici Helm forniti dal SageMaker HyperPod repository helm_chart/HyperPodHelmChart CLI SageMaker HyperPod .

    git clone https://github.com/aws/sagemaker-hyperpod-cli.git cd sagemaker-hyperpod-cli/helm_chart
  3. Aggiorna le dipendenze del grafico Helm, visualizza in anteprima le modifiche che verranno apportate al cluster Kubernetes e installa il grafico Helm.

    helm dependencies update HyperPodHelmChart
    helm install hyperpod-dependencies HyperPodHelmChart --namespace kube-system --dry-run
    helm install hyperpod-dependencies HyperPodHelmChart --namespace kube-system

In sintesi, l’installazione Helm configura vari componenti del cluster Amazon EKS, tra cui la pianificazione e la coda dei processi (Kueue), la gestione dell’archiviazione, l’integrazione di MLflow e Kubeflow. Inoltre, i grafici installano i seguenti componenti per l'integrazione con le funzionalità di resilienza del SageMaker HyperPod cluster, che sono componenti obbligatori.

  • Agente di monitoraggio dello stato: installa l'agente di monitoraggio dello stato fornito da. SageMaker HyperPod Questo è necessario se si desidera che il HyperPod cluster venga monitorato. Health-monitoring gli agenti vengono forniti come immagini Docker come segue. Nei grafici Helm, l’immagine è preimpostata nel file values.yaml fornito. L'agente supporta GPU-based istanze e Trainium-accelerator-based istanze (trn1,,trn1n). inf2 Viene installato nel namespace aws-hyperpod. Per trovare l'URI supportato, consulta le regioni supportate e i relativi URI ECR nel repository sagemaker-hyperpod-cli su. GitHub

  • Controllo approfondito dello stato: imposta aClusterRole, a ServiceAccount (deep-health-check-service-account) nel aws-hyperpod namespace e a per abilitare la funzionalità di controllo approfondito dello stato. ClusterRoleBinding SageMaker HyperPod Per ulteriori informazioni sul file RBAC di Kubernetes per il controllo approfondito dello stato, consulta il file di configurazione nel repository CLI. deep-health-check-rbac.yaml SageMaker HyperPod GitHub

  • job-auto-restart- Questo imposta aClusterRole, a ServiceAccount (job-auto-restart) nel aws-hyperpod namespace e a, per abilitare la funzione di riavvio automatico per i lavori di ClusterRoleBinding formazione in. PyTorch SageMaker HyperPod Per ulteriori informazioni sul file RBAC di Kubernetes perjob-auto-restart, consulta il file di configurazione nel repository CLI. job-auto-restart-rbac.yaml SageMaker HyperPod GitHub

  • Operatore Kubeflow MPI — L'operatore MPI è un operatore Kubernetes che semplifica l'esecuzione di carichi di lavoro distribuiti di Machine Learning (ML) e High-Performance Computing (HPC) utilizzando la Message Passing Interface (MPI) sui cluster Kubernetes. Installa l’operatore MPI v0.5. Viene installato nel namespace mpi-operator.

  • nvidia-device-plugin: plugin per dispositivi Kubernetes che consente di esporre automaticamente le GPU NVIDIA da utilizzare con i container del cluster Amazon EKS. Consente a Kubernetes di allocare e fornire l’accesso alle GPU richieste per quel container. Richiesto quando si utilizza un tipo di istanza con GPU.

  • neuron-device-plugin: plugin per dispositivi Kubernetes che consente di esporre automaticamente i chip AWS Inferentia da utilizzare con i container del cluster Amazon EKS. Consente a Kubernetes di accedere e utilizzare i chip Inferentia sui nodi del cluster. AWS Richiesto quando si utilizza un tipo di istanza Neuron.

  • aws-efa-k8s-device-plugin— Si tratta di un plug-in per dispositivi Kubernetes che consente l'uso di AWS Elastic Fabric Adapter (EFA) sui cluster Amazon EKS. EFA è un dispositivo di rete che fornisce comunicazioni a bassa latenza e ad alto throughput tra le istanze di un cluster. Richiesto quando si utilizza un tipo di istanza supportato da EFA.

Per ulteriori informazioni sulla procedura di installazione utilizzando i grafici Helm forniti, consulta il file README nel repository CLI. SageMaker HyperPod