更新时间:2024-12-13 GMT+08:00
分享

启动作业

功能介绍

启动作业

URI

POST /v1/{project_id}/eihealth-projects/{eihealth_project_id}/jobs

表1 路径参数

参数

是否必选

参数类型

描述

eihealth_project_id

String

平台项目ID,您可以在平台单击所需的项目名称,进入项目设置页面查看。

最小长度:1

最大长度:128

project_id

String

华为云项目ID,您可以从获取项目ID中获取。

最小长度:1

最大长度:128

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

用户Token。Token认证就是在调用API的时候将Token加到请求消息头,从而通过身份认证,获得操作API的权限,获取Token接口响应消息头中X-Subject-Token的值即为Token。

表3 请求Body参数

参数

是否必选

参数类型

描述

name

String

作业的名称,取值范围:[1,63],允许大小写字母、数字、以及特殊字符中划线(-)

最小长度:1

最大长度:63

description

String

作业的描述,取值范围:输入字符最大长度为255

最大长度:255

labels

Array of strings

作业标签,取值范围[0,5],单个标签最大长度32字符,支持中文、字母、数字、空格、下划线和中划线,且不能以空格开头或者结尾。

最小长度:1

最大长度:32

数组长度:0 - 5

priority

Integer

作业的优先级,取值范围[0,9],0最低,默认数值0

最小值:0

最大值:9

timeout

Integer

作业执行超时时长,取值范围: [1, 144000],单位:分钟,默认数值1440

最小值:1

最大值:144000

output_dir

String

作业结果存储目录,不指定则在workflow的工作目录下生产job同名子目录,指定则以指定路径为准;输出路径必须以斜杠(/)开头且不能以斜杠(/)结尾,不能包含两个以上相邻的斜杠(/),不能包含以下特殊字符:\ : ; * ? < " > | 。其中单个文件夹名称不能以中划线(-)开头,不能以英文句号(.)或斜杠(/)或空格开头或结尾

最小长度:0

最大长度:128

tool_id

String

作业依赖的组件id,组件当前仅支持流程,取值范围[1,135],支持大小写字母和数字。目前支持两种格式,特殊id:{流程名称}::{流程版本}::{源项目名称};正常id:流程id

最小长度:1

最大长度:135

tool_type

String

作业依赖的组件类型,仅支持填写workflow

tasks

Array of JobTaskDto objects

基于替换规则压扁后,job实际的运行信息

数组长度:0 - 64

io_acc_id

String

作业使用的IO加速实例id,不填表示不使用

最小长度:0

最大长度:128

io_acc_expected_usage

Integer

作业使用的SFS-Turbo实例预期占用存储量,单位G,用于投递作业时评估当前加速实例余量是否充足

最小值:0

最大值:327680

node_labels

Array of strings

节点标签 取值范围[0,1],单个标签最大长度63字符

最小长度:1

最大长度:63

数组长度:0 - 1

表4 JobTaskDto

参数

是否必选

参数类型

描述

task_name

String

子任务实际名称,取值范围[1,32],只能以大小写字母开头,由大小写字母、数字、中划线(-)、下划线(_)组成,以大小写字符或数字结尾。需要和已有子任务的名称一致。

最小长度:1

最大长度:32

inputs

Array of TaskParameterDto objects

任务的输入参数信息

数组长度:0 - 128

resources

TaskResourceDto object

应用申请资源

io_acc_type

String

子任务使用的IO加速实例类型,不填表示不使用;

最小长度:0

最大长度:128

表5 TaskParameterDto

参数

是否必选

参数类型

描述

name

String

子任务的参数名称,长度为[1,32],以小写字母开头,允许出现中划线(-)、小写字母和数字,且必须以小写字母或数字结尾。需要和已有应用的参数名称一致。

最小长度:1

最大长度:32

source

String

子任务的参数类型,不填默认MANUAL

values

Array of strings

子任务的参数数值,根据参数类型进行合法性校验

最小长度:0

最大长度:2048

数组长度:0 - 128

表6 TaskResourceDto

参数

是否必选

参数类型

描述

cpu

String

cpu申请使用量,取值范围[0.1-128],单位C,支持一位小数。对于应用,不填默认1C;对于流程和作业,不填默认使用前一级的配置,填值会覆盖更新。覆盖关系:作业->流程->应用

最小长度:0

最大长度:24

cpu_type

String

cpu架构类型,不填默认X86

最小长度:0

最大长度:24

memory

String

内存申请使用量,取值范围[0.1-3072],单位G,支持一位小数。对于应用,不填默认1G;对于流程和作业,不填默认使用前一级的配置,填值会覆盖更新。覆盖关系:作业->流程->应用

最小长度:0

最大长度:24

gpu_type

String

gpu架构类型,取值范围 ' '|GPU|Snt9|D310。对于流程和作业,不填默认使用前一级的配置,填值会覆盖更新。覆盖关系:作业->流程->应用

最小长度:0

最大长度:24

gpu

String

gpu申请使用量,取值范围[0-16],仅支持整数,Snt9有特殊约束,申请数量需要是0,1,2,4,8。对于应用,不填默认0;对于流程和作业,不填默认使用前一级的配置,填值会覆盖更新。覆盖关系:作业->流程->应用

最小长度:0

最大长度:24

响应参数

状态码: 201

表7 响应Body参数

参数

参数类型

描述

id

String

作业id

max_platform_flavor

TaskResourceDto object

平台节点最大规格

app_infos

Array of AppFilterDto objects

筛选后的app集合

job_info

JobFilterDto object

筛选后的job

表8 AppFilterDto

参数

参数类型

描述

app_id

String

应用id

app_name

String

应用名称

app_version

String

应用版本

app_resource

TaskResourceDto object

应用资源

app_node_labels

Array of strings

计算节点标签

表9 TaskResourceDto

参数

参数类型

描述

cpu

String

cpu申请使用量,取值范围[0.1-128],单位C,支持一位小数。对于应用,不填默认1C;对于流程和作业,不填默认使用前一级的配置,填值会覆盖更新。覆盖关系:作业->流程->应用

最小长度:0

最大长度:24

cpu_type

String

cpu架构类型,不填默认X86

最小长度:0

最大长度:24

memory

String

内存申请使用量,取值范围[0.1-3072],单位G,支持一位小数。对于应用,不填默认1G;对于流程和作业,不填默认使用前一级的配置,填值会覆盖更新。覆盖关系:作业->流程->应用

最小长度:0

最大长度:24

gpu_type

String

gpu架构类型,取值范围 ' '|GPU|Snt9|D310。对于流程和作业,不填默认使用前一级的配置,填值会覆盖更新。覆盖关系:作业->流程->应用

最小长度:0

最大长度:24

gpu

String

gpu申请使用量,取值范围[0-16],仅支持整数,Snt9有特殊约束,申请数量需要是0,1,2,4,8。对于应用,不填默认0;对于流程和作业,不填默认使用前一级的配置,填值会覆盖更新。覆盖关系:作业->流程->应用

最小长度:0

最大长度:24

表10 JobFilterDto

参数

参数类型

描述

job_name

String

作业名称

job_node_labels

Array of strings

计算节点标签

请求示例

启动作业,其中作业的名称为demo-job,作业使用IO加速类型为SFS。

https://eihealth.cn-north-4.myhuaweicloud.com/v1/{project_id}/eihealth-projects/{eihealth_project_id}/jobs

{
  "name" : "demo-job",
  "description" : "description",
  "labels" : [ "labelA", "labelB" ],
  "priority" : 0,
  "timeout" : 1440,
  "output_dir" : "/job",
  "tool_id" : "baabcb56-5bb6-11eb-8a0d-fa163e3ddba1",
  "tool_type" : "workflow",
  "tasks" : [ {
    "task_name" : "app1-1",
    "inputs" : [ {
      "name" : "dir-parameter",
      "values" : [ "/test" ]
    } ],
    "io_acc_type" : "SFS",
    "resources" : {
      "cpu_type" : "X86",
      "cpu" : "1C",
      "memory" : "1G",
      "gpu_type" : "GPU",
      "gpu" : 0
    }
  } ]
}

响应示例

状态码: 201

CREATED

{
  "id" : "baabcb56-5bb6-11eb-8a0d-fa163e3ddba1",
  "app_infos" : [ {
    "app_id" : "baabcb56-5bb6-11eb-8a0d-fa163e3ddba1",
    "app_name" : "demo-app",
    "app_version" : "1.0.0",
    "app_node_labels" : [ "health.node" ]
  } ],
  "job_info" : {
    "job_name" : "demo-job",
    "job_node_labels" : [ "health.node" ]
  }
}

状态码

状态码

描述

201

CREATED

错误码

请参见错误码

相关文档