作业配置文件说明
流程创建完成后,可基于已创建的流程运行分析作业。
在EIHealth平台,运行分析作业的过程通过图形化的界面操作完成。在命令行工具中,该过程以配置文件的形式给出。您可以基于已获取到的模板使用命令行工具启动分析作业,运行的分析作业将同步显示到EIHealth平台。
获取作业模板
使用health get job -s命令获取启动分析作业的模板,复制并保存模板至本地,您可以保存成.yaml或.txt文件,保存为txt文件时,其内容需为yaml格式。
在本地编写模板,模板中的参数与在EIHealth平台启动作业过程一致。模板修改好后,再使用命令行工具上传模板,启动分析作业。
# 详情说明可参考API文档中作业管理-创建作业 job: name: demo-job # 作业名称,取值范围:[1,63],允许大小写字母、数字、以及特殊字符中划线(-) labels: # 作业标签 取值范围[0,5],单个标签最大长度32字符,支持中文、字母、数字、空格、下划线和中划线,且不能以空格开头或者结尾。 - labelA - labelB description: description # 作业描述,取值范围:输入字符最大长度为255 tool_id # 作业依赖的组件id,组件当前仅支持流程,取值范围[1,135],支持大小写字母和数字。目前支持两种格式,特殊id:{流程名称}::{流程版本}::{源项目名称};正常id:流程id tool_type # 作业依赖的组件类型,仅支持填写workflow priority: 0 # 作业的优先级,取值范围[0,9],0最低,默认数值0 timeout: 1440 # 作业执行超时时长,取值范围: [1, 144000],单位:分钟,默认数值1440 output_dir: # 作业存储目录,不指定则在workflow的工作目录下生产job同名子目录,指定则已指定路径为准,输出路径必须以斜杠(/)开头且不能以斜杠(/)结尾,不能包含两个以上相邻的斜杠(/),不能包含以下特殊字符:\ : ; * ? < " > | 。其中单个文件夹名称不能以中划线(-)开头,不能以英文句号(.)或斜杠(/)或空格开头或结尾 workflow_id: demo-workflow::1.0.0::gwj-test-01 # 作业依赖的组件id,组件当前仅支持流程,取值范围[1,135],支持大小写字母和数字。目前支持两种格式,特殊id:{流程名称}::{流程版本}::{源项目名称};正常id:流程id io_acc_id: # IO加速实例id,为空则不开启IO加速,设置相应加速包id将会开启加速,当id设置为:auto_schedule,则会自动调度加速包,当id设置为 local_disk,则开启本地盘加速。 node_labels: # 计算节点标签 标签个数取值范围[0-1],单个节点标签最大长度56个字符,以字母或数字开头,可以包含下划线(_)、中划线(-)、点(.)、字母和数字,且必须以字母或数字结尾 - health.label tasks: - task_name: app1-1 # 子任务实际名称,取值范围[1,32],只能以大小写字母开头,由字母、数字、中划线(-)、下划线(_)组成,以大小写字母或数字结尾。需要和已有子任务的名称一致。 inputs: - name: input-dir # 子任务的输入参数信息 values: # 子任务的参数数值,根据参数类型进行合法性校验 - 'gwj-test-01:/test' resources: # 子任务的资源配额 cpu: 0.1C # cpu申请使用量,取值范围[0.1-128],单位C,支持一位小数。对于应用,不填默认1C;对于流程和作业,不填默认使用前一级的配置,填值会覆盖更新。覆盖关系:作业->流程->应用 memory: 0.1G # 内存申请使用量,取值范围[0.1-3072],单位G,支持一位小数。对于应用,不填默认1G;对于 流程和作业,不填默认使用前一级的配置,填值会覆盖更新。覆盖关系:作业->流程->应用 gpu_type: '' # gpu架构类型,取值范围 ' '|GPU|Snt9|D310。对于流程和作业,不填默认使用前一级的配置,填值会覆盖更新。覆盖关系:作业->流程->应用 gpu: '0' # gpu申请使用量,取值范围[0-16],仅支持整数,Snt9有特殊约束,申请数量需要是0,1,2,4,8 。对于应用,不填默认0;对于流程和作业,不填默认使用前一级的配置,填值会覆盖更新。 # 覆盖关系:作业->流程->应用 io_acc_type #子任务使用的IO加速类型,取值范围SFS、EVS。为空表示不使用加速。SFS表示使用io加速,EVS表示使用本地盘加速 - task_name: app1-2 inputs: - name: input-dir values: - '${app1-1.output-dir}' resources: cpu: 0.1C memory: 0.1G gpu_type: '' gpu: '0'