View a markdown version of this page

Mengelola beban kerja Ray dengan kubectl - Amazon SageMaker AI

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

Mengelola beban kerja Ray dengan kubectl

Ray on HyperPod menggunakan sumber daya KubeRay kustom hulu tanpa modifikasi. Jika Anda sudah menjalankan Ray di Kubernetes, manifes Anda yang ada berlaku tidak berubah, dan dokumentasi Ray adalah referensi untuk setiap bidang. Halaman ini mencakup apa yang spesifik untuk HyperPod.

Akses ke sumber daya Ray diberikan oleh kebijakan akses HyperPod cluster. Gunakan AmazonSagemakerHyperpodTrainingPolicy untukRayCluster,RayJob, danRayCronJob, atau AmazonSagemakerHyperpodInferencePolicy untuk RayCluster danRayService. Kaitkan kebijakan dengan entri akses Amazon EKS untuk kepala sekolah IAM Anda, yang dicakup ke namespace saat tim berbagi klaster.

Jika prinsipal Anda adalah peran eksekusi domain SageMaker AI, HyperPod konsol memberikan kebijakan dan membuat entri akses untuk Anda. Untuk informasi selengkapnya, lihat Menyiapkan Studio untuk Ray.

Sumber daya kustom yang didukung

Sumber daya Gunakan untuk Referensi
RayCluster Kluster yang sudah berjalan lama tempat Anda mengirimkan pekerjaan. RayCluster Mulai cepat dalam dokumentasi Ray
RayJob Satu pekerjaan. KubeRay membuat cluster, menjalankan pekerjaan, dan merobek cluster kapan shutdownAfterJobFinishes adatrue. RayJob Mulai cepat dalam dokumentasi Ray
RayCronJob Pekerjaan berulang pada jadwal cron, seperti inferensi batch malam. Setel spec.timeZone ke nama IANA, atau jadwal mengikuti zona waktu lokal pengontrol. RayCronJob Mulai cepat dalam dokumentasi Ray
RayService Aplikasi Ray Serve, dinyatakan dalamserveConfigV2, dengan upgrade zero-downtime. Untuk HyperPod contoh yang dikerjakan, lihat Menerapkan model dengan Ray Serve danMenyebarkan JumpStart model dengan Ray Serve. RayService Mulai cepat dalam dokumentasi Ray
catatan

RayCronJobmembutuhkan KubeRay 1.6.0 atau yang lebih baru. Pada operator sebelumnya jenis sumber daya tidak ada. Untuk informasi selengkapnya, lihat Menginstal KubeRay di HyperPod Amazon EKS.

Membuat kluster

Manifes berikut membuat head pod dan grup pekerja GPU pada HyperPod node.

apiVersion: ray.io/v1 kind: RayCluster metadata: name: my-cluster namespace: my-namespace spec: rayVersion: "2.55.1" headGroupSpec: rayStartParams: dashboard-host: "0.0.0.0" template: spec: containers: - name: ray-head image: rayproject/ray:2.55.1 ports: - { containerPort: 6379, name: gcs-server } - { containerPort: 8265, name: dashboard } - { containerPort: 10001, name: client } resources: requests: { cpu: "2", memory: "4Gi" } workerGroupSpecs: - groupName: gpu-workers replicas: 2 rayStartParams: {} template: spec: nodeSelector: node.kubernetes.io/instance-type: ml.g5.xlarge containers: - name: ray-worker image: rayproject/ray:2.55.1-gpu resources: limits: { nvidia.com/gpu: "1" } requests: { cpu: "4", memory: "16Gi", nvidia.com/gpu: "1" }
kubectl apply -f my-cluster.yaml -n my-namespace kubectl get raycluster my-cluster -n my-namespace
penting

Setel dashboard-host ke 0.0.0.0 pada kelompok kepala. Operator Ray Endpoint membutuhkannya untuk melayani dasbor di luar head pod, dan akses dasbor yang diautentikasi gagal tanpanya.

Cluster siap ketika head pod dan setidaknya satu pod pekerja sedang berjalan. RayJob,RayCronJob, dan RayService ikuti pola aplikasi-dan-periksa yang sama, dan masing-masing menyematkan a rayClusterSpec dengan bentuk yang sama seperti di atas. spec

Untuk setiap bidang yang diterima sumber daya ini, lihat RayCluster Konfigurasi dalam dokumentasi Ray.

Mengirimkan pekerjaan ke klaster yang sedang berjalan

Menerapkan a RayJob menciptakan cluster untuk pekerjaan itu. Untuk mengirimkan ke cluster yang sudah berjalan, gunakan toolkit-for-ray-on-sagemaker-ai paket. Untuk informasi selengkapnya, lihat Mengirimkan pekerjaan dari jarak jauh dengan perpustakaan toolkit.