在使用 Terraform 配置自动缩放组时,我感到困惑。我应该对 EC2 属性(例如哪些 AMI、实例类型等(使用启动配置还是启动模板?
我不知道它们之间有什么区别,我们应该使用它们以及它们为什么存在?
启动模板 (LT( 比启动配置 (LC( 更新,并提供了更多选项。因此,AWS 文档建议使用启动模板 (LT( 而不是启动配置 (LC(:
我们建议您从启动模板创建 Auto Scaling 组,以确保您从 Amazon EC2 获得最新功能。
LT 和 LC 之间的实际关键区别之一是LC 是不可变的。定义后,无法对其进行编辑。只能选择更换。但是,单个 LT 可以有多个版本:
通过定义启动模板而不是启动配置,您可以拥有模板的多个版本。使用版本控制,您可以创建完整参数集的子集,然后重复使用它来创建其他模板或模板版本。
此外,LT还提供了更多EC2选项供您配置,例如,只能使用LT设置专用托管。同样,使用 T2 无限突增积分选项的功能仅在 LT 中可用。
因此,如果可以的话,最好遵循 AWS 的建议并使用 LT。
两者都用于 ASG 中的实例创建。
启动配置(旧版(:每次都必须重新创建,因为不允许修改。
启动模板(由 AWS 推荐(:
- 允许编辑和更新。
- 维护版本。
- 可以使用T2无限突发功能。
- 允许同时使用按需实例和竞价型实例进行预置。
- 创建参数子集。(用于重用和继承的部分配置(
- 还可用于使用 AWS 控制台、开发工具包和 CLI 启动独立实例。
我希望上面的回答能澄清这个疑问。
启动模板类似于通常 Auto Scaling 组用于启动 EC2 实例的启动配置。但是,通过定义启动模板而不是启动配置,您可以拥有模板的多个版本。
AWS 建议我们应该使用启动模板而不是启动配置,以确保我们可以利用 Amazon EC2 的最新功能,例如 T2 Unlimited 实例。
启动配置与自动扩展组一起使用。当您使用 aws EC2 控制台、AWS 开发工具包或命令行工具启动实例时,将使用启动模板。
启动模板使您能够存储参数(AMI、实例类型、安全组和密钥对等(,这样您就不需要在每次启动新实例时都定义这些参数。
2023 年 5 月... 此横幅消息显示在 AWS 管理控制台中 EC2 服务的"启动配置"部分中:
Amazon EC2建议不使用启动配置
Auto Scaling 不再添加对新 EC2 功能的支持以启动配置,并将在 2022 年 12 月 31 日之后停止支持新的 EC2 实例类型。我们建议使用启动配置的客户迁移到启动模板。有关详细信息,请参阅文档
您可以使用启动模板来支持自动缩放组(不确定过去是否如此(
来自 AWS Docs 的最新指导
启动配置不再添加对 2022 年 12 月 31 日之后发布的新 Amazon EC2 实例类型的支持。此外,在 2023 年 6 月 1 日当天或之后创建的任何新账户将无法选择通过控制台创建新的启动配置。但是,API、CLI 和 CloudFormation 访问权限将提供给在 2023 年 6 月 1 日至 2023 年 12 月 31 日期间创建的新账户,以支持具有自动化用例的客户。在 2024 年 1 月 1 日当天或之后创建的新账户将无法使用控制台、API、CLI 和 CloudFormation 创建新的启动配置。有关将 Auto Scaling 组迁移到启动模板的信息,请参阅迁移到启动模板。