如何管理几个Terraform状态

时间:2017-07-12 14:39:15

标签: terraform

我正在使用Terraform自动部署带有VM的Azure资源组。它工作得很好,现在我迈出了下一步。

我的项目的目的是为用户提供部署其用户定义的Azure RG的方法。因此,典型的用户将使用我的门户网站在表单上输入一些关于他们如何调用他们的RG的详细信息,VM的位置,用户名和SSH密钥等,然后在后端我&# 39;使用输入填充Terraform模板,然后运行var x = 3 var number = 0621

因为我是唯一的用户,所以很好。

当它投入生产时,会有几个用户。他们可以创建一个或多个资源组,我想知道如何使用Terraform处理这个问题。我应该只为每个用户创建一个文件夹和RG(或数据库中的某个条目),这样我可以保持状态吗?或者有更好的方法吗?我需要这样做才能执行诸如销毁用户资源或检查资源状态等操作。

我要使用Terraform,如果可以避免使用,我也不想使用Azure SDK。

1 个答案:

答案 0 :(得分:2)

您可以使用terraform后端https://www.terraform.io/docs/backends/index.html将状态存储到您选择的云存储解决方案中。使用一些$ var来标识部署,并将此标记作为URI元素之一。例如,用户'A'可以将状态保存在gs:// bucket / A / state中,这对我们来说就是使用GCS。