经 Amazon ECS 优化的 AMI - Amazon Elastic Container Service
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

经 Amazon ECS 优化的 AMI

经 Amazon ECS 优化的 AMI 预配置了运行 Amazon ECS 工作负载所需的必要组件。尽管您可以创建自己的容器实例 AMI,使其满足在 Amazon ECS 上运行容器化工作负载所需的基本规格,但优化 Amazon ECS 的 AMI 是由工程师在 Amazon ECS 上预先配置和测试的。 Amazon 这是可供您开始操作并快速获取 Amazon 上运行的容器的最简单方式。

经 Amazon ECS 优化的 AMI 元数据,包括 AMI 名称、Amazon ECS 容器代理版本和 Amazon ECS 运行时版本(其中包括 Docker 版本,对于每个变体可以编程方式检索)。有关更多信息,请参阅 检索经 Amazon ECS 优化的 AMI 元数据

您可以订阅 Windows AMI Amazon SNS 主题,以便发布新 AMI 或将 AMI 版本标记为专用时收到通知。有关更多信息,请参阅 订阅经 Amazon ECS 优化的 AMI 更新通知

重要

8 月之后生产的所有经 ECS 优化的 AMI 变体都将从 Docker EE(Mirantis)迁移到 Docker CE(Moby 项目)。

为了确保客户预设情况下安装了最新的安全更新,Amazon ECS 保留至少三个 Windows 经 Amazon ECS 优化的 AMI。在发布新的 Windows 经 Amazon ECS 优化的 AMI 后,Amazon ECS 将使 Windows 经 Amazon ECS 优化的 AMI 成为旧版专用。如果存在需要访问的私有 AMI,请通过向 Cloud Support 提交服务单来告知我们。

经 Amazon ECS 优化的 AMI 变体

以下 Windows 服务器版本的经 Amazon ECS优化 AMI 适用于您的 Amazon EC2 实例。

重要

8 月之后生产的所有经 ECS 优化的 AMI 变体都将从 Docker EE(Mirantis)迁移到 Docker CE(Moby 项目)。

  • 经 Amazon ECS 优化的 Windows Server 2022 Full AMI

  • 经 Amazon ECS 优化的 Windows Server 2022 Core AMI

  • 经 Amazon ECS 优化的 Windows Server 2019 Full AMI

  • 经 Amazon ECS 优化的 Windows Server 2019 Core AMI

  • 经 Amazon ECS 优化的 Windows Server 2016 Full AMI

  • Amazon ECS 经过优化的 Windows Server 20H2 Core AMI

    重要

    2022 年 8 月 9 日,经 Amazon ECS 优化的 Windows Server 20H2 Core AMI 达到终止支持日期。不会发布此 AMI 的任何新版本。有关更多信息,请参阅 Windows Server 发行版信息

Windows Server 2022、Windows Server 2019 和 Windows Server 2016 是长期服务渠道(LTSC)版本。Windows Server 20H2 是一个半年服务渠道(SAC)版本。有关更多信息,请参阅 Windows Server 发行版信息

Windows 容器注意事项

下面是您应了解的有关 Amazon EC2 Windows 容器和 Amazon ECS 的一些事项。

  • Windows 容器无法在 Linux 容器实例上运行,情况也相反。为了更好地放置 Windows 和 Linux 任务,请将 Windows 和 Linux 容器实例保持在单独的集群中,并且仅将 Windows 任务放置在 Windows 集群上。您可以设置以下放置约束,确保 Windows 任务定义仅放置在 Windows 实例上:memberOf(ecs.os-type=='windows')

  • 使用 EC2 和 Fargate 启动类型的任务支持 Windows 容器。

  • Windows 容器和容器实例并不完全支持适用于 Linux 容器和容器实例的所有任务定义和参数。对于某些参数,它们完全不受支持,而其他参数在 Windows 和 Linux 上的行为不相同。有关更多信息,请参阅 EC2 Windows 注意事项

  • 对于任务的 IAM 角色功能,您需要将 Windows 容器实例配置为在启动时允许该功能。您的容器在使用该功能时必须运行一些提供的 PowerShell 代码。有关更多信息,请参阅 任务的 Windows IAM 角色的其他配置

  • 任务的 IAM 角色功能使用凭证代理来向容器提供凭证。此凭证代理占用了容器实例上的端口 80,因此,如果您使用 IAM 角色处理任务,则端口 80 不可用于任务。对于 Web 服务容器,您可以使用 Application Load Balancer 和动态端口映射来向容器提供标准 HTTP 端口 80 连接。有关更多信息,请参阅 使用负载平衡分配 Amazon ECS 服务流量

  • Windows Server Docker 映像很大(9GiB)。因此,您的 Windows 容器实例需要比 Linux 容器实例更多的存储空间。

  • 要在 Windows Server 上运行 Windows 容器,容器的基本映像操作系统版本必须与主机的操作系统版本匹配。有关更多信息,请参阅 Microsoft 文档网站上的 Windows 容器版本兼容性。如果您的集群运行多个 Windows 版本,则可以使用置放约束来确保将任务放在运行相同版本的 EC2 实例上:memberOf(attribute:ecs.os-family == WINDOWS_SERVER_<OS_Release>_<FULL or CORE>)。有关更多信息,请参阅 检索经 Amazon ECS 优化的 AMI 元数据