Terraform API是否将route53记录添加到自动缩放所配置的每个实例?
一旦实例终止,我还需要销毁A记录。
我的代码部署脚本使用DNS名称。
答案 0 :(得分:2)
当使用自动缩放时,Terraform控制整个自动缩放过程,但不管理自动缩放系统生成的实例。因此,必须通过自动缩放本身而不是Terraform来触发因创建和销毁实例而需要采取的任何操作。
Auto Scaling Lifecycle Hooks提供了一种触发操作的方法,以响应自动缩放组中实例状态的更改。
原则上,人们可以使用自动缩放生命周期钩子来触发运行的Terraform,但自动无人值守的Terraform运行并不常见,因此目前没有内置机制来实现这一功能。需要编写某种包装脚本来编排Terraform并处理运行时发生的任何错误。
答案 1 :(得分:1)
感谢马丁。
将Lambda和boto3与Cloudwatch中的事件一起使用来解决这个问题。 通过了标签' cname'通过ASG启动实例。
要删除,请在创建实例时使用CNAME查询Route53表。 然后在Route53上使用boto3运行删除,使用IP作为'值'
感谢。