Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Karantina, ganti, atau reboot node secara manual
Pelajari cara mengkarantina, mengganti, dan me-reboot node yang salah secara manual di SageMaker HyperPod cluster yang diatur dengan Amazon EKS.
Untuk mengkarantina sebuah node dan memaksa menghapus pod pelatihan
kubectl cordon<node-name>
Setelah karantina, paksa mengeluarkan Pod. Ini berguna ketika Anda melihat pod macet dalam penghentian selama lebih dari 30 menit atau kubectl describe pod menunjukkan 'Node tidak siap' di Acara
kubectl delete pods<pod-name>--grace-period=0 --force
SageMaker HyperPod menawarkan dua metode untuk pemulihan node manual. Pendekatan yang lebih disukai adalah menggunakan SageMaker HyperPod Reboot dan Replace APIs, yang menyediakan proses pemulihan yang lebih cepat dan lebih transparan yang bekerja di semua orkestra. Atau, Anda dapat menggunakan perintah kubectl untuk memberi label node untuk reboot dan mengganti operasi. Kedua metode mengaktifkan proses SageMaker HyperPod pemulihan yang sama.
Untuk me-reboot node menggunakan Reboot API
Untuk me-reboot node Anda dapat menggunakan BatchRebootClusterNodes API.
Berikut adalah contoh menjalankan operasi reboot pada dua Instance cluster menggunakan: AWS Command Line Interface
aws sagemaker batch-reboot-cluster-nodes \ --cluster-name arn:aws:sagemaker:ap-northeast-1:123456789:cluster/test-cluster \ --node-ids i-0123456789abcdef0 i-0fedcba9876543210
Untuk mengganti node menggunakan Replace API
Untuk mengganti node, Anda dapat menggunakan BatchReplaceClusterNodes API sebagai berikut
Berikut adalah contoh menjalankan operasi replace pada dua Instance cluster menggunakan: AWS Command Line Interface
aws sagemaker batch-replace-cluster-nodes \ --cluster-name arn:aws:sagemaker:ap-northeast-1:123456789:cluster/test-cluster \ --node-ids i-0123456789abcdef0 i-0fedcba9876543210
Cluster yang dikelola Karpenter
Untuk SageMaker HyperPod cluster yang menggunakan Karpenter untuk penyediaan node, BatchReplaceClusterNodes API tidak menjamin bahwa node pengganti akan dibuat. Node yang ditentukan akan dihentikan, tetapi penggantian tergantung pada model penyediaan Karpenter. pod-demand-based Karpenter hanya membuat node baru ketika ada pod dalam Pending keadaan yang tidak dapat dijadwalkan pada node yang ada.
Jika beban kerja dari node yang dihapus dapat dijadwal ulang ke node yang tersisa di cluster (misalnya, jika node tersebut memiliki kapasitas yang cukup), Karpenter tidak menyediakan pengganti. Untuk memastikan node pengganti dibuat, verifikasi bahwa konfigurasi beban kerja Anda (seperti aturan anti-afinitas pod atau permintaan sumber daya) memerlukan node baru untuk pod yang dipindahkan.
Kami menyadari batasan ini dan secara aktif mengerjakan solusi untuk menegakkan penggantian node saat diminta melalui API.
Untuk mengganti node menggunakan kubectl
Beri label pada node yang akan diganti dengansagemaker.amazonaws.com/node-health-status=UnschedulablePendingReplacement, yang memicu. SageMaker HyperPod Pemulihan simpul otomatis Perhatikan bahwa Anda juga perlu mengaktifkan pemulihan node otomatis selama pembuatan atau pembaruan cluster.
kubectl label nodes<node-name>\ sagemaker.amazonaws.com/node-health-status=UnschedulablePendingReplacement
Untuk me-reboot node menggunakan kubectl
Beri label pada node untuk rebootsagemaker.amazonaws.com/node-health-status=UnschedulablePendingReboot, yang memicu. SageMaker HyperPod Pemulihan simpul otomatis Perhatikan bahwa Anda juga perlu mengaktifkan pemulihan node otomatis selama pembuatan atau pembaruan cluster.
kubectl label nodes <node-name> \ sagemaker.amazonaws.com/node-health-status=UnschedulablePendingReboot
Setelah label UnschedulablePendingReplacement atau UnschedulablePendingReboot diterapkan, Anda akan dapat melihat node dihentikan atau di-boot ulang dalam beberapa menit.