amazon-web-services - 如何通过对资源进行手动更改来更新 Terraform 状态

标签 amazon-web-services terraform

我已经在 AWS 上配置了一些资源,其中也包括 EC2 实例,但之后我们为这些实例附加了一些额外的安全组,这些实例现在被 terraform 检测到,它说它会根据配置文件回滚它.

假设我有以下将 SG 附加到我的 EC2 的代码

vpc_security_group_ids = ["sg-xxxx"]

但现在我的问题是如何更新 terraform.tfstate 文件,使其不应该分离手动附加的安全组:

我可以如下解决:

  1. 我将使用 terraform refresh 刷新 terraform 状态文件,这将更新状态文件。
  2. 然后我必须使用手动附加的安全组 ID 手动更新我的 terraform 配置文件

但是如果我们有一个复杂的场景,那么对于小型设置是可能的,那么我们在 terraform 中是否有任何其他机制可以检测漂移并更新它

谢谢!!

最佳答案

Terraform 无法在检测到 AWS 上的偏差时更新您的源代码。

你说的流程是对的:

  1. 将在 AWS 中完成的手动更改报告到 Terraform 代码中
  2. 制定terraform 计划。它会刷新状态并告诉你是否还有差异

关于amazon-web-services - 如何通过对资源进行手动更改来更新 Terraform 状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54018128/

相关文章:

amazon-web-services - 如何在cloudformation中自引用SourceSecurityGroup?

node.js - 使用 AWS EB Worker 时的自定义 header

等待条件时terraform helm释放超时

amazon-web-services - 是否可以在 Terraform 中执行 CloudFormation 文件?

amazon-web-services - 如何使用java sdk创建AWS Elastic Beanstalk环境?

c# - 关闭传输错误。等待客户端数据超时

amazon-web-services - AWS Lambda : Execute function B 10 minutes after function A

azure - 使用 terraform 获取 Azure 函数应用程序 SLOT 默认主机 key

terraform - 为什么 Terraform 看不到我手动安装的提供程序?

google-cloud-platform - 我可以为 Terraform for GCP 授予管理员角色吗? (Cloud Run 域映射示例)