我们已经使用 Terraform 为一个项目设置了基础设施,包括代码部署、ALB 和自动缩放组。到目前为止,我们正在进行就地部署。但是现在我们正在尝试切换到蓝/绿部署。
由于 CodeDeploy 蓝/绿部署在成功部署时替换了整个自动缩放组,因此 Terraform 状态文件中自动缩放组的旧状态将变得陈旧,并且不会反射(reflect) CodeDeploy 服务添加的新自动缩放组。
有什么已知的方法可以克服这个问题吗?
最佳答案
根据您触发 Code Deploy 部署的方式,您可以运行 Terraform import作为部署脚本中的部署后 Hook ,用于更新 Terraform 状态以指向新的自动缩放组。您需要通过许多客户端库之一或 CLI 以某种方式获取新 ASG 的名称。
terraform import aws_autoscaling_group.some_asg_identifier name-of-your-replacement-asg
关于amazon-web-services - 在 AWS CodeDeploy 中使用蓝/绿部署时,我们如何维护自动扩展组的状态?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49197067/