【问题标题】:Destroy an EC2 instance in Terraform?在 Terraform 中销毁一个 EC2 实例?
【发布时间】:2019-06-16 06:43:19
【问题描述】:

我正在创建一个 EC2 实例并使用一些“启动时”脚本加载它并安装所需的软件。这将成为启动新实例时使用的基本映像。

创建后,我将创建一个 AMI。此时,无需保留用于创建 AMI 的 EC2 映像。

所以,顺序是:

Create EC2
Install packages
Configure packages
Create AMI
Destroy EC2

如何告诉 Terraform 然后在最后一步删除 EC2?

【问题讨论】:

  • 您看过 Hashicorp 的 Packer 工具吗?它专门构建用于 Terraform 的 AMI,可以在此处为您节省一些手动步骤。但与此同时,您可以发出 terraform destroy -target aws_instance.NAME 命令来销毁您的实例。
  • 如前所述,这不是 Terraform 的一个很好的用途,它更擅长管理资源的长生命周期。 Packer 是一个更好的工具,用于创建 AMI 或任何其他类型的图像,然后可以使用 Terraform 进行部署。

标签: amazon-web-services amazon-ec2 terraform terraform-provider-aws


【解决方案1】:

您看过 Hashicorp 的 Packer 工具吗?它专门构建用于 Terraform 的 AMI,可以在此处为您节省一些手动步骤。

与此同时,您可以发出 terraform destroy -target aws_instance.<NAME>(替换您的 Terraformed EC2 实例的名称)命令来销毁您的实例。

【讨论】:

  • 在使用 aws_ami_from_instance 时,删除实例也会删除 AMI,这不是这里的意图。 ASAIF 没有办法在不删除 AMI 的情况下删除实例,这很可怜。
猜你喜欢
  • 1970-01-01
  • 2021-06-07
  • 2021-11-28
  • 2015-12-18
  • 2021-02-04
  • 1970-01-01
  • 2021-06-26
  • 1970-01-01
  • 2019-03-30
相关资源
最近更新 更多