经 Amazon ECS 优化的 AMI - Amazon Elastic Container Service

经 Amazon ECS 优化的 AMI

Amazon ECS 提供已根据这些要求和建议进行了预配置的经 Amazon ECS 优化的 AMI,以运行您的容器工作负载。建议对 Amazon EC2 实例使用经 Amazon ECS 优化的 Amazon Linux 2023 AMI,除非应用程序要求使用 Amazon EC2 基于 GPU 的实例、特定的操作系统或在该 AMI 中尚不可用的 Docker 版本。有关 Amazon Linux 2 和 Amazon Linux 2023 实例的信息,请参阅《Amazon Linux 2023 用户指南》中的比较 Amazon Linux 2 和 Amazon Linux 2023。从最新的经 Amazon ECS 优化的 AMI 启动容器实例可确保您收到最新的安全更新和容器代理版本。有关如何启动实例的信息,请参阅 启动 Amazon ECS Linux 容器实例

经 Amazon ECS 优化的 AMI 的 Linux 变体使用 Amazon Linux 2 AMI 作为其基础。还提供了 Amazon Linux 2 AMI 版本注释。有关更多信息,请参阅 Amazon Linux 2 版本注释

建议您使用带有 Linux 内核 5.10 的 AMI,因为 Linux 内核 4.14 已于 2024 年 1 月 10 日终止使用。

以下经 Amazon ECS 优化的 AMI 的变体可用于您的 Amazon EC2 实例。

操作系统 AMI 描述 存储配置
Amazon Linux 2023

经 Amazon ECS 优化的 Amazon Linux 2023 AMI

Amazon Linux 2023 是 AWS 的下一代 Amazon Linux。在大多数情况下,推荐用于为您的 Amazon ECS 工作负载启动 Amazon EC2 实例。有关更多信息,请参阅《Amazon Linux 2023 用户指南》中的什么是 Amazon Linux 2023

预设情况下,经 Amazon ECS 优化的 Amazon Linux 2023 AMI 附带一个 30GiB 的根卷。您可以在启动时修改 30 GiB 的根卷大小,以增加您的容器实例上的可用存储。此存储用于操作系统和 Docker 映像与元数据。

经 Amazon ECS 优化的 Amazon Linux 2023 AMI 的默认文件系统是 xfs,Docker 使用 overlay2 存储驱动程序。有关更多信息,请参阅 Docker 文档中的使用 OverlayFS 存储驱动程序

Amazon Linux 2023(arm64)

经 Amazon ECS 优化的 Amazon Linux 2023(arm64)AMI

基于 Amazon Linux 2023,建议在为 Amazon ECS 工作负载启动 Amazon EC2 实例时使用此 AMI,这些实例由基于 ARM 的 AWS Graviton/Graviton 2 处理器提供支持。有关更多信息,请参阅适用于 Linux 实例的 Amazon EC2 用户指南中的一般用途实例

经 Amazon ECS 优化的 Amazon Linux 2023(arm64)AMI 不随附 AWS CLI 预装。

Amazon Linux 2023(Neuron)

经 Amazon ECS 优化的 Amazon Linux 2023(Neuron)AMI

基于 Amazon Linux 2023,建议在启动 Amazon EC2 Inf1 实例时使用此 AMI。带有预先配置 AWS Inferentia 驱动程序和Docker 的 AWS Neuron运行时,它使得在 Amazon ECS 上运行机器学习推理工作负载变得更加容易。有关更多信息,请参阅 在 Amazon ECS 的 Amazon Linux 2 上使用 AWS Neuron。经 Amazon ECS 优化的 Amazon Linux 2023(Neuron)AMI 不随附 AWS CLI 预装。

Amazon Linux 2

经 Amazon ECS 优化的 Amazon Linux 2 内核 5.10 AMI

基于 Amazon Linux 2,在启动 Amazon EC2 实例时使用此 AMI,您需要为 Amazon ECS 工作负载使用 Linux 内核 5.10 而不是内核 4.14。经 Amazon ECS 优化的 Amazon Linux 2 内核 5.10 AMI 未预装 AWS CLI。

预设情况下,基于Amazon Linux 2 的经 Amazon ECS 优化的 AMI(经 Amazon ECS 优化的 Amazon Linux 2 AMI、经 Amazon ECS 优化的 Amazon Linux 2(arm64)AMI 和Amazon ECS GPU 优化型 AMI)随附单个 30 GiB 根卷发货。您可以在启动时修改 30 GiB 的根卷大小,以增加您的容器实例上的可用存储。此存储用于操作系统和 Docker 映像与元数据。

经 Amazon ECS 优化的 Amazon Linux 2 AMI 的原定设置文件系统是 xfs,Docker 使用 overlay2 存储驱动程序。有关更多信息,请参阅 Docker 文档中的使用 OverlayFS 存储驱动程序

经 Amazon ECS 优化的 Amazon Linux 2 AMI

此项适用于您的 Amazon ECS 工作负载。经 Amazon ECS 优化的 Amazon Linux 2 AMI 不随附 AWS CLI 预装。

Amazon Linux 2(arm64)

经 Amazon ECS 优化的 Amazon Linux 2 内核 5.10(arm64)AMI

基于 Amazon Linux 2,此 AMI 用于您的 Amazon EC2 实例,这些实例由基于 ARM 的 AWS Graviton/Graviton 2 处理器提供支持,您需要为 Amazon ECS 工作负载使用 Linux 内核 5.10 而不是 Linux 内核 4.14。有关更多信息,请参阅适用于 Linux 实例的 Amazon EC2 用户指南中的一般用途实例

经 Amazon ECS 优化的 Amazon Linux 2 (arm64) AMI 不随附 AWS CLI 预装。

经 Amazon ECS 优化的 Amazon Linux 2(arm64)AMI

基于 Amazon Linux 2,在为 Amazon ECS 工作负载启动 Amazon EC2 实例时使用此 AMI,这些实例由基于 ARM 的 AWS Graviton/Graviton 2 处理器提供支持。

经 Amazon ECS 优化的 Amazon Linux 2 (arm64) AMI 不随附 AWS CLI 预装。

Amazon Linux 2(GPU)

Amazon ECS GPU 优化型内核 5.10 AMI

基于 Amazon Linux 2,建议在为 Amazon ECS 工作负载启动基于 Amazon EC2 GPU 的实例(含 Linux 内核 5.10)时使用此 AMI。预配置了 NVIDIA 内核驱动程序和 Docker GPU 运行时,可以使正在运行的工作负载充分利用 Amazon ECS 上的 GPU。有关更多信息,请参阅 在 Amazon ECS 上使用 GPU
Amazon ECS GPU 优化型 AMI 基于 Amazon Linux 2,建议在为 Amazon ECS 工作负载启动基于 Amazon EC2 GPU 的实例(含 Linux 内核 4.14)时使用此 AMI。预配置了 NVIDIA 内核驱动程序和 Docker GPU 运行时,可以使正在运行的工作负载充分利用 Amazon ECS 上的 GPU。有关更多信息,请参阅 在 Amazon ECS 上使用 GPU
Amazon Linux 2(Neuron)

经 Amazon ECS 优化的 Amazon Linux 2(Neuron)内核 5.10 AMI

基于 Amazon Linux 2,此 AMI 适用于 Amazon EC2 Inf1、Trn1 或 Inf2 实例。其带有预先配置 AWS Inferentia(含 Linux 内核 5.10)和 AWS Trainium 驱动程序以及 Docker 的 AWS Neuron 运行时,使得在 Amazon ECS 上运行机器学习推理工作负载变得更加容易。有关更多信息,请参阅 在 Amazon ECS 的 Amazon Linux 2 上使用 AWS Neuron。经 Amazon ECS 优化的 Amazon Linux 2(Neuron)AMI 不随附 AWS CLI 预装。
经 Amazon ECS 优化的 Amazon Linux 2(Neuron)AMI 基于 Amazon Linux 2,此 AMI 适用于 Amazon EC2 Inf1、Trn1 或 Inf2 实例。带有预先配置 AWS Inferentia 和 AWS Trainium 驱动程序以及 Docker 的 AWS Neuron 运行时系统,它使得在 Amazon ECS 上运行机器学习推理工作负载变得更加容易。有关更多信息,请参阅 在 Amazon ECS 的 Amazon Linux 2 上使用 AWS Neuron。经 Amazon ECS 优化的 Amazon Linux 2(Neuron)AMI 不随附 AWS CLI 预装。

Amazon ECS 为 GitHub 上的 Amazon ECS 优化 AMI 的 Linux 变体提供了更改日志。有关更多信息,请参阅更改日志

经 Amazon ECS 优化的 AMI 的 Linux 变体使用 Amazon Linux 2 AMI 或 Amazon Linux 2023 AMI 作为其基础。您可以通过查询 Systems Manager Parameter Store API 来检索每个变体的 Amazon Linux 2 来源 AMI 名称或 Amazon Linux 2023 AMI 名称。有关更多信息,请参阅 检索经 Amazon ECS 优化的 AMI 元数据。还提供了 Amazon Linux 2 AMI 版本注释。有关更多信息,请参阅 Amazon Linux 2 版本注释。还提供了 Amazon Linux 2023 发布说明。有关更多信息,请参阅 Amazon Linux 2023 发布说明

以下页面提供了有关更改的更多信息:

将安全更新应用于经 Amazon ECS 优化的 AMI

基于 Amazon Linux 的、经 Amazon ECS 优化的 AMI 包含的自定义版本的 cloud-init。Cloud-init 是一个程序包,用于在云计算环境中引导 Linux 映像,并在启动实例时执行所需操作。默认情况下,在 2024 年 6 月 12 日之前发布的基于 Amazon Linux 的所有经 Amazon ECS 优化的 AMI 在实例启动时都应用了“关键”和“重要”安全更新。

从 2024 年 6 月 12 日发布的基于 Amazon Linux 2 的、经 Amazon ECS 优化的 AMI 开始,默认行为将不再包括在发布时更新程序包。相反,建议您在发布版本后更新为新的经 Amazon ECS 优化的 AMI。经 Amazon ECS 优化的 AMI 在有可用安全更新或基本 AMI 更改时发布。这将确保您收到最新的程序包版本和安全更新,并且程序包版本在实例启动后不可变。有关检索最新经 Amazon ECS 优化 AMI 的更多信息,请参阅 检索经 Amazon ECS 优化的 AMI 元数据

建议将您的环境自动化,以在新 AMI 可用时进行更新。您可以使用托管实例耗尽来实现此功能。有关更多信息,请参阅 Amazon ECS 托管实例耗尽

如果您想继续对特定 AMI 版本手动应用“关键”和“重要”安全更新,则可以在您的 Amazon EC2 实例上运行以下命令。

yum update --security

如果您想在启动时重新启用安全更新,则可以在启动 Amazon EC2 实例时将以下行添加到 cloud-init 用户数据的 #cloud-config 部分。有关更多信息,请参阅《Amazon Linux User Guide》中的 Using cloud-init on Amazon Linux 2

#cloud-config repo_upgrade: security