terraformminorawsuser_data更改“强制替换”-最佳解决方案是什么?

我对我的 AWS EC2 user_data bootstrap bash 脚本做了一个小改动(仅限评论)。Terraform 已检测到这一点,现在想用新的 EC2 替换 EC2。但这是一项实时服务,我宁愿不必将其删除,备份所有数据,构建新服务器,然后恢复数据 - 只是为了让 terraform 开心!

有没有更简单的方法来解决这个问题,通过某种方式将代码/状态文件/aws 放在一起,这样我就可以使用 terraform 对环境进行其他更改,但不必担心会炸毁这台服务器?

我什至尝试从 AWS 控制台编辑用户数据,以使其符合我认为应该进行的更改,但这并没有奏效。

现在我正在使用-target特定的更改,但从长远来看这可能是不可持续的。

回答

您可以使用元参数指示提供程序忽略user_data对该资源的参数更改lifecycle

resource "aws_instance" "this" {
  # ...

  lifecycle {
    ignore_changes = [user_data]
  }
}


以上是terraformminorawsuser_data更改“强制替换”-最佳解决方案是什么?的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>