集群管理 CLI#

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

ray start#

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

ray start [OPTIONS]

选项

--node-ip-address <node_ip_address>#

此节点的 IP 地址

--address <address>#

用于 Ray 的地址

--port <port>#

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

--object-manager-port <object_manager_port>#

用于启动对象管理器(object manager)的端口

--node-manager-port <node_manager_port>#

用于启动节点管理器(node manager)的端口

--min-worker-port <min_worker_port>#

工作进程(worker)将绑定的最低端口号。如果未设置,将选择随机端口。

--max-worker-port <max_worker_port>#

工作进程(worker)将绑定的最高端口号。如果设置了此选项,则必须同时设置 ‘–min-worker-port’。

--worker-port-list <worker_port_list>#

用于工作进程绑定的可用端口的逗号分隔列表。将覆盖 ‘–min-worker-port’ 和 ‘–max-worker-port’。

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

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

--object-store-memory <object_store_memory>#

启动对象存储(object store)时使用的内存量(以字节为单位)。默认情况下,此值为系统可用内存的 30%,但受限于 shm 大小和 200G,可以设置得更高。

--num-cpus <num_cpus>#

此节点的 CPU 数量

--num-gpus <num_gpus>#

此节点的 GPU 数量

--resources <resources>#

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

--head#

为此 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 代理监听 HTTP 的端口。

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

Dashboard 代理监听 gRPC 的端口。

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

Runtime 环境代理监听 HTTP 的端口。

--block#

提供此参数以在此命令中永久阻塞。进程退出日志将保存在 logs 目录下的 ray_process_exit.log 文件中。

--plasma-directory <plasma_directory>#

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

--object-spilling-directory <object_spilling_directory>#

用于溢出对象(spill objects)的路径。当对象存储已满且无法溢出时,此路径也将用作回退目录。

--autoscaling-config <autoscaling_config>#

包含自动伸缩配置的文件

--no-redirect-output#

不要将非工作进程的标准输出和标准错误重定向到文件

--temp-dir <temp_dir>#

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

--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 核心数量。核心可以是小数,例如 1.5 表示一个半 CPU 核心。默认情况下,该值至少为 1 个核心,最多为 3 个核心。默认值使用以下公式计算:min(3.0, max(1.0, 0.05 * 系统上的核心数))。此选项仅在设置了 `–enable_resource_isolation` 时生效。

--system-reserved-memory <system_reserved_memory>#

为 Ray 系统进程保留的内存量(以字节为单位)。默认情况下,该值至少为 500MB,最多为 10GB。默认值使用以下公式计算:min(10GB, max(500MB, 0.10 * 系统上的可用内存))。此选项仅在设置了 `–enable_resource_isolation` 时生效。

--log-style <log_style>#

如果为 ‘pretty’,则输出带有格式和颜色。如果为 ‘record’,则输出记录风格,无格式。‘auto’ 默认为 ‘pretty’,并在 stdin *不是* TTY 时禁用 pretty 日志记录。

选项:

auto | record | pretty

--log-color <log_color>#

使用彩色日志记录。Auto 会在 stdout 是 TTY 时启用彩色日志记录。

选项:

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 时禁用 pretty 日志记录。

选项:

auto | record | pretty

--log-color <log_color>#

使用彩色日志记录。Auto 会在 stdout 是 TTY 时启用彩色日志记录。

选项:

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#

是否跳过运行设置命令,仅重启 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 时禁用 pretty 日志记录。

选项:

auto | record | pretty

--log-color <log_color>#

使用彩色日志记录。Auto 会在 stdout 是 TTY 时启用彩色日志记录。

选项:

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 时禁用 pretty 日志记录。

选项:

auto | record | pretty

--log-color <log_color>#

使用彩色日志记录。Auto 会在 stdout 是 TTY 时启用彩色日志记录。

选项:

auto | false | true

-v, --verbose#

参数

CLUSTER_CONFIG_FILE#

必需参数。

ray exec#

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

ray exec [OPTIONS] CLUSTER_CONFIG_FILE CMD

选项

--run-env <run_env>#

选择是在容器中还是直接在集群 head 上执行此命令。仅在 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 时禁用 pretty 日志记录。

选项:

auto | record | pretty

--log-color <log_color>#

使用彩色日志记录。Auto 会在 stdout 是 TTY 时启用彩色日志记录。

选项:

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 时禁用 pretty 日志记录。

选项:

auto | record | pretty

--log-color <log_color>#

使用彩色日志记录。Auto 会在 stdout 是 TTY 时启用彩色日志记录。

选项:

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 时禁用 pretty 日志记录。

选项:

auto | record | pretty

--log-color <log_color>#

使用彩色日志记录。Auto 会在 stdout 是 TTY 时启用彩色日志记录。

选项:

auto | false | true

-v, --verbose#

参数

CLUSTER_CONFIG_FILE#

必需参数。

ray get_head_ip#

返回 Ray 集群的 head 节点 IP。

ray get_head_ip [OPTIONS] CLUSTER_CONFIG_FILE

选项

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

覆盖已配置的集群名称。

参数

CLUSTER_CONFIG_FILE#

必需参数。

ray monitor#

Tails the autoscaler logs of a Ray cluster. (此处未提供中文翻译,请参考英文原文)

ray monitor [OPTIONS] CLUSTER_CONFIG_FILE

选项

--lines <lines>#

要追踪的行数。

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

覆盖已配置的集群名称。

--log-style <log_style>#

如果为 ‘pretty’,则输出带有格式和颜色。如果为 ‘record’,则输出记录风格,无格式。‘auto’ 默认为 ‘pretty’,并在 stdin *不是* TTY 时禁用 pretty 日志记录。

选项:

auto | record | pretty

--log-color <log_color>#

使用彩色日志记录。Auto 会在 stdout 是 TTY 时启用彩色日志记录。

选项:

auto | false | true

-v, --verbose#

参数

CLUSTER_CONFIG_FILE#

必需参数。