使用 Terraform 配置自动缩放组时,我感到很困惑。我应该为 EC2 属性使用启动配置还是启动模板,例如哪个 AMI、实例类型……?
我不知道它们之间有什么区别,我们应该使用哪些以及它们为什么存在?
使用 Terraform 配置自动缩放组时,我感到很困惑。我应该为 EC2 属性使用启动配置还是启动模板,例如哪个 AMI、实例类型……?
我不知道它们之间有什么区别,我们应该使用哪些以及它们为什么存在?
启动模板 (LT) 比启动配置 (LC) 更新,并提供更多使用选项。因此,AWS 文档建议使用启动模板 (LT) 而非启动配置 (LC):
我们建议您从启动模板创建 Auto Scaling 组,以确保您从 Amazon EC2获得最新功能。
LT 和 LC 之间实际的关键区别之一是LC 是不可变的。一旦你定义它,你就不能编辑它。只有更换是一种选择。但是,单个 LT 可以有多个版本:
定义启动模板而不是启动配置允许您拥有多个版本的模板。使用版本控制,您可以创建完整参数集的子集,然后重用它来创建其他模板或模板版本。
LT 还提供更多 EC2 选项供您配置,例如,只能使用 LT 设置专用托管。同样,使用 T2 无限突发信用选项的能力仅在 LT 中可用。
因此,如果可以,最好遵循 AWS 的建议并使用 LT。
启动配置(旧版):每次都必须重新创建,因为不允许修改。
启动模板(AWS 推荐):
我希望上面的答案能澄清这个疑问。
启动模板类似于 Auto Scaling 组通常用于启动 EC2 实例的启动配置。但是,定义启动模板而不是启动配置允许您拥有多个版本的模板。
AWS 建议我们应该使用启动模板而不是启动配置,以确保我们可以利用 Amazon EC2 的最新功能,例如 T2 Unlimited 实例。
启动配置与 Auto Scaling 组一起使用。当您使用 aws EC2 控制台、AWS 开发工具包或命令行工具启动实例时,会使用启动模板。
启动模板使您能够存储参数(AMI、实例类型、安全组和密钥对等),这样您就无需在每次启动新实例时都定义这些参数。