集群管理 CLI#

本节包含用于管理 Ray 集群的命令。

ray start#

在本地机器上手动启动 Ray 进程。

ray start [OPTIONS]

选项

--node-ip-address <node_ip_address>#

此节点的 IP 地址

--address <address>#

用于 Ray 的地址

--port <port>#

头部 Ray 进程的端口。如果未提供,默认为 6379;如果端口设置为 0,将分配一个可用端口。

--object-manager-port <object_manager_port>#

用于启动对象管理器的端口

--node-manager-port <node_manager_port>#

用于启动节点管理器的端口

--gcs-server-port <gcs_server_port>#

GCS 服务器的端口号。

--min-worker-port <min_worker_port>#

工作节点将绑定的最低端口号。如果未设置,将选择随机端口。

--max-worker-port <max_worker_port>#

工作节点将绑定的最高端口号。如果设置,则必须同时设置 ‘–min-worker-port’。

--worker-port-list <worker_port_list>#

供工作节点绑定的开放端口的逗号分隔列表。覆盖 ‘–min-worker-port’ 和 ‘–max-worker-port’。

--ray-client-server-port <ray_client_server_port>#

ray client 服务器绑定的端口号,默认为 10001,如果未安装 ray[client],则为 None。

--object-store-memory <object_store_memory>#

启动对象存储时使用的内存量(字节)。默认情况下,它是可用系统内存的 30%,上限为 shm 大小和 200G,但可以设置得更高。

--num-cpus <num_cpus>#

此节点的 CPU 数量

--num-gpus <num_gpus>#

此节点的 GPU 数量

--resources <resources>#

资源名称到资源数量的 JSON 序列化字典。

--head#

为主节点提供此参数

--include-dashboard <include_dashboard>#

提供此参数以启动 Ray dashboard GUI

--dashboard-host <dashboard_host>#

绑定 dashboard 服务器的主机,可以是 localhost (127.0.0.1) 或 0.0.0.0 (从所有接口可用)。默认是 127.0.0.1

--dashboard-port <dashboard_port>#

绑定 dashboard 服务器的端口,默认为 8265

--dashboard-agent-listen-port <dashboard_agent_listen_port>#

dashboard agent 监听 http 的端口。

--dashboard-agent-grpc-port <dashboard_agent_grpc_port>#

dashboard agent 监听 grpc 的端口。

--dashboard-grpc-port <dashboard_grpc_port>#

(已弃用) 不再使用,并将在 Ray 的未来版本中移除。

--runtime-env-agent-port <runtime_env_agent_port>#

运行时环境 agent 监听 http 的端口。

--block#

提供此参数以使此命令永久阻塞

--plasma-directory <plasma_directory>#

用于内存映射文件的对象存储目录

--object-spilling-directory <object_spilling_directory>#

对象溢出的路径。当对象存储充满正在使用的对象且无法溢出时,此路径也将用作备用目录。

--autoscaling-config <autoscaling_config>#

包含自动扩缩容配置的文件

--no-redirect-output#

不要将非工作节点的 stdout 和 stderr 重定向到文件

--plasma-store-socket-name <plasma_store_socket_name>#

手动指定 plasma store 的 socket 名称

--raylet-socket-name <raylet_socket_name>#

手动指定 raylet 进程的 socket 路径

--temp-dir <temp_dir>#

手动指定 Ray 进程的根临时目录,仅在指定 –head 时有效

--storage <storage>#

[已弃用] 集群范围的存储已弃用,并将在 Ray 的未来版本中移除。

--metrics-export-port <metrics_export_port>#

用于通过 Prometheus 端点暴露 Ray 指标的端口。

--ray-debugger-external#

使 Ray 调试器在节点外部可用。仅当节点位于防火墙后时,激活此选项才是安全的。

--disable-usage-stats#

如果为 True,则禁用使用统计信息收集。

--include-log-monitor <include_log_monitor>#

如果设置为 True 或未设置,日志监视器将开始监视此节点上所有进程的日志文件并将其内容推送到 GCS。每个物理主机只能启动一个日志监视器,以避免驱动程序进程上的日志重复。

--enable-resource-isolation#

通过 cgroupv2 启用资源隔离,为 ray 系统进程保留内存和 CPU 资源。要使用此功能,必须启用 cgroupv2(而不是 cgroupv1),并为 raylet 设置读写权限。还必须启用 Cgroup 内存和 CPU 控制器。

--system-reserved-cpu <system_reserved_cpu>#

为 ray 系统进程保留的 CPU 核心数量。核心可以是小数,例如 0.5 表示半个 CPU 核心。默认情况下,将保留 20% 和 1 个核心的最小值。必须 >= 0.5 且 < 可用核心总数。此选项仅在设置了 –enable-resource-isolation 时有效。

--system-reserved-memory <system_reserved_memory>#

为 ray 系统进程保留的内存量(字节)。默认情况下,将保留 10% 和 25GB 的最小值加上 object_store_memory。必须 >= 100MB 且 system-reserved-memory + object-store-bytes < 可用内存总数。此选项仅在设置了 –enable-resource-isolation 时有效。

--log-style <log_style>#

如果设置为 ‘pretty’,则输出带有格式和颜色。如果设置为 ‘record’,则输出记录样式,不带格式。‘auto’ 默认为 ‘pretty’,并且如果 stdin 不是 TTY,则禁用漂亮的日志记录。

选项:

auto | record | pretty

--log-color <log_color>#

使用彩色日志记录。如果 stdout 是 TTY,Auto 会启用彩色日志记录。

选项:

auto | false | true

-v, --verbose#

ray stop#

在本地机器上手动停止 Ray 进程。

ray stop [OPTIONS]

选项

-f, --force#

如果设置,ray 将发送 SIGKILL 而不是 SIGTERM。

-g, --grace-period <grace_period>#

Ray 等待进程正常终止的秒数。如果在宽限期内进程没有终止,它们将在宽限期后被强制终止。

--log-style <log_style>#

如果设置为 ‘pretty’,则输出带有格式和颜色。如果设置为 ‘record’,则输出记录样式,不带格式。‘auto’ 默认为 ‘pretty’,并且如果 stdin 不是 TTY,则禁用漂亮的日志记录。

选项:

auto | record | pretty

--log-color <log_color>#

使用彩色日志记录。如果 stdout 是 TTY,Auto 会启用彩色日志记录。

选项:

auto | false | true

-v, --verbose#

ray up#

创建或更新 Ray 集群。

ray up [OPTIONS] CLUSTER_CONFIG_FILE

选项

--min-workers <min_workers>#

覆盖集群配置的最小工作节点数量。

--max-workers <max_workers>#

覆盖集群配置的最大工作节点数量。

--no-restart#

更新期间是否跳过重启 Ray 服务。这可以避免中断正在运行的任务。

--restart-only#

是否跳过运行 setup 命令,只重启 Ray。不能与 'no-restart' 一起使用。

-y, --yes#

不询问确认。

-n, --cluster-name <cluster_name>#

覆盖配置的集群名称。

--no-config-cache#

禁用本地集群配置缓存。

--redirect-command-output#

是否将命令输出重定向到文件。

--use-login-shells, --use-normal-shells#

Ray 默认使用登录 shell (bash --login -i) 来运行集群命令。如果你的工作流兼容普通 shell,可以禁用此功能以获得更好的用户体验。

--disable-usage-stats#

如果为 True,则禁用使用统计信息收集。

--log-style <log_style>#

如果设置为 ‘pretty’,则输出带有格式和颜色。如果设置为 ‘record’,则输出记录样式,不带格式。‘auto’ 默认为 ‘pretty’,并且如果 stdin 不是 TTY,则禁用漂亮的日志记录。

选项:

auto | record | pretty

--log-color <log_color>#

使用彩色日志记录。如果 stdout 是 TTY,Auto 会启用彩色日志记录。

选项:

auto | false | true

-v, --verbose#

参数

CLUSTER_CONFIG_FILE#

必填参数

ray down#

销毁 Ray 集群。

ray down [OPTIONS] CLUSTER_CONFIG_FILE

选项

-y, --yes#

不询问确认。

--workers-only#

仅销毁工作节点。

-n, --cluster-name <cluster_name>#

覆盖配置的集群名称。

--keep-min-workers#

保留配置中指定的最小工作节点数量。

--log-style <log_style>#

如果设置为 ‘pretty’,则输出带有格式和颜色。如果设置为 ‘record’,则输出记录样式,不带格式。‘auto’ 默认为 ‘pretty’,并且如果 stdin 不是 TTY,则禁用漂亮的日志记录。

选项:

auto | record | pretty

--log-color <log_color>#

使用彩色日志记录。如果 stdout 是 TTY,Auto 会启用彩色日志记录。

选项:

auto | false | true

-v, --verbose#

参数

CLUSTER_CONFIG_FILE#

必填参数

ray exec#

通过 SSH 在 Ray 集群上执行命令。

ray exec [OPTIONS] CLUSTER_CONFIG_FILE CMD

选项

--run-env <run_env>#

选择是在容器中还是直接在集群头节点上执行此命令。仅当在 YAML 中配置了 docker 时适用。

选项:

auto | host | docker

--stop#

命令运行完成后停止集群。

--start#

如果需要则启动集群。

--screen#

在 screen 中运行命令。

--tmux#

在 tmux 中运行命令。

-n, --cluster-name <cluster_name>#

覆盖配置的集群名称。

--no-config-cache#

禁用本地集群配置缓存。

-p, --port-forward <port_forward>#

需要转发的端口。多次使用此选项可转发多个端口。

--disable-usage-stats#

如果为 True,则禁用使用统计信息收集。

--log-style <log_style>#

如果设置为 ‘pretty’,则输出带有格式和颜色。如果设置为 ‘record’,则输出记录样式,不带格式。‘auto’ 默认为 ‘pretty’,并且如果 stdin 不是 TTY,则禁用漂亮的日志记录。

选项:

auto | record | pretty

--log-color <log_color>#

使用彩色日志记录。如果 stdout 是 TTY,Auto 会启用彩色日志记录。

选项:

auto | false | true

-v, --verbose#

参数

CLUSTER_CONFIG_FILE#

必填参数

CMD#

必填参数

ray submit#

将脚本上传到指定的集群并在其上运行。

脚本会自动同步到以下位置

os.path.join(“~”, os.path.basename(script))

示例

ray submit [CLUSTER.YAML] experiment.py – –smoke-test

ray submit [OPTIONS] CLUSTER_CONFIG_FILE SCRIPT [SCRIPT_ARGS]...

选项

--stop#

命令运行完成后停止集群。

--start#

如果需要则启动集群。

--screen#

在 screen 中运行命令。

--tmux#

在 tmux 中运行命令。

-n, --cluster-name <cluster_name>#

覆盖配置的集群名称。

--no-config-cache#

禁用本地集群配置缓存。

-p, --port-forward <port_forward>#

需要转发的端口。多次使用此选项可转发多个端口。

--args <args>#

(已弃用) 使用 '-- --arg1 --arg2' 来指定脚本参数。

--disable-usage-stats#

如果为 True,则禁用使用统计信息收集。

--extra-screen-args <extra_screen_args>#

如果启用了 screen,将提供的参数添加到其中。一个有用的示例用法是传递 --extra-screen-args='-Logfile /full/path/blah_log.txt',这样它也会将 screen 输出重定向到自定义文件

--log-style <log_style>#

如果设置为 ‘pretty’,则输出带有格式和颜色。如果设置为 ‘record’,则输出记录样式,不带格式。‘auto’ 默认为 ‘pretty’,并且如果 stdin 不是 TTY,则禁用漂亮的日志记录。

选项:

auto | record | pretty

--log-color <log_color>#

使用彩色日志记录。如果 stdout 是 TTY,Auto 会启用彩色日志记录。

选项:

auto | false | true

-v, --verbose#

参数

CLUSTER_CONFIG_FILE#

必填参数

SCRIPT#

必填参数

SCRIPT_ARGS#

可选参数

ray attach#

创建或连接到 Ray 集群的 SSH 会话。

ray attach [OPTIONS] CLUSTER_CONFIG_FILE

选项

--start#

如果需要则启动集群。

--screen#

在 screen 中运行命令。

--tmux#

在 tmux 中运行命令。

-n, --cluster-name <cluster_name>#

覆盖配置的集群名称。

--no-config-cache#

禁用本地集群配置缓存。

-N, --new#

强制创建新的 screen。

-p, --port-forward <port_forward>#

需要转发的端口。多次使用此选项可转发多个端口。

--log-style <log_style>#

如果设置为 ‘pretty’,则输出带有格式和颜色。如果设置为 ‘record’,则输出记录样式,不带格式。‘auto’ 默认为 ‘pretty’,并且如果 stdin 不是 TTY,则禁用漂亮的日志记录。

选项:

auto | record | pretty

--log-color <log_color>#

使用彩色日志记录。如果 stdout 是 TTY,Auto 会启用彩色日志记录。

选项:

auto | false | true

-v, --verbose#

参数

CLUSTER_CONFIG_FILE#

必填参数

ray get_head_ip#

返回 Ray 集群的头节点 IP。

ray get_head_ip [OPTIONS] CLUSTER_CONFIG_FILE

选项

-n, --cluster-name <cluster_name>#

覆盖配置的集群名称。

参数

CLUSTER_CONFIG_FILE#

必填参数

ray monitor#

跟踪 Ray 集群的 autoscaler 日志。

ray monitor [OPTIONS] CLUSTER_CONFIG_FILE

选项

--lines <lines>#

跟踪的行数。

-n, --cluster-name <cluster_name>#

覆盖配置的集群名称。

--log-style <log_style>#

如果设置为 ‘pretty’,则输出带有格式和颜色。如果设置为 ‘record’,则输出记录样式,不带格式。‘auto’ 默认为 ‘pretty’,并且如果 stdin 不是 TTY,则禁用漂亮的日志记录。

选项:

auto | record | pretty

--log-color <log_color>#

使用彩色日志记录。如果 stdout 是 TTY,Auto 会启用彩色日志记录。

选项:

auto | false | true

-v, --verbose#

参数

CLUSTER_CONFIG_FILE#

必填参数