如何在 Terraform 中初始化远程状态?

How to initialize remote state in Terraform?

我正在尝试为 remote_state 配置 Minio/S3 后端。但是,我收到错误消息 No stored state was found for the given workspace in the given backend.,但我不明白为什么。当然没有找到状态,因为我还没有创建。

I 运行 terraform init,然后 terraform plan -input=false -out=myplan 如果我不使用 remote_state 会起作用,但当我使用时会显示上述错误。

编辑:我能够通过使用 -refresh=false 完成第一步。但这似乎不是解决办法。如果没有可用的状态文件,我希望 Terraform 将其视为新部署并创建一个。

您需要运行 terraform init 将本地状态文件迁移到远程主机。

对于分步指南,您可以按照 official docs 中的示例进行操作,步骤 #6 是将本地 tfstate 迁移到远程主机的实际步骤。

我真的错过了这个文档:https://www.terraform.io/docs/configuration/terraform.html#configuring-a-terraform-backend

刚刚阅读了有关远程状态的信息,认为它会派上用场并遵循了此文档:https://www.terraform.io/docs/state/remote.html

以哪个点为例:https://www.terraform.io/docs/providers/terraform/d/remote_state.html

第一个成功了。