代码之家  ›  专栏  ›  技术社区  ›  zapatilla

如何管理多个地形状态

  •  1
  • zapatilla  · 技术社区  · 7 年前

    我的项目的目的是为用户提供部署其用户定义的Azure RGs的方法。因此,一个典型的用户会使用我的门户在表单上输入一些细节,比如他们希望如何调用他们的RG,VM的位置、用户名和SSH密钥等,然后在后端,我用他们的输入填充地形模板,然后运行 terraform apply .

    到目前为止还不错,因为我是唯一的用户。

    当它投入生产时,将会有几个用户。他们可以创建一个或多个资源组,我想知道如何最好地处理Terraform。我应该只为每个用户和RG(或DB上的一些条目)创建一个文件夹,以便将状态保留在那里吗?还是有更好的方法?我需要这个来做一些事情,比如销毁用户资源,或者检查资源的状态等等。

    我将使用Terraform,如果可以避免的话,我不想使用Azure SDK。

    1 回复  |  直到 7 年前
        1
  •  2
  •   Francozen    7 年前

    您可以使用terraform后端 https://www.terraform.io/docs/backends/index.html 将状态存储到您选择的云存储解决方案中。使用一些$var将部署和该令牌标识为URI元素之一。例如,用户“A”可以将状态保存在gs://bucket/A/state中,这为我们使用GCS实现了这一目的。