Jalankan pekerjaan menggunakan kubectl - Amazon SageMaker

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Jalankan pekerjaan menggunakan kubectl

Perhatikan bahwa Anda harus menginstal Kubeflow Training Operator di cluster menggunakan bagan Helm. Untuk informasi selengkapnya, lihat Instal paket di EKS cluster Amazon menggunakan Helm. Verifikasi apakah bidang kontrol Operator Pelatihan Kubeflow telah diatur dengan benar dengan menjalankan perintah berikut.

kubectl get pods -n kubeflow

Ini harus mengembalikan output yang mirip dengan berikut ini.

NAME READY STATUS RESTARTS AGE training-operator-658c68d697-46zmn 1/1 Running 0 90s

Untuk mengirimkan pekerjaan pelatihan

Untuk menjalankan pekerjaan pelatihan, siapkan file konfigurasi pekerjaan dan jalankan kubectl applyperintah sebagai berikut.

kubectl apply -f /path/to/training_job.yaml

Untuk menggambarkan pekerjaan pelatihan

Untuk mengambil rincian pekerjaan yang dikirimkan ke EKS cluster, gunakan perintah berikut. Ini mengembalikan informasi pekerjaan seperti waktu pengiriman pekerjaan, waktu penyelesaian, status pekerjaan, detail konfigurasi.

kubectl get -o yaml training-job -n kubeflow

Untuk menghentikan pekerjaan pelatihan dan menghapus EKS sumber daya

Untuk menghentikan pekerjaan pelatihan, gunakan kubectl delete. Berikut ini adalah contoh menghentikan pekerjaan pelatihan yang dibuat dari file konfigurasipytorch_job_simple.yaml.

kubectl delete -f /path/to/training_job.yaml

Ini harus mengembalikan output berikut.

pytorchjob.kubeflow.org "training-job" deleted

Untuk mengaktifkan resume pekerjaan secara otomatis

SageMaker HyperPod mendukung fungsi resume otomatis pekerjaan untuk pekerjaan Kubernetes, terintegrasi dengan bidang kontrol Operator Pelatihan Kubeflow.

Pastikan ada node yang cukup di cluster yang telah lulus pemeriksaan SageMaker HyperPod kesehatan. Node harus memiliki taint yang sagemaker.amazonaws.com/node-health-status disetel keSchedulable. Disarankan untuk menyertakan pemilih node dalam YAML file pekerjaan untuk memilih node dengan konfigurasi yang sesuai sebagai berikut.

sagemaker.amazonaws.com/node-health-status: Schedulable

Cuplikan kode berikut adalah contoh cara memodifikasi YAML konfigurasi PyTorch pekerjaan Kubeflow untuk mengaktifkan fungsionalitas resume pekerjaan secara otomatis. Anda perlu menambahkan dua anotasi dan restartPolicy mengatur OnFailure sebagai berikut.

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: 10 restartPolicy: OnFailure template: spec: nodeSelector: sagemaker.amazonaws.com/node-health-status: Schedulable

Untuk memeriksa status resume otomatis pekerjaan

Jalankan perintah berikut untuk memeriksa status resume otomatis pekerjaan.

kubectl describe pytorchjob -n kubeflow <job-name>

Bergantung pada pola kegagalannya, Anda mungkin melihat dua pola pekerjaan pelatihan Kubeflow dimulai kembali sebagai berikut.

Pola 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.

Pola 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