As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Execute trabalhos usando kubectl
Observe que você deve instalar o Kubeflow Training Operator nos clusters usando um gráfico Helm. Para obter mais informações, consulte Instale pacotes no EKS cluster da Amazon usando o Helm. Verifique se o plano de controle do Kubeflow Training Operator está configurado corretamente executando o comando a seguir.
kubectl get pods -n kubeflow
Isso deve retornar uma saída semelhante à seguinte.
NAME READY STATUS RESTARTS AGE training-operator-658c68d697-46zmn 1/1 Running 0 90s
Para enviar um trabalho de treinamento
Para executar um trabalho de treinamento, prepare o arquivo de configuração do trabalho e execute o kubectl apply
kubectl apply -f
/path/to/training_job.yaml
Para descrever um trabalho de treinamento
Para recuperar os detalhes do trabalho enviado ao EKS cluster, use o comando a seguir. Ele retorna informações do trabalho, como o tempo de envio do trabalho, o tempo de conclusão, o status do trabalho e os detalhes da configuração.
kubectl get -o yaml
training-job
-nkubeflow
Para interromper um trabalho de treinamento e excluir EKS recursos
Para interromper um trabalho de treinamento, use kubectl delete. Veja a seguir um exemplo de interrupção do trabalho de treinamento criado a partir do arquivo de configuraçãopytorch_job_simple.yaml
.
kubectl delete -f
/path/to/training_job.yaml
Isso deve retornar a seguinte saída.
pytorchjob.kubeflow.org "training-job" deleted
Para ativar a retomada automática do trabalho
SageMaker HyperPod oferece suporte à funcionalidade de retomada automática de tarefas do Kubernetes, integrando-se ao plano de controle do Kubeflow Training Operator.
Certifique-se de que haja nós suficientes no cluster que tenham passado pela verificação de SageMaker HyperPod integridade. Os nós devem ter a mancha sagemaker.amazonaws.com/node-health-status
definida como. Schedulable
É recomendável incluir um seletor de nós no YAML arquivo de trabalho para selecionar nós com a configuração apropriada da seguinte forma.
sagemaker.amazonaws.com/node-health-status: Schedulable
O trecho de código a seguir é um exemplo de como modificar a YAML configuração de uma tarefa do Kubeflow para ativar a funcionalidade de retomada automática da PyTorch tarefa. Você precisa adicionar duas anotações e definir restartPolicy
da seguinte OnFailure
forma.
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
Para verificar o status de retomada automática do trabalho
Execute o comando a seguir para verificar o status da retomada automática do trabalho.
kubectl describe pytorchjob -n kubeflow
<job-name>
Dependendo dos padrões de falha, você pode ver dois padrões de reinicialização do trabalho de treinamento do Kubeflow da seguinte maneira.
Padrão 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.
Padrão 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