2

我使用 Terraform 在 OCI 中构建实例和资源。我已经使用 OCI 控制台完成了一些操作。

我想以某种格式导出所有内置文件以将其保留为备份。将来如果我的实例或资源被意外更改或数据损坏,我需要这个导出文件来构建完整的环境。

目前,Terraform 在创建或更改实例或资源时不会对现有表单进行修改。它会覆盖并更改所有内容,如果使用 OCI 控制台完成,则在 OCI 中完成的所有修改都将恢复。

所以请建议我一种导出当前完整构建的方法。以及构建 OCI 时要遵循的任何其他脚本编写方式。

4

1 回答 1

1

在 Terraform 中,您的配置文件始终是事实的来源。首次应用配置时,Terraform 会将已创建资源的状态存储在状态文件中。

如果您在 OCI 控制台中对资源进行更改,Terraform 将在您下次运行“terraform apply”之前不会知道它们。它将检测到资源已更改。但它也会决定将您的配置文件应用于您的 OCI 控制台更改。它还会首先警告您。

这是 Terraform 预期合同的一部分。您需要更新配置文件以准确告诉 Terraform 您希望基础设施的外观。

不幸的是,目前没有任何工具可以接受您的 OCI 控制台更改并自动更新您的配置文件。

最接近这一点的是“terraform import”命令。导入功能仅限于使用在 OCI 控制台中创建的资源更新您的状态文件;但不会更新您的配置文件。

于 2018-11-28T23:29:04.647 回答