Terraform、自动缩放侦听新AMI并自动部署

Terraform、自动缩放侦听新AMI并自动部署,terraform,packer,Terraform,Packer,我目前广泛使用Hashicorp产品,在AWS生态系统中使用“不变的微服务”理念 简单地说,我当前的工作流程包括使用packer构建一个AMI,然后使用terraform进行部署。我的Terraform脚本使用了一个自动缩放策略,它会相应地选择最新的AMI版本和规定 我想知道Terraform套件中是否有一种方法,可以自动侦听新的AMI版本,然后进行配置,而无需执行Terraform Apply?我正试图实现这样一个目标:打包器脚本构建一个新的AMI,这将触发在旧映像下配置的硬件被关闭,并由基于

我目前广泛使用Hashicorp产品,在AWS生态系统中使用“不变的微服务”理念

简单地说,我当前的工作流程包括使用packer构建一个AMI,然后使用terraform进行部署。我的Terraform脚本使用了一个自动缩放策略,它会相应地选择最新的AMI版本和规定


我想知道Terraform套件中是否有一种方法,可以自动侦听新的AMI版本,然后进行配置,而无需执行
Terraform Apply
?我正试图实现这样一个目标:打包器脚本构建一个新的AMI,这将触发在旧映像下配置的硬件被关闭,并由基于新AMI的新硬件替换。

您可以通过Terraform实现,但依赖机制将是一个自定义Lambda函数。除了描述和获取最新的成功映像外,您还需要处理“克隆TF repo,在需要的地方执行替换变量并执行”部分。还要确保这是经过良好测试的超重型,因为一旦运行Terraform,您只需要预期的行为:)


Terraform是一种用于调配基础设施的工具。你所要求的听起来像是编曲。围绕这一点,您有很多选择,包括通过Lambda函数连接到CI/CD系统。其中大部分可以基于发生的变化来运行,也可以仅仅依靠Terraform的自然幂等性来连续运行,并在AMI发生变化时让Terraform处理事情。不幸的是,现在感觉这更像是一个工具推荐问题,所以这是离题的。如果你能缩小这个问题的范围,那么就有可能做出有用的回答。