如何从 ECS AL2 迁移到 ECS AL2023 - AWS Batch

如何从 ECS AL2 迁移到 ECS AL2023

AL2023 是一款基于 Linux 的操作系统,旨在为云应用程序提供安全、稳定和高性能的环境。有关 AL2 和 AL2023 之间差异的详细信息,请参阅《Amazon Linux 2023 用户指南》中的 Compare Amazon Linux 2023 and Amazon Linux 2

从 2026 年 1 月起,AWS Batch 将新 Amazon ECS 计算环境的默认 AMI 从 Amazon Linux 2 更改为 Amazon Linux 2023,因为 AWS 将终止对 Amazon Linux 2 的支持。如果您在创建新计算环境时没有为 imageType.Ec2Configuration 字段指定值,则将使用默认 AMI。我们建议将 AWS Batch Amazon ECS 计算环境迁移到 Amazon Linux 2023,以保持最佳性能和安全性。

您可以使用以下路径之一从 AL2 升级到 AL2023,具体取决于您的计算环境配置。

使用 Ec2Configuration.ImageType 升级
使用启动模板升级
  • 如果您使用启动模板来指定基于 ECS_AL2023 的 AMI,请确保您的启动模板与 Amazon Linux 2023 兼容。有关适用于 Amazon ECS 优化型 AMI 的 Amazon Linux 2023 更改的信息,请参阅《Amazon ECS 用户指南》中的从 Amazon Linux 2 迁移到 Amazon Linux 2023 Amazon ECS 优化版 AMI

  • 对于 AL2023 AMI,请验证所有自定义用户数据或初始化脚本是否与 AL2023 环境和软件包管理系统兼容。

使用 CloudFormation 升级
  • 如果您使用 CloudFormation 管理计算环境,请更新模板以将 Ec2Configuration 中的 ImageType 属性从 ECS_AL2 更改为 ECS_AL2023(如果您使用的是 GPU 实例,则更改为 ECS_AL2023_NVIDIA):

    ComputeEnvironment: Type: AWS::Batch::ComputeEnvironment Properties: ComputeResources: Ec2Configuration: - ImageType: ECS_AL2023

    然后更新 CloudFormation 堆栈以应用更改。

  • 如果您的 CloudFormation 模板使用 ImageIdOverride 指定了某个自定义 AMI,请确保 AMI ID 对应于某个基于 AL2023 的 AMI 并且与 ImageType 设置一致。

迁移注意事项

从 Amazon Linux 2 迁移到 Amazon Linux 2023 时,应注意以下因素:

  • 软件包管理:Amazon Linux 2023 使用 dnf 而不是 yum 来进行软件包管理。

  • 系统服务:AL2 和 AL2023 的某些系统服务及其配置可能不同。

  • 容器运行时:AL2 和 AL2023 都支持 Docker,但是 AL2023 的默认配置可能不同。

  • 安全性:AL2023 包括增强的安全功能,可能需要更新安全性相关配置。

  • 实例元数据服务版本 2(IMDSv2):IMDSv2 是一项面向会话的服务,需要基于令牌的身份验证才能访问 EC2 实例元数据,从而增强了安全性。有关 IMDS 的更多信息,请参阅《Amazon EC2 用户指南》中的实例元数据服务版本 2 的工作原理

有关更改和迁移注意事项的完整列表,请参阅《Amazon ECS 用户指南》中的从 Amazon Linux 2 迁移到 Amazon Linux 2023 Amazon ECS 优化版 AMI