Ray 作业概述#

部署 Ray 集群后(在 VMKubernetes 上),您就可以运行 Ray 应用程序了! A diagram that shows three ways of running a job on a Ray cluster.

Ray 作业 API#

在 Ray 集群上运行作业的推荐方法是使用 Ray 作业 API,它包含一个 CLI 工具、Python SDK 和 REST API。

Ray 作业 API 允许您将本地开发的应用程序提交到远程 Ray 集群执行。它简化了打包、部署和管理 Ray 应用程序的体验。

提交到 Ray 作业 API 的内容包括:

  1. 一个入口命令,例如 python my_script.py,以及

  2. 一个 运行时环境,用于指定应用程序的文件和包依赖项。

作业可以由位于 Ray 集群外部的远程客户端提交。我们将在以下用户指南中展示此工作流程。

提交作业后,它将运行一次直到完成或失败,而与原始提交者的连接无关。重试或使用不同参数进行的不同运行应由提交者处理。作业与 Ray 集群的生命周期绑定,因此如果集群崩溃,该集群上所有正在运行的作业都将被终止。

要开始使用 Ray 作业 API,请查看 快速入门指南,其中介绍了使用 CLI 工具提交和与 Ray 作业交互的步骤。这适用于任何可以与 Ray 集群进行 HTTP 通信的客户端。如果需要,Ray 作业 API 还提供了用于 以编程方式提交作业使用 REST 提交作业的 API。

交互式运行作业#

如果您想 交互式 运行应用程序并实时查看输出(例如,在开发或调试过程中),您可以

  • (推荐) 直接在集群节点上运行您的脚本(例如,使用 ray attach SSH 进入节点后),或

  • (仅限专家) 使用 Ray Client 从本地计算机运行脚本,同时保持与集群的连接。

请注意,通过这些方式启动的作业不由 Ray 作业 API 管理,因此 Ray 作业 API 将无法看到或与之交互(除了 ray job listJobSubmissionClient.list_jobs())。

目录#