管理依赖于单一共享资源的多个配置

时间:2017-07-28 16:46:09

标签: terraform

我有多个不同的服务,每个服务都有自己的terraform配置来创建资源(在这种特殊情况下,每个服务都有一个BigQuery表)。

这些服务中的每一项都取决于单个资源实例的存在(在本例中为BigQuery数据集)。

我想以某种方式配置Terraform,这样如果共享资源不存在,就会创建一次。

我的第一个想法是使用模块,但这会导致每个根服务因模块命名空间而尝试创建自己的共享资源实例。

理想情况下,我想将一个terraform配置目录标记为依赖于另一个terraform配置目录,而不将后一个目录作为模块导入。这可能吗?

1 个答案:

答案 0 :(得分:1)

是的,您需要创建一个模块,然后在某处保存远程状态。您可以在terraform中配置后端以便为您处理此问题。完成后,您可以使用“data_terraform_remote_state”资源让其他资源引用该状态。您在模块中配置的任何输出都可以在远程状态下引用。