tencent cloud

云资源自动化 for Terraform

产品简介
产品概述
产品优势
应用场景
购买指南
快速开始
本地使用
工具指南
配置指南
语法指南
资源列表
结合 Devops
代码管理
持续集成与部署
实践教程
部署云原生服务
资源跨地域复制
客户案例
Convertlab 基于腾讯云 Terraform 的 IaC 实践
Provider 共建
欢迎
贡献
开发者参考
常见问题
签名错误
Init 加速
开启日志追踪
管理现存资源
状态锁

Backend

PDF
聚焦模式
字号
最后更新时间: 2025-02-12 11:50:22

远程状态存储机制

状态文件若仅存储在本地,将可能存在以下问题:
tfstate 文件默认保存在当前工作目录下的本地文件,若计算机损坏导致文件丢失,tfstate 文件所对应的资源都将无法管理,产生资源泄漏。
团队成员间无法共享 tfstate 文件。
为了解决状态文件的存储和共享问题,Terraform 引入了远程状态存储机制 Backend。Backend 是一种抽象的远程存储接口,类似 Provider,Backend 也支持多种不同的远程存储服务,详情请参见 Available Backends。Terraform Backend 分为两种:
标准:支持远程状态存储与状态锁。
增强:在标准的基础上支持远程操作(在远程服务器上执行 plan、apply 等操作)。


说明事项

backend 配置更新后需运行 terraform init 来验证和配置 backend。
未配置 backend 时,Terraform 默认使用本地 backend。例如,tfstate 文件默认是存储在本地目录下的。
backend 配置存在以下重要限制:
一个配置只能提供一个后端块。
后端块不能引用命名值(如输入变量、局部变量或数据源属性)。

使用 Backend

backend块嵌套定义在顶级 terraform 块中,本文以使用腾讯云对象存储 COS 服务进行配置。示例如下,如需使用其他存储模式,可前往 Available Backends 了解更多信息。
terraform {
backend "cos" {
region = "ap-nanjing"
bucket = "tfstate-cos-1308126961"
prefix = "terraform/state"
}
}
若您具备 COS 的 tfstate-cos-1308126961 桶,则 Terraform 状态信息将会写进文件 terraform/state/terraform.tfstate 中。如下图所示:


帮助和支持

本页内容是否解决了您的问题?

填写满意度调查问卷,共创更好文档体验。

文档反馈