如何从地形中获取数据



我需要地形方面的帮助。

我使用terraform创建了一个ec2实例,创建实例后,我登录到aws控制台,并在实例中添加了我创建的实例的存储空间。

现在我对地形代码做了一些更改,之后我运行了它显示的地形计划,删除了存储。

如何在不删除存储的情况下运行地形应用程序。

手动更改TF管理的资源会导致drift,这是一种不同的坏做法。请查看TF文档如何处理:

  • 使用Terraform检测和管理漂移

正如其他答案所说,由于您所经历的原因,手动更改Terraform托管资源是一种糟糕的做法。

您可以考虑的一种可能性是将添加的存储置于Terraform的管理之下,这是由terraform import命令完成的。

举个例子,假设您添加了一个EBS卷,那么将为EBS卷声明一个Terraform资源,并且它附属于您的实例:

resource "aws_ebs_volume" "example" {
size = 20
# other props to match real instance
}
resource "aws_volume_attachment" "ebs_att" {
device_name = "/dev/sdf"
volume_id   = aws_ebs_volume.example.id
instance_id = aws_instance.example.id
}

然后使用import命令导入,每个资源所需的详细信息各不相同,但可以在每个资源的文档中找到。

$ terraform import aws_ebs_volume.example vol-0123456789abc
$ terraform import aws_volume_attachment.example /dev/sdf:vol-0123456789abc:i-876543321

相关内容

  • 没有找到相关文章

最新更新