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à.
Esegui lavori utilizzando kubectl
Tieni presente che dovresti installare Kubeflow Training Operator nei cluster utilizzando un grafico Helm. Per ulteriori informazioni, consulta Installa pacchetti sul EKS cluster Amazon utilizzando Helm. Verifica se il piano di controllo di Kubeflow Training Operator è configurato correttamente eseguendo il comando seguente.
kubectl get pods -n kubeflow
Questo dovrebbe restituire un risultato simile al seguente.
NAME READY STATUS RESTARTS AGE training-operator-658c68d697-46zmn 1/1 Running 0 90s
Per presentare un lavoro di formazione
Per eseguire un processo di formazione, preparate il file di configurazione del lavoro ed eseguite il kubectl apply
kubectl apply -f
/path/to/training_job.yaml
Per descrivere un lavoro di formazione
Per recuperare i dettagli del lavoro inviato al EKS cluster, utilizzare il comando seguente. Restituisce informazioni sul lavoro come l'ora di invio del lavoro, l'ora di completamento, lo stato del lavoro, i dettagli di configurazione.
kubectl get -o yaml
training-job
-nkubeflow
Per interrompere un processo di formazione ed eliminare risorse EKS
Per interrompere un lavoro di formazione, usa kubectl delete. Di seguito è riportato un esempio di interruzione del processo di formazione creato dal file di configurazione. pytorch_job_simple.yaml
kubectl delete -f
/path/to/training_job.yaml
Questo dovrebbe restituire il seguente risultato.
pytorchjob.kubeflow.org "training-job" deleted
Per abilitare la ripresa automatica dei lavori
SageMaker HyperPod supporta la funzionalità di ripristino automatico dei lavori per i lavori Kubernetes, integrandosi con il piano di controllo Kubeflow Training Operator.
Assicurati che ci siano nodi sufficienti nel cluster che abbiano superato il controllo di integrità. SageMaker HyperPod La contaminazione deve essere sagemaker.amazonaws.com/node-health-status
impostata su. Schedulable
Si consiglia di includere un selettore di nodi nel YAML file di lavoro per selezionare i nodi con la configurazione appropriata come segue.
sagemaker.amazonaws.com/node-health-status: Schedulable
Il seguente frammento di codice è un esempio di come modificare una YAML configurazione di lavoro Kubeflow per abilitare la funzionalità di ripristino automatico del PyTorch lavoro. È necessario aggiungere due annotazioni e impostarle come segue. restartPolicy
OnFailure
apiVersion: "kubeflow.org/v1" kind: PyTorchJob metadata: name: pytorch-simple namespace: kubeflow
annotations: { // config for job auto resume sagemaker.amazonaws.com/enable-job-auto-resume: "true" sagemaker.amazonaws.com/job-max-retry-count: "2" }
spec: pytorchReplicaSpecs: ...... Worker: replicas: 10restartPolicy: OnFailure
template: spec: nodeSelector: sagemaker.amazonaws.com/node-health-status: Schedulable
Per verificare lo stato di ripresa automatica del lavoro
Esegui il comando seguente per verificare lo stato della ripresa automatica del lavoro.
kubectl describe pytorchjob -n kubeflow
<job-name>
A seconda dei modelli di errore, potresti vedere due schemi di riavvio del processo di formazione Kubeflow come segue.
Schema 1:
Start Time: 2024-07-11T05:53:10Z Events: Type Reason Age From Message ---- ------ ---- ---- ------- Normal SuccessfulCreateService 9m45s pytorchjob-controller Created service: pt-job-1-worker-0 Normal SuccessfulCreateService 9m45s pytorchjob-controller Created service: pt-job-1-worker-1 Normal SuccessfulCreateService 9m45s pytorchjob-controller Created service: pt-job-1-master-0 Warning PyTorchJobRestarting 7m59s pytorchjob-controller PyTorchJob pt-job-1 is restarting because 1 Master replica(s) failed. Normal SuccessfulCreatePod 7m58s (x2 over 9m45s) pytorchjob-controller Created pod: pt-job-1-worker-0 Normal SuccessfulCreatePod 7m58s (x2 over 9m45s) pytorchjob-controller Created pod: pt-job-1-worker-1 Normal SuccessfulCreatePod 7m58s (x2 over 9m45s) pytorchjob-controller Created pod: pt-job-1-master-0 Warning PyTorchJobRestarting 7m58s pytorchjob-controller PyTorchJob pt-job-1 is restarting because 1 Worker replica(s) failed.
Schema 2:
Events: Type Reason Age From Message ---- ------ ---- ---- ------- Normal SuccessfulCreatePod 19m pytorchjob-controller Created pod: pt-job-2-worker-0 Normal SuccessfulCreateService 19m pytorchjob-controller Created service: pt-job-2-worker-0 Normal SuccessfulCreatePod 19m pytorchjob-controller Created pod: pt-job-2-master-0 Normal SuccessfulCreateService 19m pytorchjob-controller Created service: pt-job-2-master-0 Normal SuccessfulCreatePod 4m48s pytorchjob-controller Created pod: pt-job-2-worker-0 Normal SuccessfulCreatePod 4m48s pytorchjob-controller Created pod: pt-job-2-master-0