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

计算资源 AMI

默认情况下,AWS Batch 托管计算环境将最近批准的经 Amazon ECS 优化的 AMI 版本用于计算资源。但是,您可能出于以下原因需要创建自己的 AMI 以用于托管计算环境和非托管计算环境:

  • 增加 AMI 根卷或数据卷的存储大小

  • 为支持的 Amazon EC2 实例类型添加实例存储卷

  • 使用自定义选项配置 Amazon ECS 容器代理

  • 将 Docker 配置为使用自定义选项

  • 配置 GPU 工作负载 AMI,它允许容器访问支持的 Amazon EC2 实例类型上的 GPU 硬件

计算资源 AMI 规范

基本 AWS Batch 计算资源 AMI 规范包含:

必需

  • 在 HVM 虚拟化类型 AMI 上运行至少 3.10 版 Linux 内核的现代 Linux 分配。

    重要

    多节点并行作业只能在安装了 ecs-init 程序包的 Amazon Linux 实例上启动的计算资源上运行。我们建议您在创建计算环境时使用默认的经过 Amazon ECS 优化的 AMI(而不是通过指定自定义 AMI)。有关更多信息,请参阅多节点并行作业

  • Amazon ECS 容器代理(最好是最新版本)。有关更多信息,请参阅 Amazon Elastic Container Service Developer Guide 中的安装 Amazon ECS 容器代理

  • 在启动 Amazon ECS 容器代理时,必须使用 ECS_AVAILABLE_LOGGING_DRIVERS 环境变量将 awslogs 日志驱动程序指定为可用的日志驱动程序。有关更多信息,请参阅 Amazon Elastic Container Service Developer Guide 中的 Amazon ECS 容器代理配置

  • 运行至少 1.9 版的 Docker 守护程序以及任何 Docker 运行时依赖项。有关更多信息,请参阅 Docker 文档中的检查运行时依赖项

    注意

    要获得最佳体验,建议您使用所使用的相应 Amazon ECS 代理版本附带的且经测试的 Docker 版本。有关更多信息,请参阅 Amazon Elastic Container Service Developer Guide 中的 Amazon ECS 容器代理版本

推荐使用

  • 用于运行和监控 Amazon ECS 代理的初始化和 nanny 流程。经 Amazon ECS 优化的 AMI 使用 ecs-init upstart 流程,其他操作系统可能使用 systemd。要查看使用 systemd 启动和监视 Amazon ECS 容器代理的几个示例用户数据配置脚本,请参阅 Amazon Elastic Container Service Developer Guide 中的示例容器实例用户数据配置脚本。有关 ecs-init 的更多信息,请参阅 GitHub 上的 ecs-init 项目。托管计算环境至少需要 Amazon ECS 代理才能在系统启动时启动。如果 Amazon ECS 代理未在计算资源上运行,则无法接受来自 AWS Batch 的任务。

经 Amazon ECS 优化的 AMI 已根据这些要求和建议进行预配置。建议您将经 Amazon ECS 优化的 AMI 或 Amazon Linux AMI 与为您的计算资源安装的 ecs-init 程序包一起使用。如果您的应用程序需要特定的操作系统或这些 AMI 中尚未提供的 Docker 版本,请选择另一个 AMI。有关更多信息,请参阅 Amazon Elastic Container Service Developer Guide 中的经 Amazon ECS 优化的 AMI

本页内容: