我想把我的terraform.tfstate文件存储在mongodb数据库中。我可以看到,在terraform中,mongodb作为后端没有默认选项。那么,我们可以在terraform中创建一个自定义后端吗(在我的例子中,我想创建mongodb后端来存储和获取terraform.tfstate文件。如果不可能,有什么办法来完成这个目标?
terraform.tfstate
cvxl0en21#
是的,就像你说的,没有mongodb作为默认后端。但有几个现有的后端可以提供帮助。但是,如果您仍然在寻找仅使用mongodb作为默认后端的解决方案,您仍然可以实现它。沿着S3、postgres、azurerm、gcs之外,Terraform还支持使用REST客户端http的后端。您所要做的就是构建一个小型HTTP服务器,并在后端公开一个端点,如下所示。
mongodb
S3
postgres
azurerm
gcs
terraform { backend "http" { address = "http://tfstate.mycompany.io/store" } }
您的服务器将与Mongodb通信以存储和检索数据。但是你需要配置POST、GET、DELETE、LOCK和UNLOCK的端点,以便让Terraform完成这项工作。请参阅上述有关状态代码的文档以返回。
1条答案
按热度按时间cvxl0en21#
是的,就像你说的,没有
mongodb
作为默认后端。但有几个现有的后端可以提供帮助。但是,如果您仍然在寻找仅使用
mongodb
作为默认后端的解决方案,您仍然可以实现它。沿着
S3
、postgres
、azurerm
、gcs
之外,Terraform还支持使用REST客户端http的后端。您所要做的就是构建一个小型HTTP服务器,并在后端公开一个端点,如下所示。
您的服务器将与Mongodb通信以存储和检索数据。但是你需要配置POST、GET、DELETE、LOCK和UNLOCK的端点,以便让Terraform完成这项工作。请参阅上述有关状态代码的文档以返回。