CreateJob - 创建作业

创建一个E-HPC Instant 作业。

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

授权信息

下表是API对应的授权信息,可以在RAM权限策略语句的Action元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下:

  • 操作:是指具体的权限点。
  • 访问级别:是指每个操作的访问级别,取值为写入(Write)、读取(Read)或列出(List)。
  • 资源类型:是指操作中支持授权的资源类型。具体说明如下:
    • 对于必选的资源类型,用前面加 * 表示。
    • 对于不支持资源级授权的操作,用全部资源表示。
  • 条件关键字:是指云产品自身定义的条件关键字。
  • 关联操作:是指成功执行操作所需要的其他权限。操作者必须同时具备关联操作的权限,操作才能成功。
操作访问级别资源类型条件关键字关联操作
ehpc:CreateJobcreate
*全部资源
*

请求参数

名称类型必填描述示例值
JobNamestring

作业名称。长度为 2~64 个字符,支持英文、中文和数字。可以包含短划线(-)和下划线(_)。

testjob
JobDescriptionstring

作业描述。

Demo
Tasksarray<object>

任务列表,当前仅支持 1 个任务。

object

任务详情。

TaskNamestring

任务名称。长度为 2~32 个字符,支持英文、中文和数字。可以包含短划线(-)和下划线(_)。

task0
TaskSpecobject

任务规格详情。

TaskExecutorarray<object>

任务执行配置。

object

任务执行配置。

Containerobject

使用容器环境。

Imagestring

容器镜像。

registry-vpc.cn-hangzhou.aliyuncs.com/ehpc/hpl:latest
WorkingDirstring

容器工作目录。

/usr/local/
Commandarray

容器启动命令列表。最多 20 个命令,单个命令最长 256 个字符。

说明
  • 若启动命令包含空格(例如:sleep 60s),传入的 JSON 格式参数为["sleep", "60s"]
  • 若启动命令较复杂,参数格式可以采用Command: ["/bin/bash"]Arg:["-c", "<customized command>"]组合的方式。其中<customized command>为用户自定义的命令组合,可包含空格等字符。
  • string

    容器启动命令内容。每个命令最多包含 256 个字符。

    sleep
    EnvironmentVarsarray<object>

    容器的环境变量。最多 20 组。

    object

    容器的环境变量。

    Namestring

    环境变量名。长度为 1~128 位。格式要求:[0-9a-zA-Z],以及下划线,不能以数字开头。

    PATH
    Valuestring

    环境变量值。长度为 0~256 位。

    /usr/local/bin
    AppIdstring

    容器应用 ID。

    ci-vm-32k6LXAi3cOG
    Argarray

    容器启动命令对应的参数。最多 10 组。

    string

    容器启动命令对应的参数。

    60s
    VMobject

    使用虚拟机环境。

    Imagestring

    镜像 ID。

    m-xxxx
    PrologScriptstring

    前处理脚本。需 Base64 编码。

    ZWNobyBoZWxsbyBlY3Mh
    Scriptstring

    运行作业脚本。需 Base64 编码。

    ZWNobyBoZWxsbyBlY3Mh
    AppIdstring

    虚拟机应用 ID。

    ci-vm-9jc58Pm5Leky
    Passwordstring

    虚拟机环境登录密码。长度为 8 至 30 个字符,必须同时包含大小写英文字母、数字和特殊符号中的三类字符。特殊符号可以是:

    ()`~!@#$%^&*-_+=|{}[]:;'<>,.?/ 其中,Windows 环境不能以正斜线(/)为密码首字符。

    说明 如果传入 Password 参数,建议您使用 HTTPS 协议发送请求,避免密码泄露。
    EHPC@1234
    VolumeMountarray<object>

    任务挂载的数据卷列表。最多 10 组。

    object

    任务挂载的数据卷列表。

    MountPathstring

    任务挂载数据卷的目录。

    说明 挂载目录下的内容会被 Volume 的内容直接覆盖,请谨慎使用。
    /mnt
    VolumeDriverstring

    当前支持的数据卷类型。

    • alicloud/nas: 挂载 NAS。
    • alicloud/oss: 挂载 OSS。
    alicloud/nas
    MountOptionsstring

    数据卷挂载参数列表。为 KV 形式,采用 JSON 传递。

    • 挂载 NAS 参考格式:{"server":"xxxxx-xxxxx.cn-heyuan.nas.aliyuncs.com","vers":"3","path":"/data","options":"nolock,tcp,noresvport"}
    说明 server 表示 NAS 的挂载点地址;path 表示 NAS 路径下的子目录,以 / 开头,要求目录必须已存在;vers 表示挂载 NAS 的 NFS 协议版本号,推荐使用 v3;options 表示挂载 NAS 时定制化参数,格式为"xxx,xxx,xxx"。
    • 挂载 OSS 参考格式:{"bucket":"xxxxx", "url":"oss-cn-heyuan-internal.aliyuncs.com","path":"/data","akId":"xxxxx","akSecret":"xxxxx"}
    说明 bucket 表示 OSS Bucket 的名称;url 表示 OSS Bucket 的访问域名(Endpoint),可以登录 OSS 管理控制台,在目标 Bucket 的概览页面获取;path 表示挂载时相对 Bucket 根文件的目录结构,默认为/,要求目录必须已存在;akId 表示使用 AccessKey 直接授权时,对应的 AccessKey ID;akSecret 表示使用 AccessKey 直接授权时,对应的 AccessKey Secret。
    {"server":"xxxxx-xxxxx.cn-heyuan.nas.aliyuncs.com","vers":"3","path":"/data","options":"nolock,tcp,noresvport"}
    ReadOnlyboolean

    数据卷是否只读。默认值:false。

    false
    Resourceobject

    运行环境资源信息。

    Coresfloat

    运行环境的 CPU 个数。

    2
    Memoryfloat

    运行环境的内存大小。单位为 GiB。

    4
    Disksarray<object>

    云盘数组。

    object

    云盘数组。

    Typestring

    云盘类型。目前仅支持 System,表示系统盘。

    System
    Sizeinteger

    云盘大小。单位为 GiB。

    40
    InstanceTypesarray

    运行环境的实例规格。最多 5 组。

    string

    运行环境的实例规格。

    说明 该参数仅在DeploymentPolicy. AllocationSpec取值为Standard时生效。
    ecs.c7a.8xlarge
    RetryPolicyobject

    任务重试策略。

    RetryCountinteger

    重试次数。取值范围:1~10。默认值:3。

    5
    ExitCodeActionsarray<object>

    重试规则。最多 10 组。

    object

    重试规则。

    ExitCodelong

    任务退出码,配合 Action 组成作业重试规则。取值范围:0~255。

    1
    Actionstring

    任务下一步行为。

    • Retry:当命中特定退出码时,作业开始新一轮重试。

    • Exit:当命中特定退出码时,作业退出。

    Retry
    ExecutorPolicyobject

    任务执行策略。

    MaxCountinteger

    作业运行最大节点数。

    1
    ArraySpecobject

    数组作业详情。子作业索引值通过环境变量传递到运行环境中,支持用户业务程序引用。环境变量包括:

    • EHPC_JOB_NAME:作业名称,对应参数 JobName。
    • EHPC_JOB_ID:作业 ID。
    • EHPC_TASK_NAME:任务名称,对应参数 TaskName。
    • EHPC_EXECUTOR_ID:执行单元 ID。
    • EHPC_ARRAY_TASK_ID:子作业索引值。
    • EHPC_ARRAY_TASK_COUNT:子作业总数量。
    • EHPC_ARRAY_TASK_MAX:子作业索引最大值,对应参数 IndexStart。
    • EHPC_ARRAY_TASK_MIN:子作业索引最小值,对应参数 IndexEnd。
    • EHPC_ARRAY_TASK_STEP:子作业索引步长,对应参数 IndexStep。
    IndexStartinteger

    数组作业索引的起始值。取值范围:0~4999。

    0
    IndexEndinteger

    数组作业索引的结束值。取值范围:0~4999,且大于等于 IndexStart。

    9
    IndexStepinteger

    数组作业索引的间隔。

    说明 若数组作业属性为 IndexStart=1,IndexEnd=5,IndexStep=2,则该数组作业包含三个子作业,子作业索引值分别为 1,3,5,用户业务程序可以通过环境变量方式访问。
    1
    TaskSustainableboolean

    是否是长时间运行的作业。

    • true: 后台服务作业。
    • false: 批处理作业。

    默认值:false

    true
    DeploymentPolicyobject

    资源部署策略。

    AllocationSpecstring

    资源类型。

    • Standard:标准型。
    • Dedicated:专属型,需开通白名单使用。
    • Economic:经济型,需开通白名单使用。
    Dedicated
    Networkobject

    网络配置信息。

    Vswitcharray

    交换机数组。

    string

    交换机 ID。

    vsw-xxxx
    EnableExternalIpAddressboolean

    作业是否创建公网 IP。

    • true:创建公网 IP。
    • false: 不创建公网 IP。

    默认值:false

    true
    Tagarray<object>

    作业标签信息。最多 20 组。

    object

    作业标签信息。

    Keystring

    作业标签键。一旦传入该值,则不允许为空字符串。最多支持 128 个字符,不能以 aliyun 和 acs:开头,不能包含 http://或 https://。

    TestKey
    Valuestring

    作业标签值。一旦传入该值,可以为空字符串。最多支持 128 个字符,不能包含 http://或者 https://。

    TestValue
    Poolstring

    作业资源池。

    compute
    Priorityinteger

    作业优先级。取值越大,作业调度优先级越高。取值范围:1~100。

    1
    Levelstring

    算力等级,仅在资源类型为经济型时有效。支持以下类型:

    • General:通用型。
    • Performance:性能型。

    默认值:General

    General
    JobSchedulerstring

    作业调度器类型。

    • HPC
    • K8S

    默认值:HPC

    HPC
    SecurityPolicyobject

    安全策略。

    SecurityGroupobject

    安全组。

    SecurityGroupIdsarray

    安全组 ID 数组。

    string

    安全组 ID。

    sg-xxxxxxxxxxxxxxx
    DependencyPolicyobject

    依赖策略。

    JobDependencyarray<object>

    作业依赖。最多 10 组。

    object

    作业依赖。

    Typestring

    依赖类型。取值范围:

    • AfterSucceeded:所依赖作业或数组作业所有子任务运行成功(退出码为 0)。
    • AfterFailed:所依赖作业或数组作业任一子任务运行失败(退出码非 0)。
    • AfterAny:所依赖作业运行结束(成功或失败)。
    • AfterCorresponding:所依赖数组作业对应的子任务运行成功(退出码为 0)。

    默认值:AfterSucceeded。

    AfterSucceeded
    JobIdstring

    作业 ID。

    job-bjxxxxxxxxxxxx

    返回参数

    名称类型描述示例值
    object

    Schema of Response

    RequestIdstring

    请求 ID。

    896D338C-E4F4-41EC-A154-D605E5DE****
    JobIdstring

    作业 ID。

    job-xxxx
    Tasksarray<object>

    任务列表。

    Tasksobject

    任务列表详情。

    TaskNamestring

    任务名称。

    task0
    ExecutorIdsarray

    任务包含的 Executor ID 列表。

    ExecutorIdsstring

    Executor ID。格式为 JobId-TaskName-ArrayIndex。

    [\"job-xxxx-task0_11-2\"]

    示例

    正常返回示例

    JSON格式

    {
      "RequestId": "896D338C-E4F4-41EC-A154-D605E5DE****",
      "JobId": "job-xxxx",
      "Tasks": [
        {
          "TaskName": "task0",
          "ExecutorIds": [
            "[\\\"job-xxxx-task0_11-2\\\"]"
          ]
        }
      ]
    }

    错误码

    HTTP status code错误码错误信息描述
    400InvalidParamsThe specified parameter %s is invalid.无效的参数:%s
    400InDebtYour account has overdue payments.您的账户已欠费
    400NotEnabledYou have not enabled this service.您的账户还未开通此服务
    403GetResourceFailedFailed to get resource.获取资源失败
    403RecommendEmpty.InstanceTypeSoldOutThe resource is out of stock.资源已售罄
    403DuplicateTagKeyDuplicate tag key exists: %s.存在重复的标签主键。
    403PoolNotFoundThe specified pool was not found.资源池不存在
    403PoolStatusInvalidThe specified pool in invalid status.无效资源池状态
    403QuotaExceeded.PrivateIpAddressInsufficient private IP addresses in vSwitch: %s.vSwitch可用私网IP不足量: %s
    403SecurityGroupInstanceLimitExceedThe maximum number of instances in a security group is exceeded.安全组内已有的实例数量已达到最大限制。
    403QuotaExceeded.ResourceInsufficient resource quota.资源配额不足
    404ImageNotFoundThe specified image does not exist.指定的镜像不存在,请您检查该参数是否正确。
    404SecurityGroupNotExistsThe security group does not exist.安全组不存在
    406AliyunErrorAn Alibaba Cloud product error occurred.阿里云产品错误. %s
    406EcsErrorAn error occurred while calling the ECS API operation.ECS API调用出错
    406DbErrorA database error occurred.数据库错误
    503ServiceUnavailableThe request has failed due to a temporary failure of the server.请求失败,服务暂时不可用

    访问错误中心查看更多错误码。

    变更历史

    变更时间变更内容概要操作
    2025-03-13OpenAPI 错误码发生变更查看变更详情
    2025-02-20OpenAPI 错误码发生变更查看变更详情
    2024-12-30OpenAPI 错误码发生变更、OpenAPI 入参发生变更查看变更详情
    2024-12-19OpenAPI 错误码发生变更查看变更详情
    2024-11-11OpenAPI 错误码发生变更查看变更详情
    2024-09-18OpenAPI 错误码发生变更查看变更详情
    2024-05-14OpenAPI 错误码发生变更查看变更详情
    2024-05-11OpenAPI 错误码发生变更、OpenAPI 返回结构发生变更查看变更详情