我们可以在Terraform中创建自定义后端吗?

时间:2020-01-24 15:46:43

标签: mongodb terraform devops

我想将我的terraform.tfstate文件存储在mongodb数据库中。我可以看到没有默认选项可用于mongodb作为terraform的后端。因此,我们可以在terraform中创建自定义后端吗(对于我来说,我想创建mongodb后端来存储和提取terraform.tfstate文件。如果不可能,可以采取任何措施来实现此目标?

1 个答案:

答案 0 :(得分:2)

是的,就像您说的那样,没有mongodb作为默认后端。但是有一些现有的后端会有所帮助。

但是,如果仍在寻找仅使用mongodb作为默认后端的解决方案,您仍然可以实现。

S3postgresazurermgcs一起,Terraform还支持使用REST客户端http的后端。

所有您需要做的就是使用Node或Flask或您喜欢的框架构建一个小型REST客户端,并公开一个端点,如下所示。

terraform {
  backend "http" {
    address = "http://tfstate.mycompany.io/store"
  }
}

您的RESTful客户端将与Mongodb通信以存储和检索数据。但是,您需要配置POST,GET和DELETE的端点,才能让Terraform进行这项工作。

希望这会有所帮助。