Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Verwaltung von Ray-Workloads mit kubectl
Ray on HyperPod verwendet die benutzerdefinierten Upstream-Ressourcen ohne Änderung. KubeRay Wenn Sie Ray bereits auf Kubernetes ausführen, gelten Ihre vorhandenen Manifeste unverändert, und die Ray-Dokumentation ist die Referenz für jedes Feld. Diese Seite behandelt, was spezifisch für ist. HyperPod
Der Zugriff auf Ray-Ressourcen wird durch die HyperPod Cluster-Zugriffsrichtlinien gewährt. Verwenden Sie AmazonSagemakerHyperpodTrainingPolicy für RayClusterRayJob, undRayCronJob, oder AmazonSagemakerHyperpodInferencePolicy für RayCluster und. RayService Ordnen Sie die Richtlinie dem Amazon EKS-Zugriffseintrag für Ihren IAM-Principal zu, der auf einen Namespace beschränkt ist, wenn Teams einen Cluster gemeinsam nutzen.
Wenn Ihr Principal eine SageMaker AI-Domain-Ausführungsrolle hat, erteilt die HyperPod Konsole die Richtlinie und erstellt den Zugriffseintrag für Sie. Weitere Informationen finden Sie unter Studio für Ray einrichten.
Unterstützte benutzerdefinierte Ressourcen
| Ressource | Benutze es für | Referenz |
|---|---|---|
RayCluster |
Ein Cluster mit langer Laufzeit, an den Sie Arbeiten einreichen. | RayCluster Schnellstart |
RayJob |
Ein einziger Job. KubeRay erstellt einen Cluster, führt den Job aus und zerreißt den Cluster, wenn er fertig shutdownAfterJobFinishes isttrue. |
RayJob Schnellstart |
RayCronJob |
Ein wiederkehrender Job nach einem Cron-Zeitplan, z. B. nächtliche Batch-Inferenz. Auf einen IANA-Namen gesetztspec.timeZone, oder der Zeitplan folgt der lokalen Zeitzone des Controllers. |
RayCronJob Schnellstart |
RayService |
Eine Ray Serve-Anwendung, deklariert inserveConfigV2, mit Upgrades ohne Ausfallzeiten. Praktische HyperPod Beispiele finden Sie unter Bereitstellung eines Modells mit Ray Serve und. Bereitstellung eines JumpStart Modells mit Ray Serve |
RayService Schnellstart |
Anmerkung
RayCronJobbenötigt KubeRay 1.6.0 oder höher. Bei einem früheren Operator existiert der Ressourcentyp nicht. Weitere Informationen finden Sie unter Installation KubeRay auf HyperPod Amazon EKS.
Einen Cluster erstellen
Das folgende Manifest erstellt einen Head-Pod und eine GPU-Worker-Gruppe auf HyperPod Knoten.
apiVersion: ray.io/v1 kind: RayCluster metadata: name:my-clusternamespace:my-namespacespec: 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 -nmy-namespacekubectl get rayclustermy-cluster-nmy-namespace
Wichtig
Setzen Sie dashboard-host diese 0.0.0.0 Option in der Head-Gruppe auf. Der Ray Endpoint Operator benötigt es, um das Dashboard außerhalb des Head-Pods zu bedienen, und der authentifizierte Dashboard-Zugriff schlägt ohne ihn fehl.
Der Cluster ist bereit, wenn der Head-Pod und mindestens ein Worker-Pod ausgeführt werden. RayJobRayCronJob, und RayService folgen dem gleichen Muster zum Anwenden und Prüfen, und in jedem wird ein Objekt rayClusterSpec mit derselben Form wie oben eingebettet. spec
Für jedes Feld, das diese Ressourcen akzeptieren, siehe RayCluster Konfiguration
Senden von Aufträgen an einen laufenden Cluster
Wenn Sie einen anwenden, RayJob wird ein Cluster für diesen Job erstellt. Verwenden Sie das toolkit-for-ray-on-sagemaker-ai Paket, um an einen Cluster zu senden, der bereits ausgeführt wird. Weitere Informationen finden Sie unter Senden von Aufträgen aus der Ferne mit der Toolkit-Bibliothek.