如何从 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 的支持
您可以使用以下路径之一从 AL2 升级到 AL2023,具体取决于您的计算环境配置。
使用 Ec2Configuration.ImageType 升级
-
如果您没有使用启动模板或启动模板覆盖功能,请将 Ec2Configuration.ImageType 更改为
ECS_AL2023(如果您使用的是 GPU 实例,则请更改为ECS_AL2023_NVIDIA),然后运行 UpdateComputeEnvironment。 -
如果您指定了 Ec2Configuration.ImageIdOverride,Ec2Configuration.ImageType 必须与 Ec2Configuration.ImageIdOverride 中指定的 AMI 类型匹配。
如果
ImageIdOverride和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。