计算资源 AMIs - AWS Batch
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

计算资源 AMIs

默认情况下AWS Batch,托管计算环境使用最近批准的针对Amazon ECS计算资源AMI优化的 版本。但是,您可能需要考虑创建自己的 AMI 以用于托管计算环境和非托管计算环境。如果您还需要以下操作,则应执行此操作:

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

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

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

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

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

计算资源AMI规范

基本AWS Batch计算资源AMI规范由以下项组成:

必需

  • 一个现代 Linux 发行版,它在 HVM 虚拟化类型 上运行至少 3.10 版的 Linux 内核AMI。

    重要

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

  • Amazon ECS 容器代理。我们建议您使用最新版本。有关更多信息,请参阅 Amazon ECS 中的安装 Amazon Elastic Container Service Developer Guide 容器代理

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

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

    注意

    为了获得更好的体验,我们建议使用随 附带的 Docker 版本,并使用您使用的相应Amazon ECS代理版本进行测试。有关更多信息,请参阅 Amazon ECS 中的 Amazon Elastic Container Service Developer Guide 容器代理版本

推荐

  • 用于运行和监控 Amazon ECS 代理的初始化和 nanny 流程。Amazon ECS 优化的 AMI 使用 ecs-init upstart 过程,而其他操作系统可能使用 systemd。要查看使用 systemd 启动和监控 Amazon ECS 容器代理的几个示例用户数据配置脚本,请参阅 https://docs.amazonaws.cn/AmazonECS/latest/developerguide/example_user_data_scripts.htmlAmazon 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 程序包结合使用。如果您的应用程序需要特定的操作系统或这些 中尚未提供的 Docker 版本,则应选择另一个 AMIAMI。有关更多信息,请参阅 Amazon ECSAMI 中的 优化的 Amazon Elastic Container Service Developer Guide