翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
ツールキットライブラリを使用したジョブのリモート送信
toolkit-for-ray-on-sagemaker-ai パッケージをインストールすると、Ray の標準の Jobs CLI と Python SDK は、パッケージが登録するsagemaker_ray://アドレススキームを使用してクラスターの保護されたエンドポイントを介して認証します。ジョブは、ラップトップ、CI/CD パイプライン、または AWS 認証情報を持つ環境から送信および追跡します。クラスターへの直接ネットワークパスkubectl port-forwardはありません。パッケージは SageMaker Distribution イメージにプリインストールされています。
前提条件
-
クラスターの認証されたエンドポイント。詳細については、「HyperPod Ray Endpoint Operator のインストール」を参照してください。
-
SageMaker ディストリビューションイメージにない場合は、ツールキットパッケージ:
pip install toolkit-for-ray-on-sagemaker-ai
クラスターに対処する
パッケージはsagemaker_rayアドレススキームを追加します。を使用して任意のray jobコマンドに渡します--address。
sagemaker_ray://my-cluster/my-namespace
CLI からジョブを送信して一覧表示する
クラスターのジョブを一覧表示し、エントリスクリプトを使用して作業ディレクトリを送信します。
ray job list --address sagemaker_ray://my-cluster/my-namespaceray job submit \ --address sagemaker_ray://my-cluster/my-namespace\ --working-dir ./src \ -- pythonmy-script.py
エンドポイントは ID に対してリクエストを認証するため、VPN または転送されたポートなしでクラスターに到達します。
Python から送信する
Python から送信するには、sagemaker_rayアドレスJobSubmissionClientに Ray の標準を使用します。toolkit-for-ray-on-sagemaker-ai パッケージをインストールすると、アドレススキームが登録されるため、他の変更は必要ありません。
from ray.job_submission import JobSubmissionClient client = JobSubmissionClient("sagemaker_ray://my-cluster/my-namespace") job_id = client.submit_job( entrypoint="python my-script.py", runtime_env={"working_dir": "./src"}, ) print(job_id)
送信されたジョブの追跡
同じアドレスがジョブを管理するため、リモートで送信したジョブはリモートで追跡されます。各コマンドは、送信時に返されるジョブ ID を受け取ります。
ray job statusmy-job-id--address sagemaker_ray://my-cluster/my-namespaceray job logsmy-job-id--address sagemaker_ray://my-cluster/my-namespace--follow ray job stopmy-job-id--address sagemaker_ray://my-cluster/my-namespace
ray job logs --follow は、ジョブが終了するまで出力をストリーミングします。 は正常な停止をray job stopリクエストします。
Ray Dashboard Jobs ビューには、クラスター上のすべてのジョブのステータス、開始時刻、ログが一覧表示されます。Studio では、Tasks タブに、送信されたジョブを含む Ray ワークロードが一覧表示されます。詳細については、「Studio を使用した Ray ワークロードの管理」を参照してください。
Ray Jobs CLI コマンドとオプションの完全なセットについては、Ray ドキュメントの「Ray Jobs CLI を使用したクイックスタート