• 热门
  • 基础
  • 数据库
  • 安全
  • 大数据
  • 人工智能
  • 混合云
  • 开发与运维
  • 企业应用

应用服务

行业引擎

全部文档
当前文档

暂无内容

如果没有找到您期望的内容,请尝试其他搜索词

文档中心

通过Spark-submit命令行工具提交Ray作业

最近更新时间:2024-11-29 13:18:10

本文将以KEC连接KMR Serverless Spark为例,介绍如何通过spark-submit命令行工具进行Ray作业开发。

前提

  1. 在进行Ray作业开发前,您需要先创建工作空间,具体创建流程详见:创建工作空间

  2. 如果使用IAM用户(子账号)提交Ray作业,您需要赋予子账号相应KMR及KS3权限,具体操作步骤详见:子账号授权

操作步骤

步骤一:下载作业示例

本文旨在带您快速熟悉操作流程,为您提供了一个作业示例,您可以直接下载以备后续步骤使用。

单击 ksyun-ray-demo.zip,直接下载作业示例。

步骤二:上传示例文件至KS3

请将示例文件上传至KS3,具体步骤详见:文件上传

步骤三:下载并安装KMR Serverless spark-submit工具
  1. 单击ksc-spark-tool.tar.gz,下载安装包。

  2. 将安装包上传至KEC实例,具体步骤详见:上传文件至KEC

  3. 上传完成后,执行以下命令,解压并安装spark-submit工具。

tar -zxvf ksc-spark-tool.tar.gz
步骤四:配置相关参数
  1. 执行以下命令,修改connection.properties中的配置。

vim ksc-spark-tool/conf/connection.properties
  1. 推荐按照如下内容对文件进行配置,参数格式为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,本文以北京地域为例。

WorkspaceId

KMR Serverless Spark工作空间ID。

Endpoint

KMR Serverless Spark服务地址。

EngineType

ray表示提交rayjob作业,未指定该参数将默认提交spark作业

服务接入点

地域名称

地域ID

公网接入地址

VPC接入地址

华北1(北京)

cn-beijing-6

kmr.cn-beijing-6.api.ksyun.com

kmr.cn-beijing-6.internal.api.ksyun.com

步骤五:提交Ray作业
  1. 执行以下命令,进入KMR ksc-spark-tool工具目录。

cd ksc-spark-tool
  1. 请按照以下格式提交任务。

./bin/ksc-spark-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":"s3://<yourBucket>/path/to/ksyun-ray-demo.zip"}' \
image hub.kce.ksyun.com/kmr-test/ray:2.30.0-ksyun-hdfs

命令中 "working_dir":"s3://<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

作业启动运行命令
entrypoint_cmd 格式为 /home/ray/workdir/{zip包名}/{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"}}

作业运行时需要安装的Python包

--conf

xxx

作业自定义参数,多个配置用逗号分隔

--image

xxx

如需使用自定义镜像,添加该配置,替换镜像地址

  • 工具的参数。

参数名称

示例值

说明

--list

5

未指定该参数默认为10

--detail

rayjob-20241126154915****

查看ray作业详情。

--status

rayjob-20241126154915****

查看ray作业状态。

--kill

rayjob-20241126154915****

终止ray作业。

步骤六:查询Ray作业

查询Ray作业详情

./bin/ksc-spark-tool --detail rayjob-2024081917****

查询Ray作业状态

./bin/ksc-spark-tool --status  rayjob-2024081917****
(可选)步骤七:终止Ray作业
./bin/ksc-spark-tool --kill rayjob-2024081917****

仅能终止运行(running)状态的作业。

(可选)步骤八:查询workspace下作业列表
./bin/ksc-spark-tool --list  2  #展示两条

文档导读
纯净模式常规模式

纯净模式

点击可全屏预览文档内容

鼠标选中内容,快速反馈问题

如果在文档使用中出现问题,可选中有问题的部分进行快速反馈,我们将跟进处理。
不再提示
好的,我知道了

聆听反馈