AWS Batch
用户指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

提交作业

在注册作业定义后,您可以将其作为作业提交到 AWS Batch 作业队列。在运行时,可以覆盖作业定义中指定的许多参数。

提交作业

  1. https://console.amazonaws.cn/batch/ 打开 AWS Batch 控制台。

  2. 从导航栏中,选择要使用的区域。

  3. 在导航窗格中,选择 JobsSubmit job

  4. 对于 Job name,请为您的队列选择唯一的名称。

  5. 对于 Job definition,为作业选择之前创建的作业定义。有关更多信息,请参阅创建作业定义

  6. 对于 Job queue,选择之前创建的作业队列。有关更多信息,请参阅创建作业队列

  7. 对于 Job type,为单个作业选择 Single,或选择 Array 以提交数组作业。有关更多信息,请参阅 数组作业。此选项不适用于多节点并行作业。

  8. (仅限数组作业) 对于 Array size,指定一个介于 2 和 10000 之间的数组大小。

  9. (可选) 声明任何作业依赖项。一个作业最多可有 20 个依赖项。有关更多信息,请参阅 作业依赖项

    1. 对于 Job depends on,输入必须在此作业启动前完成的任何作业的作业 ID。

    2. (仅限数组作业) 对于 N-To-N job dependencies,指定任何数组作业的一个或多个作业 ID (此作业的每个子作业索引均依赖于依赖项的相应子索引作业)。例如,JobB:1 依赖于 JobA:1,依此类推。

    3. (仅限数组作业) 选择 Run children sequentially 来为当前数组作业创建 SEQUENTIAL 依赖项。这可确保每个子索引作业等待其之前的作业完成。例如,JobA:1 依赖于 JobA:0,依此类推。

  10. 对于 Job attempts,指定尝试作业的最大次数 (在尝试失败的情况下)。有关更多信息,请参阅自动作业重试

  11. (可选)对于 Execution timeout (执行超时),指定允许作业尝试运行的最大秒数。如果某次尝试超过了超时时间,该尝试将停止,状态将转为 FAILED。有关更多信息,请参阅作业超时

  12. (可选)在 Parameters (参数) 部分中,您可以指定参数替代默认值和占位符,以便在您的作业容器启动时所运行的命令中使用。有关更多信息,请参阅参数

    1. 选择 Add parameter (添加参数)

    2. 对于 Key,指定参数的键。

    3. 对于 Value,指定参数的值。

  13. 对于 vCPUs,指定要为容器预留的 vCPU 数量。此参数将映射到 Docker Remote API创建容器部分中的 CpuShares 以及 docker run--cpu-shares 选项。每个 vCPU 相当于 1024 个 CPU 份额。您必须指定至少一个 vCPU。

  14. 对于 Memory,指定要提供给作业容器的内存硬限制 (以 MiB 为单位)。如果您的容器尝试使用超出此处指定的内存,该容器将被终止。此参数将映射到 Docker Remote API创建容器部分中的 Memory 以及 docker run--memory 选项。您必须为任务指定至少 4 MiB 内存。

  15. (可选)对于 Number of GPU ,指定您的作业将使用的 GPU 的数量。

    该作业将在固定有指定数量的 GPU 的容器上运行。

  16. 对于 Command,指定要传递到容器的命令。对于简单的命令,您可以在 Space delimited 选项卡上键入命令,就像在命令提示符中键入命令一样。确保 JSON 结果 (该结果将传递到 Docker 守护程序) 正确无误。对于较复杂的命令 (例如,带有特殊字符),您可以切换到 JSON 选项卡,然后在该选项卡中输入等效字符串数组。

    此参数将映射到 Docker Remote API创建容器部分中的 Cmd 以及 docker runCOMMAND 参数。有关 Docker CMD 参数的更多信息,请转到 https://docs.docker.com/engine/reference/builder/#cmd

    注意

    您可以在命令中使用参数替代默认值和占位符。有关更多信息,请参阅 参数

  17. (可选) 您可以指定要传递到您的作业容器的环境变量。此参数将映射到 Docker Remote API创建容器部分中的 Env 以及 docker run--env 选项。

    重要

    建议不要对敏感信息 (如凭证数据) 使用纯文本环境变量。

    1. 选择 Add environment variable (添加环境变量)

    2. 对于 Key,指定环境变量的键。

      注意

      环境变量必须以 AWS_BATCH 开头;此命名约定是为 AWS Batch 服务所设置的变量保留的。

    3. 对于 Value,指定环境变量的值。

  18. 选择 Submit job

    注意

    CloudWatch Logs 中提供 RUNNINGSUCCEEDEDFAILED 任务的日志;日志组是 /aws/batch/job,日志流名称格式为 jobDefinitionName/default/ecs_task_id(此格式在日后可能会更改)。

    在任务到达 RUNNING 状态后,您可以使用 DescribeJobs API 操作以编程方式检索其日志流名称。有关更多信息,请参阅 Amazon CloudWatch Logs User Guide 中的查看发送到 CloudWatch Logs 的日志数据。默认情况下,这些日志设置为永不过期,但您可以修改保留期。有关更多信息,请参阅 中的更改 中的日志数据保留期。