最近更新时间:2025-09-11 09:10:06
本文介绍如何通过客户端提交Ray作业。
本文旨在带您快速熟悉操作流程,为您提供了一个作业示例,您可以直接下载以备后续步骤使用。
单击 ksyun-ray-demo.zip,下载作业示例。
请将示例文件上传至KS3,具体步骤详见:文件上传。
在进行实际开发时,您需要将所运行的Ray作业代码脚本压缩为ZIP包后上传至KS3中。
单击ksc-serverless-tool,下载客户端。
执行以下命令,解压并安装。
tar -zxvf ksc-serverless-tool.tar.gz解压完成后会生成如下目录:
# 客户端主目录
ksc-serverless-tool/
# bin目录,包含了不同环境可执行文件
ksc-serverless-tool/bin/
# bin目录下的可执行文件,会根据不同操作系统自动选择执行哪个进程来执行
ksc-serverless-tool/bin/ksc-spark-tool
# bin目录下的可执行文件,适用于Linux操作系统
ksc-serverless-tool/bin/ksc-spark-tool-linux
# bin目录下的可执行文件,适用于Mac操作系统
ksc-serverless-tool/bin/ksc-spark-tool-mac
# bin目录下的可执行文件,适用于Window操作系统
ksc-serverless-tool/bin/ksc-spark-tool.exe
# Conf目录,包含配置文件信息
ksc-serverless-tool/conf/
# Conf目录下的配置文件,可查看当前版本号,选择自行升级
ksc-serverless-tool/conf/appversion
# Conf目录下的配置文件,包含任务提交相关的鉴权&配置信息
ksc-serverless-tool/conf/connection.properties
# 客户端的相关配置适用说明
ksc-serverless-tool/README.md 执行以下命令,修改connection.properties中的配置。
vim ksc-serverless-tool/conf/connection.properties推荐按照如下内容对文件进行配置,参数格式为key=value,示例如下。
[Properties]
AccessKeyId ="****"
AccessKeySecret ="*****"
Region ="cn-beijing-6"
WorkspaceId ="xxx"
Endpoint = "http://kmr.cn-beijing-6.api.ksyun.com"
EngineType = "ray"涉及参数说明如下表所示。
参数 | 是否必填 | 说明 |
AccessKeyId | 是 | 执行Ray作业使用的金山云账号或RAM用户的AccessKey ID |
AccessKeySecret | 是 | 执行Ray作业使用的金山云账号或RAM用户的AccessKey Secret |
Region | 是 | 地域ID,目前仅支持北京:cn-beijing-6 |
WorkspaceId | 是 | 工作空间ID |
Endpoint | 是 | 服务地址。 |
EngineType | 否 | ray表示提交ray作业,未指定该参数将默认提交spark作业 |
服务接入点
地域名称 | 地域ID | 公网接入地址 | VPC接入地址 |
华北1(北京) | cn-beijing-6 | kmr.cn-beijing-6.api.ksyun.com | kmr.cn-beijing-6.internal.api.ksyun.com |
执行以下命令,进入ksc-serverless-tool工具目录。
cd ksc-serverless-tool请按照以下格式提交任务。
./bin/ksc-serverless-tool \
--name ray-test \
--engine ray \
--head-cores 1 \
--num-workers 1 \
--head-memory 2g \
--worker-cores 1 \
--worker-memory 2g \
--entrypoint-cmd "python ray-test.py" \
--runtime-env '{"working_dir":"ks3://{your bucket}/ray/ksyun-ray-demo.zip"}' \
--image hub.kce.ksyun.com/kmr-test/ray:2.30.0-ksyun-hdfs命令中 "working_dir":"ks3://<yourBucket>/path/to/ksyun-ray-demo.zip" 需替换为实际KS3路径。
参数名称 | 示例值 | 是否必填 | 说明 |
--engine | ray | 否 | 未指定该参数默认提交spark作业,也可以在配置文件中设置EngineType来区分作业类型 |
--name | test | 否 | ray作业名称 |
--num-workers | 10 | 是 | ray作业的worker数量 |
--head-cores | 1 | 是 | ray作业的head核数 |
--head-memory | 4g | 是 | ray作业的head内存 |
--worker-cores | 1 | 是 | ray作业的worker核数 |
--worker-memory | 1g | 是 | ray作业的worker内存 |
--entrypoint-cmd | python /home/ray/workdir/ray_demo/sleep.py | 是 | 作业启动运行命令 其中 /home/ray/workdir 目前为固定值 |
--entrypoint-resource | ks3://wbwemr-devqa/klehui/demo/cray/ray_demossvpc.zip | 否 | 示例值为作业的ks3文件路径 |
--runtime_env | {"pip":["redis"],"env_vars":{"counter_name":"test_counter"}} | 否 | 需要runtime引入的pip包Python包 |
--conf | xxx | 否 | 作业自定义参数,多个配置用逗号分隔 |
--image | xxx | 否 | 作业使用的镜像地址。使用自定义镜像具体操作详见:自定义镜像 |
--high-priority | p0 | 否 | 作业优先级,默认优先级为p1, 设置为p0的作业将高优插入执行 |
--net-id | 1564ba1a-0cb9-49d2-beef-24fb538xxxxx | 否 | 如果需连接用户自有VPC下服务或数据源,需配置该参数,填写网络连接ID |
工具的参数。
参数名称 | 示例值 | 说明 |
--list | 5 | 未指定该参数默认为10 |
--detail | rayjob-20241126154915**** | 查看ray作业详情 |
--status | rayjob-20241126154915**** | 查看ray作业状态 |
--kill | rayjob-20241126154915**** | 终止ray作业 |
查询Ray作业详情
./bin/ksc-serverless-tool --detail rayjob-2024081917****查询Ray作业状态
./bin/ksc-serverless-tool --status rayjob-2024081917****停止Ray作业运行
./bin/ksc-serverless-tool --kill rayjob-2024081917****支持停止运行中、等待中、提交中的作业。
查询工作空间内的作业列表
./bin/ksc-serverless-tool --list 2 #展示两条作业记录查询工作空间资源使用情况、HistoryServer地址
./bin/ksc-serverless-tool --detail-workspace
纯净模式
