amazon-web-services - 在 AWS CodeDeploy 中使用蓝/绿部署时,我们如何维护自动扩展组的状态?

标签 amazon-web-services terraform autoscaling aws-code-deploy blue-green-deployment

我们已经使用 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/

相关文章:

linux - 如何更改 Amazon EC2 实例的平台

mysql - 如何在每次堆栈启动时引导 RDS MySQL 创建表?

terraform - 从 Terraform map 变量中提取键/值

amazon-ec2 - AWS 启动配置未获取用户数据

kubernetes - GKE 自动扩缩器 'optimize-utilization'

amazon-web-services - AWS CloudFormation 模板 "Launch configuration name not found"

amazon-web-services - AWS - 在考虑性能的情况下提供静态文件

aws-cloudformation - 如何将多个预先存在的 AWS 托管角色附加到策略?

kubernetes - EKS kube系统部署CrashLoopBackOff

amazon-web-services - Amazon S3 (S3FS) 自己的云权限