首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在资源配置中使用terraform导入

如何在资源配置中使用terraform导入
EN

Stack Overflow用户
提问于 2020-02-29 02:50:29
回答 1查看 1.3K关注 0票数 0

在陆地进口之前,我已经定义了:

代码语言:javascript
运行
复制
# instance.tf

resource "aws_instance" "appserver" {

}

然后我运行:terraform import aws_instance.appserver <instance-id>并顺利运行,通过terraform可以看到导入的ec2资源。然而,对我来说,神秘的是将这个现有的terraform状态“转换”到terraform (上面的instance.tf)中,这样我就可以将它作为一个代码来管理(或者至少我是这样理解它的)。我添加了ami和instance_type键及其相应的值,但是每次我发出terraform plan时,terraform似乎都想“替换”我现有的实例。

1)为什么terraform想要替换该实例?

2)如何将实例的terraform状态“转换”到配置中?(这有可能吗?)

3)对于你们这些经验丰富的老兵来说,你们是如何管理现有的地形aws基础设施的?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-02-29 09:06:27

首先,terraform想要替换您的实例,因为terraform没有执行您期望的资源配置和当前现有实例之间的“链接”。

Terraform正式文档(https://www.terraform.io/docs/import/index.html)

当前Terraform的实现只能将资源导入状态。它不生成配置。未来版本的Terraform也将生成配置。

因此,在运行terraform导入之前,必须手动为资源编写资源配置块,将导入的对象映射到该资源。

虽然这看起来很乏味,但它仍然为Terraform用户提供了导入现有资源的途径。未来版本的Terraform将完全生成配置,大大简化了这一过程。

在理解了上面所写的内容之后,我将使用以下步骤:

  1. 首先,编写terraform资源配置。应该是这样的:

资源"aws_instance“”示例“{# ...instance配置…}

  • terraform import aws_instance.example i-abcd1234,以便将现有基础设施导入到状态,并将其附加到上面创建的资源配置中。

更详细的资料来源:https://www.terraform.io/docs/import/usage.html

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60461575

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档